共计 2018 个字符,预计需要花费 6 分钟才能阅读完成。
MySQL 5.7 新特性多源复制很实用,方便对分库环境进行汇总,集中备份和数据统计分析。
我的实验环境 3 台机器,mysql 版本:5.7.16
10.10.203.102 从库
10.10.203.93 主库
10.10.203.94 主库
操作步骤:
(1)当一个从库是多源复制结构,那么 master_info 和 relay_log_info 不能用 file 方式来存储,必须使用 table,它不支持 file。
10.10.203.102 从库上操作
在配置文件中新增:
[mysqld]
master_info_repository=TABLE
relay_log_info_repository=TABLE
在线动态修改:
STOP SLAVE;
SET GLOBAL master_info_repository = ‘TABLE’;
SET GLOBAL relay_log_info_repository = ‘TABLE’;
10.10.203.93 和 10.10.203.94 主库上操作【复制采用的传统方式, 非 GTID】
授权复制账号
mysql>grant replication slave,replication client on *.* to pgm@’%’ identified by ‘pgmfetion’;
10.10.203.93 上操作, 记录 file name 和 pos
/usr/local/mysql/bin/mysqldump -S /data/mysql/mysql9000/sock/mysql9000.sock -B kenney93 -R –single-transaction –master-data=2 >/tmp/kenney93.sql
[root@eut_config ~]# grep ‘CHANGE MASTER’ /tmp/kenney93.sql
— CHANGE MASTER TO MASTER_LOG_FILE=’mysql-bin.000004′, MASTER_LOG_POS=2048;
10.10.203.94 上操作, 记录 file name 和 pos
/usr/local/mysql/bin/mysqldump -S /data/mysql/mysql9000/sock/mysql9000.sock -B kenney94 -R –single-transaction –master-data=2 >/tmp/kenney94.sql
[root@localhost ~]# grep ‘CHANGE MASTER’ /tmp/kenney94.sql
— CHANGE MASTER TO MASTER_LOG_FILE=’mysql-bin.000002′, MASTER_LOG_POS=1533;
10.10.203.102 上导入备份 93,94 的备份
[root@localhost ~]# /usr/local/mysql/bin/mysql -S /data/mysql/mysql9000/sock/mysql9000.sock </tmp/kenney94.sql
[root@localhost ~]# /usr/local/mysql/bin/mysql -S /data/mysql/mysql9000/sock/mysql9000.sock </tmp/kenney93.sql
上边执行完之后,start slave; 查看主从状态
(2)测试主从
10.10.203.93 主库
10.10.203.94 主库
10.10.203.102 从库
(3)通过 performance_schema 监控主从状态
(4)备注
4.1 多源复制中 GTID 和传统复制的操作命令
GTID 方式的配置:
CHANGE MASTER TO MASTER_HOST=’master1′, MASTER_USER=’rpl’, MASTER_PORT=3451, MASTER_PASSWORD=”, \
MASTER_AUTO_POSITION = 1 FOR CHANNEL ‘master-1’;
传统方式的配置:
CHANGE MASTER TO MASTER_HOST=’master1′, MASTER_USER=’rpl’, MASTER_PORT=3451, MASTER_PASSWORD=” \
MASTER_LOG_FILE=’master1-bin.000006′, MASTER_LOG_POS=628 FOR CHANNEL ‘master-1’;
4.2 启停方法
启动所有渠道的线程
START/STOP SLAVE thread_types
启动指定渠道的线程
START/STOP SLAVE thread_types FOR CHANNEL channel;
4.3 重置配置信息
重置所有渠道配置
RESET SLAVE;
重置指定渠道配置
RESET SLAVE FOR CHANNEL channel;
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-01/139146.htm