大家好,我是楼仔呀。
欢迎大家到我的知识星球【技术派】,一起学习,一起进步。
这篇文章是去年写的,但是阅读量很低,不想让好的文章被埋没,重新整理后,可读性更强,文末有上周六技术派直播视频。
MySQL 主从一直是面试常客,里面的知识点虽然基础,但是能回答全的同学不多。
比如我之前面试小米,就被问到过主从复制的原理,以及主从延迟的解决方案,你之前面试,有遇到过哪些 MySQL 主从的问题呢?
不 BB,上文章目录。
1. MySQL 主从
1.1 什么是 MySQL 主从 ?
所谓 MySQL 主从,就是建立两个完全一样的数据库,一个是主库,一个是从库,主库对外提供读写的操作,从库对外提供读的操作。
1.2 为什么使用 MySQL 主从 ?
对于数据库单机部署,在 4 核 8G 的机器上运行 MySQL 5.7 时,大概可以支撑 500 的 TPS 和 10000 的 QPS,当遇到一些活动时,查询流量骤然,就需要进行主从分离。
大部分系统的访问模型是读多写少,读写请求量的差距可能达到几个数量级,所以我们可以通过一主多从的方式,主库只负责写入和部分核心逻辑的查询,多个从库只负责查询,提升查询性能,降低主库压力。
当主库宕机时,从库可以切成主库,保证服务的高可用,然后主库也可以做数据的容灾备