欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL 同步配置

程序员文章站 2022-05-07 18:46:00
...

假设要同步test库中的数据,但不同步test.secret表。a.在RDB1上(即主DB)执行备份操作并刷新日志。mysqldump --flush-logs -uro

假设要同步test库中的数据,但不同步test.secret表。

a.在RDB1上(即主DB)执行备份操作并刷新日志。

mysqldump --flush-logs -uroot -p$pwd --default-character-set=gbk --database test > test.`date +%Y%m%d`.sql

b.连接上RDB1.Mysql数据库查询当前日志文件及日志位置信息。
mysql> show master status;
+------------------+-----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+-----------+--------------+------------------+
| mysql-bin.000156 | 98 | | |
+------------------+-----------+--------------+------------------+
1 row in set

c.在RDB1上为RDB2配置新用户授权
GRANT REPLICATION SLAVE ON *.* TO backup@'RDB2 ip' IDENTIFIED BY 'password';

d.将从RDB1上备份下来的完整数据通过scp上传到RDB2上并导入数据库。
Mysql -h localhost -uroot -p$pwd test
e.导入完成后,设置同步参数
设置同步哪些库、同步哪些表、忽略哪些表。
例如,,在RDB2的Mysql配置文件中配置:
replicate-do-db=test
replicate-ignore-table= test.secret

注意:要保证所有server-id不重复,RDB1的为1,RDB2的为2,其余的依次排列就行。

f.重启RDB2.MYSQL使配置生效,登录RDB2.MYSQL设置复制日志起点。
CHANGE MASTER TO MASTER_HOST='RDB1 IP',MASTER_USER='backup', MASTER_PASSWORD='password',MASTER_LOG_FILE=' mysql-bin.000156',MASTER_LOG_POS=98;
执行START SLAVE启动同步服务。

至此已完成RDB1到RDB2的主从同步。

MySQL 同步配置