Mysql读写分离搭建-个性化配置(二)
通过上一章节的介绍,我们已经能够实现不同实例下的同名数据库进行全表同步,今天我们通过本章节的介绍,实现同名数据库指定表进行同步,实现不同名数据库指定表进行同步。
1.同名数据库指定表进行同步
1.1修改配置文件
自定义同步只需要对客户端配置文件进行修改。
[mysqld]
#以下为主从读写配置
server-id=2
#备份数据库 如果是多个数据库 就配置第二行 如test、test1
#binlog-do-db=test
#通过配置此节点 配置同步的表为test库的table_name_1
#如果需要配置第二张就再增加一行即可 如
#replicate-do-table=test.table_name_1
#replicate-do-table=test.table_name_2
replicate-do-table=test.table_name_1
log-bin=mysql-bin
1.2 重启客户端mysql服务
#停止mysql服务
net stop mysql
#启动mysql服务
net start mysql
执行到这里,我们就完成了不同实例下同名数据库自定义表的同步。
2.不同名数据库指定表进行同步
2.1 用个图说明我们要做什么
自定义同步只需要对客户端配置文件进行修改。
这么说有点抽象,我们按照我们的例子做个说明。
Server端服务器上数据库名字叫test,Client端服务器上数据库名字为myuser,我们要求把test库中的table_name_1同步到myuser中。
2.2 修改配置文件
#通过replicate-rewrite-db节点 可以映射两个不同名的数据库
replicate-rewrite-db = test-> myuser
#replicate-do-table节点要写的是客户端的数据库名称 <–这里请注意
replicate-do-table=myuser.table_name_1
[mysqld]
#以下为主从读写配置
server-id=2
#备份数据库 如果是多个数据库 就配置第二行 如test、test1
#binlog-do-db=test
replicate-do-table=myuser.table_name_1
log-bin=mysql-bin
replicate-rewrite-db = test-> myuser
2.3 重启客户端mysql服务
#停止mysql服务
net stop mysql
#启动mysql服务
net start mysql
执行到这里,我们就完成了不同实例下不同名数据库自定义表的同步。