现象
报错:ERROR 1146 (42S02): Table 'mysql.general_log' doesn't exist
原因
- 查看mysql 库下确实没有general_log表
- mysql版本为5.1
- 参数log_output 为file
- 查看线上mysql5.5 发现mysql库下有general_log表
解决
在5.1mysql的mysql库下创建于mysql5.5相同表结构的general_log 表
CREATE TABLE `general_log` (
`event_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`user_host` mediumtext NOT NULL,
`thread_id` int(11) NOT NULL,
`server_id` int(10) unsigned NOT NULL,
`command_type` varchar(64) NOT NULL,
`argument` mediumtext NOT NULL
) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log'