清理未使用表的MySQL 5.0数据库

时间:2011-08-04 17:05:27

标签: mysql database

在今年的暑期实习中,我接受了试图清理数据库的项目。我在这里找到了一个解决方案,它告诉我使用Information_Schema.tables UPDATE_TIME列,但是,95%的UPDATE_TIME字段都是NULL,即使是我知道我们的程序每天都挂钩并更新的表。所以我想知道是否有另一种简单的方法来尝试找出一段时间没有使用过的表。

谢谢!

1 个答案:

答案 0 :(得分:2)

假设没有一个表是只读的,您可以设置触发器,以便在删除或更新值时,在日志记录表中更新行。然后,您可以让它保持运行一段适当的时间,以查看哪些表尚未更新。

我不相信有办法直接检查最近使用过的表格。如果表或MyISAM或服务器正在使用innodb_file_per_table,您可以查看数据目录中表的最后修改时间。我怀疑这不会对不经常访问的表产生任何误报,但你可能会得到一些误报。