Ed *_*net 5 mysql mysql-replication
一整天都在“奴役”这个问题。
我有一个有效的主/从设置,但是当我尝试复制到从属上的不同数据库名称时,它失败了。这是 my.cnf 的样子:
server-id=101
report-host=Slave01
replicate_do_db='DB1'
replicate-rewrite-db=DB1->DB2
replicate-ignore-table=DB2.SOME_TABLE_NAME
Run Code Online (Sandbox Code Playgroud)
如果我取出replicate-rewrite-db 行,它可以完美运行并将DB1 数据库从主数据库复制到从数据库。我在从站上使用的主日志位置是在主站上的 CREATE DATABASE DB1 调用之后。在该日志位置之后,将创建表并在主服务器上导入数据。在创建 DB2 数据库之前,我不会配置和启动从属设备。
有任何想法吗?
更新:在mysql错误日志中看到了这个:
120531 15:48:19 [Note] Slave I/O thread: connected to master 'slave_user@master_server:3306', replication started in log 'mysql-bin.000001' at position 107
120531 15:48:20 [ERROR] Slave: Error 'Unknown database 'DB1'' on query. Default database: 'DB1'. Query: 'CREATE TABLE `ANOTHER_TABLE` (
Run Code Online (Sandbox Code Playgroud)
我在评论中收到了一个提示,但用户已将其删除。
诀窍是不要使用replicate-do-db而只使用replicate-rewrite-db:
#replicate_do_db='DB1'
replicate-rewrite-db=DB1->DB2
Run Code Online (Sandbox Code Playgroud)
注释掉 my.cnf 中的 replication_do_db 行为我修复了它。
感谢给我指出正确方向的神秘用户,无论你是谁。
| 归档时间: |
|
| 查看次数: |
3022 次 |
| 最近记录: |