我可以为主服务器中的每个数据库提供不同类型的复制吗? 例如:在同一个MySQL服务器中有两个数据库(DB 1,DB 2)..我需要给DB 1 - >基于语句的复制和DB 2 - >基于行的复制。
PS:我尝试使用混合复制..但是我有一些问题...因为有很多触发器(所以我需要基于语句)并且在某些情况下我需要基于行。答案 0 :(得分:0)
您无法对数据库级别进行此类设置,此设置仅适用于服务器级别,您必须在my.cnf
文件中指定。
基于声明的复制的优点
写入日志文件的数据较少。当更新或删除影响许多行时,这会导致日志文件所需的存储空间大大减少。这也意味着可以更快地完成从备份中获取和恢复。
日志文件包含进行任何更改的所有语句,因此可用于审核数据库。
基于行的复制的优点
对于5.1.14之前的MySQL版本,使用基于语句的复制复制DDL(数据定义语言)语句(如CREATE TABLE),而使用基于行的复制复制DML语句以及GRANT和REVOKE语句
有关更多信息,请参阅: http://dev.mysql.com/doc/refman/5.1/en/replication-sbr-rbr.html