为了实现数据冗余,我想在一个中心位置记录几百台 mysql 服务器的 binlog。为每个流运行一个完整的复制器需要大量资源(多台服务器),因为执行语句会占用大量 CPU。我的假设是,仅记录 binlog 所需的资源就会少得多。
怎么办?我发现http://search.cpan.org/~alfie/MySQL-Replication-0.0.2/bin/MySQLReplicationClient.pl但这似乎使用了非本机复制(它需要一个额外的数据库)并且似乎处于 alpha 状态。
也许另一个解决方案是安装一个完整的 mysql 服务器作为复制从属服务器,但以某种方式禁用复制语句的执行并仅记录它们。
谢谢!
答案1
感谢 NickW!!
这正是我所需要的:
http://dev.mysql.com/doc/refman/5.6/en/mysqlbinlog-backup.html
--stop-never:到达最后一个日志文件的末尾后保持与服务器的连接并继续读取新事件。
我正在运行 5.5 但我将反向移植 5.6 mysqlbinlog 实用程序。
另外可能感兴趣的是带有 xbstream 连续备份功能的 Percona Xtrabackup: http://www.percona.com/doc/percona-xtrabackup/glossary.html#term-xbstream