单一主从复制
主库操作:
1、主库开启binlog,配置参数2个
1.1. server_id
1.2. log-bin
2、主库设置复制用户
grant replication slave on *.* to 'repl'@'%' identified by '123456';
3、主库看状态
show master status\G; --显示当前主节点的binlog文件,和当前binlog的位置
4、主库加锁复制
复制主库到从库先加锁
flush tables with read lock;
复制完成解锁
unlock tables
从库配置
1. server_id 必须与主库不同
2. 配置当前数据库及对应的binlog位置等信息
change master to
master_host='10.0.99.101',
master_port=24801,
master_user='repl',
master_password='123456',
master_log_file='mysql-bin.000001',
master_log_pos=1400;
3. start slave
4. show slave status
另一种模式:从 从库 复制 从库
1. 关闭当前从库
2. 将从库的data目录复制到新从库
3. 删除新从库data目录下auto.cnf、 所有relay相关的文件 (relay-log.info,xxx-relay-bin.index, xxx-relay-bin.000001之类)
4. 启动从库
5. 关闭从库的slave
6. 查看从库当前的binlog位置
7. 在主库的binlog日志中找到从库记录的位置1400,找到这个位置的下一个位置1566 重置master信息,
change master to
master_host='10.0.99.101',
master_port=24801,
master_user='repl',
master_password='123456',
master_log_file='mysql-bin.000001',
master_log_pos=1465;
8. 启动slave
删除主从配置
从库执行
stop slave;
change master to master_host=' ';
即可成功删除同步用户信息。