大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说CentOS 7 MySQL5.7 主从只同步部分库或表[亲测有效],希望您对编程的造诣更进一步.
同步部分数据有两个思路:
- master只发送需要的;
- 优点:中继日志小;如果多从库,只需要在主库中统一控制
- 缺点:中途修改比较麻烦,不能控制同步的表
- slave只接收想要的
- 优点:中途修改同步的表或库方便;可以控制需要的表和库
- 缺点:中继日志大;如果从库比较多,需要一个一个配置;
master端
binlog-do-db 二进制日志记录的数据库(多数据库用逗号,隔开)
binlog-ignore-db 二进制日志中忽略数据库 (多数据库用逗号,隔开)
例1:
binlog-do-db=zn,zn1,zn2 #需要同步的数据库,不在内的不同步。(不添加这行表示同步所有) binlog-do-db=zn binlog-do-db=zn1 binlog-do-db=zn2
代码100分
配置同步的表:
些版本操作失败,mysql服务无法启动
binlog-do-table 二进制日志记录的数据的
例2
代码100分binlog-ignore-db = mysql # 这是不记录binlog,关闭所有从库同步,以确保各自权限 binlog-ignore-db = performance_schema binlog-ignore-db = information_schema
slave端
replicate-do-db 设定需要复制的数据库(多数据库使用逗号,隔开)
replicate-ignore-db 设定需要忽略的复制数据库 (多数据库使用逗号,隔开)
replicate-do-table 设定需要复制的表
replicate-ignore-table 设定需要忽略的复制表
replicate-wild-do-table 同replication-do-table功能一样,但是可以通配符
replicate-wild-ignore-table 同replication-ignore-table功能一样,但是可以加通配符
例1:
从库忽略复制数据库test3,但是需要说明的是,其实从库的relaylog中是从在关于test3的相关日志,只是从库没有使用罢了。
增加通配符的两个配置
replicate-wild-do-table=db_name.% #只复制哪个库的哪个表
replicate-wild-ignore-table=mysql.% #忽略哪个库的哪个表
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/7478.html