13.1、mysql主从复制介绍:
1、普通文件,磁盘上的文件的同步方法:
(1)nfs网络文件共享可以同步数据存储;
(2)samba共享数据;
(3)ftp数据同步;
(4)定时任务:crontab+rsync;
(5)时时任务:inotify+rsync、sersync+rsync;
13.2、mysql主从复制架构:
13.3、mysql主从复制的应用场景:
谷歌的半同步插件;双写;连接主库,把binlog日志拉到从库上;应用程序写binlog只写一份钟的;
13.4、如何实现mysql一主多从:
1、mysql主从复制注意事项:
(1)mysql的同步是异步的同步;
(2)同步的时候主库由一个IO线程来完成,从库由IO和SQL两个线程来完成;
(3)主库上打开binlog的开关,并为从库设置连接同步的用户名和密码;
(4)锁库;
(4)将主库备份,解库;将备份的主库恢复到从库的数据库上;
(5)要在从库上配置连接主库的ip地址、端口号、用户名、密码、binglog文件、pos点;
(6)打开从库的开关"start-slave",让从库进行工作;
补充:如果采用的是级联的方式,需要在第一个从库上打开binlog日志,再加上参数log-slave-updates即可;
2、mysql主从复制过程描述:
13.5、生产环境主从库同步配置注意事项:
13.6、总结:
1、mysql主从同步是异步同步的方式;
2、逻辑同步模式,多种模式,默认是通过sql语句执行;
3、主库通过记录binlog实现对从库的同步,binlog是记录数据库的更新语句(增、删、改);
4、主库一个IO线程,从库由一个IO线程和一个SQL线程来完成;
5、从库的关键文件master.info(IO线程记录主库的binglog日志中的pos点)
relay-log(IO线程从主库拉来的binglog日志)
relay-info(SQL线程记录relay-log的pos点)
6、如果从库还想级联从库,需要打开log-bin和log-slave-updates参数;
7、使用mysql半插件实现mysql主从同步(不推荐):
优点:确保了一个从库和主库保持完全一致;
缺点:主从库之间网络延迟,用户的体验很差;