为什么要做主从复制
单台mysql 处理读写 性能处理不高 假如有三台MySQL 一台主 只做写数据 剩下两个做从 只读数据,
这不就大大的增加了 性能吗,
mysql 主从复制原理
(1)主节点进行增删改操作,会顺序写进binlog日志,从数据库开启I/O线程
(2)从节点连接主节点,有多少个主就会创建多少个binlog dump线程。binlog dump就是同步binlog日志的小工具
(3)当主节点发生数据发生变化时,binlog dump线程 会通知所有节点,并将binlog 内容推送给从节点。
(4)从 i/o线程接收到binlog 内容后,并将内容写到本地的中继日志里。
(5) 从节点的sql线程会读取i/o线程写入的中继日志,并且根据中继日志的内容,对数据库做出对应的操作。
mysql 主从延迟,
服务器有一台 ,开发很多端口 ,客户端去连接,产生大量数据,
主服务器 只有一个binlog 线程 N个客服端有大量要存入 同步较慢 binlog 处理不及时 ,这就是mysql延迟。
延迟解决方案
1.升级版本 5.6之后加入了 并行复制共能,
mysql 主从之间不同步,你怎么解决?
如果网络没什么问题的话。
1.查看各个节点服务是否正常运行
2.查看节点时间是否一致
3.查看 mysql之前是否有 延迟
4.查看数据库 slaver_IO_runing 和 slaver_SQL_running 是否 正常