我需要找出谁最近更新了mysql数据库

我需要找出谁最近更新了mysql数据库,mysql,sql-update,Mysql,Sql Update,我可以从information\u schema中的表中获取上次更新时间。我能找到一个更新数据库或表的用户吗?正如Amadan提到的,除非你自己记录,否则没有办法做到这一点。然而,这是一件非常简单的事情:无论何时执行UPDATE查询,都要通过额外的MySQL查询将要记录的用户(以及任何其他相关信息)登录到一个单独的表中。类似这样的东西(用PHP编写,因为您没有指定语言,但MySQL可以导出到任何地方)将起作用: // The update query $stmt = $db->prepar

我可以从
information\u schema
中的表中获取上次更新时间。我能找到一个更新数据库或表的用户吗?

正如Amadan提到的,除非你自己记录,否则没有办法做到这一点。然而,这是一件非常简单的事情:无论何时执行
UPDATE
查询,都要通过额外的MySQL查询将要记录的用户(以及任何其他相关信息)登录到一个单独的表中。类似这样的东西(用PHP编写,因为您没有指定语言,但MySQL可以导出到任何地方)将起作用:

// The update query
$stmt = $db->prepare("UPDATE table SET `col` = ? WHERE `col` = ?");
$stmt->execute(array($var1, $var2));
// Something in table has just been updated; record user's id and time of update
$stmt = $db->prepare("INSERT INTO log (userid, `time`) VALUES (?, NOW())");
$stmt->execute(array($userid));

除非您自己录制,否则不会。我正在尝试创建一个shell脚本,以监视由多个用户和多个应用程序维护的一组数据库的更改。我可以使用php@Tim。谢谢你的回答。我想我需要从.ibd文件中提取一个日期。我尝试了stat-c“%y”文件名,效果很好。现在我需要解决如何从结果中提取日期,即2015-08-08 15:09:05.842890947+1000