我试着让general_log表在MySQL 5.7.29中工作,我运行了下面的代码,它执行得很好,但是在执行更多的select语句后,general_log表中没有任何行-例如,它看起来实际上没有记录任何东西。任何帮助都是非常感谢的!
use mysql;
SET GLOBAL general_log = 'OFF';
DROP TABLE general_log;
CREATE TABLE IF NOT EXISTS `general_log` (
`event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`user_host` mediumtext NOT NULL,
`thread_id` bigint(21) unsigned NOT NULL, -- Be careful with this one.
`server_id` int(10) unsigned NOT NULL,
`command_type` varchar(64) NOT NULL,
`argument` mediumtext NOT NULL
);
SET GLOBAL general_log = 'ON';
SET GLOBAL log_output = 'TABLE';
select * from mysql.general_log
order by event_time desc; 为了清楚起见,我已经运行了文档一次,包括将general_log设置为ON,将log_output设置为TABLE,但是在运行其他查询时,不会向日志中添加任何内容。
发布于 2020-02-03 18:40:56
您需要开启通用日志。之后,您应该在另一个表上运行查询。
请运行以下命令:
SET GLOBAL general_log = 'OFF';
--With the log disabled, rename the log file externally (for example, from the command line). Then enable the log again:
SET GLOBAL general_log = 'ON';
select * from another_table;
select * from mysql.general_log
order by event_time desc; 有关完整说明,请参阅:https://dev.mysql.com/doc/refman/5.7/en/query-log.html
https://stackoverflow.com/questions/60024911
复制相似问题