我正在尝试配置master-master复制但是我收到错误。我在下面发送我的配置
服务器A
server-id = 1
replicate-same-server-id = 0
auto-increment-increment = 2
auto-increment-offset = 1
master-host = Kooler-PC
master-user = replicacao
master-password = replicacao
master-connect-retry = 60
replicate-do-db = gestao_quadra
log-bin = C:\mysql\log\log-bin.log
binlog-do-db = gestao_quadra
更改MASTER_HOST ='Kooler-PC',MASTER_USER ='replicacao',MASTER_PASSWORD ='replicacao',MASTER_LOG_FILE ='log-bin.log',MASTER_LOG_POS = 0;
我已经为其他服务器更改server-id,host并在路径中创建了文件做了相同的步骤。
我收到此错误:
130218 18:03:02 [Note] Slave I/O thread: connected to master 'replicacao@Kooler-PC:3306',replication started in log 'log-bin.log ' at position 4
130218 18:03:02 [ERROR] Error reading packet from server: Binary log is not open ( server_errno=1236)
130218 18:03:02 [ERROR] Slave I/O: Got fatal error 1236 from master when reading data from binary log: 'Binary log is not open', Error_code: 1236
130218 18:03:02 [Note] Slave I/O thread exiting, read up to log 'log-bin.log ', position 4
我正在使用MySQL 5.5
答案 0 :(得分:2)
因此,如果您阅读有关复制二进制日志记录的mysql手册,它会告诉您这一行:
log-bin = C:\mysql\log\log-bin.log
不创建具有该名称的日志文件。它指定基本名称。实际创建的日志文件将命名为:
C:\mysql\log\log-bin.log.000001
也就是说实际日志的序列号附加在您指定的名称的末尾。要查看实际的日志名称,请使用以下命令:
SHOW MASTER STATUS
SHOW BINARY LOGS;
您的更改主声明的这一部分无效:
MASTER_LOG_FILE='log-bin.log ', MASTER_LOG_POS=0;
我读过的任何与复制相关的指令都不会导致你使用位置0.你必须使用master的二进制日志文件和位置,它对应于你初始化slave的数据的快照
有关详细信息,请参阅手册。在尝试更复杂的复制结构之前,首先从基本master-> slave复制开始。 http://dev.mysql.com/doc/refman/5.5/en/replication.html