链接主数据库,修改my.cnf,添加如下信息,然后重启mysql服务

[mysqld]
log-bin=mysql-bin //开启二进制日志
server-id=1 //设置server-id

进入主数据库创建同步的用户

// 进入数据库
mysql -u root -proot
// 创建用户,@后面为从数据库地址
CREATE USER syncuser@62.234.108.183 IDENTIFIED BY 'syncuser123456';
GRANT REPLICATION SLAVE ON *.* TO syncuser@62.234.108.183;
FLUSH PRIVILEGES;
SHOW MASTER STATUS;
运行下面命令,记录File和Position信息
SHOW MASTER STATUS;

链接从数据库,修改my.cnf,添加如下信息,然后重启mysql服务

[mysqld]
server-id=2 //设置server-id,必须唯一

先测试同步用户是否可以访问主数据库,进入mysql执行如下命令

mysql -u syncuser -psyncuser123456 -h62.234.108.183
// 成功进入则表示用户设置成功
// 进入数据库
mysql -u root -proot
// MASTER_LOG_FILE 是主数据库File的值
// MASTER_LOG_POS 是主数据库Position的值
CHANGE MASTER TO MASTER_HOST='122.51.59.25',MASTER_USER='syncuser',MASTER_PASSWORD='syncuser123456',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=412;
// 启动slave同步
start slave;
// 查看slave状态
SHOW SLAVE STATUS\G;

当Slave_IO_Running和Slave_SQL_Running都为YES的时候就表示主从同步设置成功了。

其他说明

修改my.cnf下的[mysqld]

#不同步哪些数据库
binlog-ignore-db = mysql
binlog-ignore-db = test
binlog-ignore-db = information_schema

#只同步哪些数据库,除此之外,其他不同步
binlog-do-db = game
Last Updated: 12/9/2020, 11:34:36 AM