我想从 mysql.general_log
表中删除旧行,但遇到了这个错误:
#1556 - You can't use locks with log tables.
这是我运行的查询:
DELETE FROM `general_log` WHERE `event_time` < "2014-01-25 14:05"
最佳答案
您可以重命名表,根据需要执行清理,然后再次恢复表名。
例子:
SET GLOBAL general_log = 'OFF';
RENAME TABLE general_log TO general_log_temp;
DELETE FROM `general_log_temp` WHERE `event_time` < DATE(NOW());
RENAME TABLE general_log_temp TO general_log;
SET GLOBAL general_log = 'ON';
关于mysql - 从 Mysql 通用日志表中删除旧行(MyISAM 不是 CSV),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21357177/