一、主从复制
2.主从复制核心
3.主从复制原理
通过主数据库变化记录到二进制日志中,然后从库读取主库的二进制日志来存放到本地,
最后sql线程,把数据导入到自己的二进制(类似)中,保持主从数据一致。
4.MySQL主从复制延迟原因
1、master服务器高并发,形成大量事务
2、网络延迟
3、主从硬件设备导致
cpu主频、内存io、硬盘io
4、本来就不是同步复制、而是异步复制
5.延迟解决方案
从库优化Mysql参数。比如增大innodb_buffer_pool_size,让更多操作在Mysql内存中完成,减少磁盘操作。
从库使用高性能主机。包括cpu强悍、内存加大。避免使用虚拟云主机,使用物理主机,这样提升了i/o方面性。
从库使用SSD磁盘
网络优化,避免跨机房实现同步
6.主从复制实操
二、读写分离
1.读写分离方案
1.开发编写程序代码内部实现
2.中间代理层实现
mycat
amoeba
2.读写分离原理
读写分离就是只在主服务器上写,只在从服务器上读。
基本的原理是让主数据库处理事务性操作,而从数据库处理 select 查询。
数据库复制被用来把主数据库上事务性操作导致的变更同步到集群中的从数据库。