我有两个 MySQL 服务器(A 和 B)在不同的机器上运行。我想将 A 上的数据库 X 复制到 B。B 仍然是其他数据库的主数据库。我如何设置它以便 B 只为 X 服务,而为其他人服务?我目前将 A 配置为仅replicate-do-dbs=x
.
为此,您不想在Master A
服务器上进行任何过滤。相反,您将希望在从站上使用复制过滤器,Server B
要全面了解复制过滤器,请通读本文档及其子链接。我将强调两个警告(强调我的):
在 master 上,您可以通过使用 --binlog-do-db 和 --binlog-ignore-db 选项来控制二进制日志记录来控制要记录更改的数据库.....您不应该使用这些选项来控制哪些数据库数据库和表被复制。相反,在从站上使用过滤来控制在从站上执行的事件。
和
为了更容易确定选项集将产生什么效果,建议您避免混合使用“do”和“ignore”选项,或通配符和非通配符选项。
有了这两条信息,我建议server B
使用--replicate-wild-do-table=db_name.%
. 这是因为:
如果您需要跨数据库更新工作,请改用 --replicate-wild-do-table=db_name.%。 [源代码]
归档时间: |
|
查看次数: |
1067 次 |
最近记录: |