实时MySQL二进制日志解析

时间:2008-10-23 20:42:26

标签: mysql

我们正在处理基于MySQL 5.0(MyISAM)构建的遗留应用程序。当在特定表中发生更新,删除或插入时,我需要在实时中知道。 'gotcha'是我无法以任何方式改变数据库(即写入触发器)。我必须使用bin日志,复制或其他一些非侵入性的东西。

我们已经研究过使用'mysqlbinlog'命令来解析二进制日志。然而,这不是实时的,我们宁愿做更多事件驱动的事情。

有什么想法吗?

3 个答案:

答案 0 :(得分:6)

检查MySQL Proxy。它允许您在命令/响应流中点击,它在Lua中完全可编程。你甚至可以实时修改命令,如果你想要

答案 1 :(得分:0)

我正在尝试使用mysqlbinlog -R -t实时获取feed,它一直工作到最后,然后你需要找到最后一个读取的位置,并继续那里,结合对日志文件的查询,这应该给出你们所有的文件一个接一个......我正在试验这个..

答案 2 :(得分:0)

此外,如果您想实时了解一个表上是否发生了更改,那么我建议您在主服务器上创建一个触发器,然后您可以将数据插入到复制的单独数据库中它自己的。在触发器内部,您甚至可以使用联合服务器访问另一台服务器。 http://dev.mysql.com/tech-resources/articles/mysql-federated-storage.html