MySQL主备
MySQL主备
主备模式
手动模式
Master1节点
1
2
3
4
5
6
log-bin=mysql-bin
server-id=1
auto-increment-increment=2
auto-increment-offset=1
mysql_native_password=ON
创建同步使用的用户
1
2
3
CREATE USER 'replica_user'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'your_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica_user'@'%';
FLUSH PRIVILEGES;
获取二进制日志文件名和位置:
1
SHOW BINARY LOG STATUS;
与Master2同步:
1
2
3
4
5
6
7
8
9
CHANGE REPLICATION SOURCE TO
SOURCE_HOST='第二台的IP',
SOURCE_USER='第二台上用于同步的用户名',
SOURCE_PASSWORD='用户密码',
SOURCE_LOG_FILE='mysql-bin.000001', -- 用你在第二台服务器上获得的日志文件名
SOURCE_LOG_POS=555; -- 用你在第二台服务器上获得的位置
START REPLICA; -- 开启备份
STOP REPLICA; -- 停止备份
SHOW REPLICA STATUS; -- 查看备份状态
Master2节点
1
2
3
4
5
6
log-bin=mysql-bin
server-id=2
auto-increment-increment=2
auto-increment-offset=2
mysql_native_password=ON
创建同步使用的用户:
1
2
3
CREATE USER 'replica_user'@'%' IDENTIFIED WITH 'mysql_native_password' BY 'your_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica_user'@'%';
FLUSH PRIVILEGES;
获取二进制日志文件名和位置:
1
SHOW BINARY LOG STATUS;
与Master1同步:
1
2
3
4
5
6
7
8
9
CHANGE REPLICATION SOURCE TO
SOURCE_HOST='第一台的IP',
SOURCE_USER='第一台上用于同步的用户名',
SOURCE_PASSWORD='用户密码',
SOURCE_LOG_FILE='mysql-bin.000001', -- 用你在第一台服务器上获得的日志文件名
SOURCE_LOG_POS=555; -- 用你在第一台服务器上获得的位置
START REPLICA; -- 开启备份
STOP REPLICA; -- 停止备份
SHOW REPLICA STATUS; -- 查看备份状态
Slave节点
本文由作者按照
CC BY 4.0
进行授权