- MySQL主从复制是什么?
- MySQL主从复制有什么作用?
- MySQL主从复制是怎么现实的?
MySQL主从复制的原理
MySQL的主从复制主要依赖二进制日志。
几个重点的名词:master、slave、relay log、io thread 、sql thread
他们是这样分工的:
主节点:
1 更新数据
2 将更新的操作写入二进制日志
3 为每一个slave的io thrad开启一个dump线程,用于发送binary log events
从节点:
1 通过io thrad向master 请求二进制日志
2 请求到的日志保存在中断日志(relay log)中
3 sql thread从中断日志中读取
4 sql thread将二进制日志保存于本地完成重放,写入从节点数据库中
MySQL主从复制的作用
1 实现数据库备份
2 实现数据库高可用和故障切换
3 实现负载均衡读写分离
MySQL主从复制的实现(准备)
主节点配置
1 确认启用二进制日志,把二进制文件放在单独的目录中
2 分配id号,默认是1,修改配置文件/ect/my.cof
3 确定二进制日志和文件的目录
4 创建有复制权限的账号
从节点配置
1 确认启用二进制日志,把二进制文件放在单独的目录中
2 分配id号,设置与主节点的id号不同
3 数据库开启自读模式
4 使用有复制权限的账号连接到master主服务
5 启动复制线程