基于日志点的主从复制【不用】
1. 创建复制账户
2. 设置server-id
3. 制作一个master完整备份
使用innobackupex备份【推荐】
使用mysqldump备份
- 要加—master-data=1
导入slave 查看Master pos:show master status 也可以查看导出的文件(设置了—master-date会显示)
4. 拷贝到slave
mv 可以用 innobackupex —copy-back
5. 配置slave的server-id,并重启(保证主从server-id不一样)
6. 查看备份position
7. 配置slave replication【change master to 】
change master to master_host=’172.17.0.2’, master_user=’repl’, master_password=’123456’, master_port=3306, master_log_file=’binlog.000003’, master_log_pos=1326, master_connect_retry=30;
8. 启动replication,检查结果
基于GTID的复制【不用找position,方便】
1. Master slave设置为read-only
2. master slave 停机
3. 配置GTIDS
- 开启gitd-mode要开启log-bin
- 加配置skip-slave-start:不会自动的启动slave start(不自动启动复制)
4. 启动master slave,配置slave CHANGE MASTER TO
mysql> change master to
master_host=’192.168.137.113’, master_user=’repl’, master_password=’123456’, master_port=3306, master_auto_position=1;
slave改变master只需改变host即可。【方便】
在线开启gtid模式
通过修改gtid_mode参数。
MySQL5.7 GTID在线开启与关闭_aeolus_pu的博客-CSDN博客
【show slave status】主从复制相关参数
首先在服务器上执行show slave status;可以看到很多同步的参数:
- Master_Log_File:SLAVE中的I/O线程当前正在读取的主服务器二进制日志文件的名称
- Read_Master_Log_Pos:在当前的主服务器二进制日志中,SLAVE中的I/O线程已经读取的位置
- Relay_Log_File:SQL线程当前正在读取和执行的中继日志文件的名称
- Relay_Log_Pos:在当前的中继日志中,SQL线程已读取和执行的位置
- Relay_Master_Log_File:由SQL线程执行的包含多数近期事件的主服务器二进制日志文件的名称
- Slave_IO_Running:I/O线程是否被启动并成功地连接到主服务器上
- Slave_SQL_Running:SQL线程是否被启动
Seconds_Behind_Master:从属服务器SQL线程和从属服务器I/O线程之间的时间差距,单位以秒计。
【监控】主从延迟查看
show slave status显示参数Seconds_Behind_Master不为0,这个数值可能会很大
- show slave status显示参数Relay_Master_Log_File和Master_Log_File显示bin-log的编号相差很大,说明bin-log在从库上没有及时同步,所以近期执行的bin-log和当前IO线程所读的bin-log相差很大
- mysql的从库数据目录下存在大量mysql-relay-log日志,该日志同步完成之后就会被系统自动删除,存在大量日志,说明主从同步延迟很厉害
SHOW SLAVE STATUS查看延迟并不准确
show table like ‘replication%’
从库等待同步指定pos
从切换主步骤【reset master、reset slave all】
- stop slave
- reset master :删除本机binlog
- 从库:reset master会清空gtid_executed变量 和 mysql.gtid_executed表,只保留一个初始binlog文件。
- 不要随意在主库上执行reset master,这样做极有可能导致复制停止或造成主从数据不一致等严重后果,而且不易恢复。
- reset slave all:删除relaylog
reset slave,reset slave all,reset master都干了些啥? - igoodful - 博客园