有没有办法知道所有表格的变化

时间:2012-03-28 11:43:04

标签: mysql database

我正在调试使用MySQL的Web应用程序。我看到很多表在不同的流程之间被修改(注册,编辑等等)。而且,通过代码库来理解在不同调用之间修改的所有表是非常困难的。

是否有更好的观察力来了解所有表格在两次(两次调用)之间被修改的内容。

4 个答案:

答案 0 :(得分:4)

启用general query log以了解所有查询的执行情况。

我遇到了这个 - How can I tell when a MySQL table was last updated?

  

在MySQL的更高版本中,您可以使用information_schema数据库   告诉你何时更新了另一张表:

     

SELECT UPDATE_TIME FROM information_schema.tables WHERE   TABLE_SCHEMA ='dbname'和TABLE_NAME ='tabname'

     

这当然意味着打开与数据库的连接。

答案 1 :(得分:2)

请参阅show-table-status

SHOW TABLE STATUS FROM db_name WHERE Update_time BETWEEN (<date1> AND <date2>)

答案 2 :(得分:2)

以下内容将返回有关数据库的不同时间戳。看看这对你有帮助。

SELECT *
FROM   information_schema.tables
WHERE  TABLE_SCHEMA = 'dbname'

您也可以考虑使用像http://www.jetprofiler.com/

这样的mysql探查器

答案 3 :(得分:1)

在服务器上启用binlog,这比querylog更好,因为它只包含更改(更新,插入,删除)。

Hoevery,你必须使用mysqlbinlog命令行工具将其转换为纯文本文件:

mysqlbinlog server-bin.00001 > binlog.txt