只能同步bbp库
replicate_do_db=bbp
如果要同步多个库,则需要指定多个replicate_do_db,如同步bbp和lmis库
replicate_do_db=bbp
replicate_do_db=lmis
只同步某些库,会涉及跨库操作无法同步的问题:
1)在其它库中或者没有选择数据库,则从库不会执行
例如:主库中在mtms库中操作bbp库的数据
mysql> SELECT * from bbp.t_csp;
+-------+--------------+-------+
| cspid | title | isdel |
+-------+--------------+-------+
| 1 | 喜马拉雅 | 0 |
| 2 | aaa | 1 |
+-------+--------------+-------+
主库
<pre name="code" class="sql">mysql> use mtms
Database changed
mysql> insert into bbp.t_csp values(3,'bbb',0);
mysql> delete from bbp.t_csp where cspid = 2;
最后查询,主库
<pre name="code" class="sql">mysql> SELECT * from bbp.t_csp;
+-------+--------------+-------+
| cspid | title | isdel |
+-------+--------------+-------+
| 1 | 喜马拉雅 | 0 |
| 3 | bbb | 0 |
+-------+--------------+-------+
从库
mysql> SELECT * from bbp.t_csp;
+-------+--------------+-------+
| cspid | title | isdel |
+-------+--------------+-------+
| 1 | 喜马拉雅 | 0 |
| 2 | aaa | 1 |
+-------+--------------+-------+
2)在bbp中操作其它库数据,则从库会报错
主库在bbp库中操作其它库数据,若从库中库表存在,且数据同步,则不影响;若库表不存在或数据不同步,则报相关错误,并终止同步
例如:主库
mysql> use bbp
mysql> insert into mtms.crm_branch values('1','aa','aa'
从库报错
Last_Errno: 1146
Last_Error: Error 'Table 'mtms.crm_branch' doesn't exist' on query. Default database: 'bbp'. Query: 'INSERT into mtms.crm_branch values('1','aa','aa')'
解决以上问题,需将replicate_wild_do_table参数代替replicate_do_db设置为
replicate_wild_do_table=bbp.%
replicate_wild_do_table=lmis.%
这样就可以
1)同步跨库操作
2)忽略对其它库的操作,同步不再报错