MySQL查看日志简单易懂保姆级教程
作者:七月472
一、查看日志是否开启
两行SQL代码查看SQL是否开启,是开启的话,获取就好。
① show variables where Variable_name = 'general_log';
② show variables like 'general_log';
二、开启和关闭的sql
关闭的话运行以下代码开启
① set global general_log=on;
② set global general_log=off;
三、查看log文件所在位置
① show variables where Variable_name='general_log_file';
② show variables like 'general_log_file';
四、修改log文件所在位置
① set global general_log_file='tmp/mysql_log.log';
五、日志输出类型table或file
② show variables like 'log_output';
六、修改日志输出类型
① set global log_output='table';
默认是FILE的方式,执行命令,修改成TABLE方式:
② set global log_output='file';
--设置为行
1、查看慢查询设置
1、show variables like "%slow%";
2、 启用慢查询(不建议使用)
1、set global slow_query_log=ON;
2、set global slow_query_log=OFF;
3、 设置成2秒,加上global,下次进mysql已然生效
1、set global long_query_time=2;
导出日志步骤:
如果需要查询2017-09-17 07:21:09到2017-09-19 07:59:50 数据库为geeRunner 的操作日志,输入如下命令将数据写入到一个备用的txt即可
例:
mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 > sanjiaomao.txt
如果本地查询,输入命令:
mysqlbinlog --no-defaults --database=geeRunner --start-datetime="2017-09-17 07:21:09" --stop-datetime="2017-09-19 07:59:50" binlogs.000080 | more
如果取下来查询,使用winscp工具,登录到db所在机器,将数据取出来。
如果需要过滤,只查询insert,update,delete的语句,可以这样写:
mysqlbinlog --no-defaults --database=raceEnroll binlogs.000078 |grep update |more
总结
到此这篇关于MySQL查看日志的文章就介绍到这了,更多相关MySQL查看日志内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!