移动日志目录后无法解释 MySql 错误

Can't explian MySql Errors after moving log directory

我有一个主从设置,MySql v5.1.39 运行 ~10 db 在 12 核 Linux 机器上。出于性能问题,我不得不将 bin-log 文件移动到单独的磁盘。所以我遵循了这些步骤:

第一个问题!在奴隶上:

150113 12:21:22 [ERROR] Got fatal error 1236: 'Could not find first log file name in binary log index file' from master when reading data from binary log 150113 12:21:22 [Note] Slave I/O thread exiting, read up to log 'bin-log.005523', position 716864371

现在快速 Google 没有解决任何问题,因为停机是一个问题。我停止了 Master,将配置改回并重新启动。现在第二个"problem"!

... 150113 13:02:22 InnoDB: Error: page 182380 log sequence number 3407 300161079 InnoDB: is in the future! Current system log sequence number 3407 299353326. InnoDB: Your database may be corrupt or you may have copied the InnoDB InnoDB: tablespace but not the InnoDB log files. See InnoDB: http://dev.mysql.com/doc/refman/5.1/en/forcing-recovery.html InnoDB: for more information. ...

我引用问题是因为一切正常。对从站的复制重新启动并开始工作。我启动了应用程序,它们运行良好。但是当在 Master 上启动 MySql 时,我得到了上面的错误,其中大约 50 个具有不同的页码和序列号。

移动文件如何影响页码和序号,它们从何而来?我的问题有多大?似乎一切正常。

请询问您是否需要更多信息,感谢您的帮助。

第一个问题是由文件 /mysql/log/bin-log.index 引起的。我忘记更改此文件的内容以指向日志文件的新目录: /mysql/log/bin-log.000028 -> /mysql/newlog/bin-log.000028 /mysql/log/bin-log.000029 -> /mysql/newlog/bin-log.000029 /mysql/log/bin-log.000030 -> /mysql/newlog/bin-log.000030 /mysql/log/bin-log.000031 -> /mysql/newlog/bin-log.000031

第二个问题是一些文件的时间戳导致的。我应该用 cp -p log/* newlog/.rsync -avrx log/* newlog/. 保留时间戳。