mysql - 内置数据库 "information_schema"未记录用户创建的数据库中表的最后更新时间

标签 mysql sql logging mariadb information-schema

内置数据库information_schematables表不会将用户创建的数据库中表的事件记录为字段table_schematable_name 分别缺少用户创建的数据库和表名称的值,不允许我运行 SQL 查询

SELECT update_time 
FROM information_schema.tables 
WHERE table_schema='my_db' and table_name='my_table';
-- For table named 'my_table' in database 'my_db'

用于检索数据库中表的最后更新时间(或更改时间)(即特定表中的数据最后一次更新、删除或插入的时间),以决定是否需要备份。

任何人都可以帮我解决数据库中记录事件的问题并解释其背后的原因吗?

提前致谢。

最佳答案

显然你的表是InnoDB,并且你使用的MariaDB版本低于10.2。

您遇到的是old MySQL bug (或者更确切地说,缺乏功能,正如 InnoDB 团队所设想的那样)。它已在最新稳定的InnoDB中修复,包含在MariaDB 10.2中.

对于 MyISAM 表,它也应该可以在以前的版本中工作。

关于mysql - 内置数据库 "information_schema"未记录用户创建的数据库中表的最后更新时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44162115/

相关文章:

tomcat - 在哪里检查tomcat中的servlet异常

python - 为什么Python日志记录模块的源代码在try中引发异常?

javascript - 在 JavaScript 中使用 php json 结果

MySQL 对两个查询的列求和

mysql - 如何修复以下 SQL 查询?

php - 使用 SQL 根据给定的条件进行计算

mysql - 从与另一个表关联的表中删除重复项

php - 如何从另一个表排序的mysql表中获取值?

mysql - NOT LIKE 子句不起作用

postgresql - RDS Postgres 更改 SQL log_statement 值