set global log_queries_not_using_indexes=ON; -- 记录未使用索引的sql 语句-- 查询sql 执行记录select * from mysql.slow_log order by 1; -- 执行成功的:慢查询语句,和未使用索引的语句select * from mysql.general_log order by 1; -- 所有语句: 成功和未成功的.-- 关闭sql 执行记录
怎样查看本机mysql的详细操作记录
如果你想要知道mysqld内部发生了什么,你应该用--log[=file_name]或-l [file_name]选项启动它。如果没有给定file_name的值, 默认名是host_name.log。所有连接和语句被记录到日志文件。当你怀疑在客户端发生了错误并想确切地知道该客户端发送给mysqld的语句时,该日志可能非常有用。
mysqld按照它接收的顺序记录语句到查询日志。这可能与执行的顺序不同。这与更新日志和二进制日志不同,它们在查询执行后,但是任何一个锁释放之前记录日志。(查询日志还包含所有语句,而二进制日志不包含只查询数据的语句)。2018-07-30
-- 打开sql 执行记录功能
set global log_output='TABLE'; -- 输出到表
set global log=ON; -- 打开所有命令
执行记录功能general_log, 所有语句: 成功和未成功的.
set global log_slow_queries=ON; -- 打开慢查询 sql 记录
slow_log, 执行成功的: 慢查询语句和未使用索引的语句
set global long_query_time=0.1; -- 慢查询时间限制(秒)
set global log_queries_not_using_indexes=ON; -- 记录未使用索引的sql 语句
-- 查询sql 执行记录
select * from mysql.slow_log order by 1; -- 执行成功的:慢查询语句,和未
使用索引的语句
select * from mysql.general_log order by 1; -- 所有语句: 成功和未成功的.-- 关闭sql 执行记录2017-06-09