我正在为一台运行一堆数据库(每个客户端一个)的服务器设置复制,并计划在my.cnf上一直添加更多数据库,而不是:
binlog-do-db = databasename 1
binlog-do-db = databasename 2
binlog-do-db = databasename 3
...
binlog-do-db = databasename n
我能不能只想要
binlog-ignore-db = mysql
binlog-ignore-db = informationschema
(并且没有指定要记录的数据库),并假定所有其他内容都已记录?
编辑:实际上,如果我删除了所有binlog-do-db条目,它似乎会记录所有内容(当您移动数据库时,您会看到二进制日志文件的位置发生了变化),但在从服务器上,什么都没有得到!(也许这就是使用replicate-do-db的情况?这会扼杀这个想法;我想我不能让MySQL自动检测要复制的数据库)。
发布于 2008-08-11 20:22:25
看起来是正确的:http://dev.mysql.com/doc/refman/5.0/en/binary-log.html#option_mysqld_binlog-ignore-db。
根据该参考:
有一些--binlog--db规则。默认数据库是否与--binlog-ignore-db规则中的任何规则匹配?
因为您只有ignore命令,所以只要默认(活动)数据库与忽略的数据库之一不匹配,所有查询都将写入日志。
https://stackoverflow.com/questions/8166
复制相似问题