>  기사  >  데이터 베이스  >  MySQL 同步配置

MySQL 同步配置

WBOY
WBOY원래의
2016-06-07 17:16:061145검색

假设要同步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的主从同步。

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.