【问题标题】:Logging only insert, update and delete mysql queries仅记录插入、更新和删除 mysql 查询
【发布时间】:2011-11-27 01:44:57
【问题描述】:

我正在使用带有 phpmyadmin 和 MySQL 5.0 的 WAMP 服务器。我一直在寻找一种只记录所有插入、更新和删除查询的方法,但无济于事。

我确实设法让它自动生成日志,将“log=C:\wamp\mysql\log\queries.log”行添加到 mysql 的 my.ini 配置文件中,但日志没有记录确切的查询。

我正在尝试的是,每当发生插入、删除或更新查询时,它将查询记录在文件或另一个表中。这可以通过程序实现吗?我的选择是什么?

【问题讨论】:

    标签: mysql logging


    【解决方案1】:

    这是通过二进制日志实现的。您可以使用 log-bin 参数启用它。
    您可以使用此实用程序 mysqlbinlog 读取二进制日志的内容。

    【讨论】:

    • 谢谢,这正是我所需要的。除了mysqlbinlog,还有其他读取日志文件的方法吗?比如,Java 可以写入/读取二进制文件,它是否也能正确读取日志?
    • 我猜你可以,但是 mysqlbinlog 有很多解析功能,比如 dev.mysql.com/doc/refman/5.0/en/…" target="_blank">start-datetime 可以让你选择开始要显示的语句的日期和时间。
    【解决方案2】:

    有一个解决方法。您可以将tail 的输出传递给grep,例如像这样:

    tail -f /var/log/mysql/mysql.log | grep "update "
    

    【讨论】:

      猜你喜欢
      • 2020-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-27
      • 2013-07-04
      • 1970-01-01
      • 2012-07-05
      • 2013-01-30
      相关资源
      最近更新 更多