Mysql innodb表上次修改日期

Mysql innodb表上次修改日期,mysql,innodb,Mysql,Innodb,如何确定innodb表的上次修改日期?根据问题,似乎有多年未修复的错误。我不能使用校验和,因为我使用的是大表,计算校验和的时间太长。触发器看起来也不是正确的解决方案,因为我不想为成百上千的表编写触发器。我还有别的方法可以做到这一点吗 我需要整个表的最后修改日期(删除、插入、更新),而不是单行 编辑: 我认为在不修改现有查询或创建触发器的情况下,并没有可接受的方法来确定这一点,所以只需检查表是否被修改就足够了。正如我所说的,这可以使用校验和表…,但对于大型innodb表来说速度相当慢。有没有更好的

如何确定innodb表的上次修改日期?根据问题,似乎有多年未修复的错误。我不能使用校验和,因为我使用的是大表,计算校验和的时间太长。触发器看起来也不是正确的解决方案,因为我不想为成百上千的表编写触发器。我还有别的方法可以做到这一点吗

我需要整个表的最后修改日期(删除、插入、更新),而不是单行

编辑:
我认为在不修改现有查询或创建触发器的情况下,并没有可接受的方法来确定这一点,所以只需检查表是否被修改就足够了。正如我所说的,这可以使用校验和表…,但对于大型innodb表来说速度相当慢。有没有更好的算法来实现这一点?

尝试创建一个包装程序,该程序将执行您的语句并更新当前时间

这是对你的评论的回答:

“这将阻止您为数百个表写入触发器:”

由于某些错误,Stick overflow不允许我发布此类过程的示例代码

你可以“执行”这个命令,没有任何问题,我现在已经测试过了,它可以工作了。您必须以“调用my_过程('insert/update/delete…')的形式执行您的过程

下面是一个关于如何创建此类过程的链接


只需使用参数将串联更改为空字符串

为了澄清,您想要每一行或整个表的最后修改日期?好的,我需要整个表的修改日期,我已经编辑了我的问题。@Peter Krejci您对所有类型的更新都感兴趣吗,包括删除或只是更新和插入??正如您所说的,该错误在过去7年中一直存在,这不是一个错误。这是一些开发人员想要的一个未实现的特性。
 PREPARE s1 FROM @sql;
 EXECUTE s1;
 DEALLOCATE PREPARE s1;