课程名称:MySQL面试指南
课程章节:使用MySQL查询日志
主讲老师:sqlercn
课程内容:
今天学习的内容包括:
使用MySQL常规日志
课程收获:
常规日志(general_log):记录所有发向MySQL的请求,包括建立连接、退出链接、以及中间的所有命令。
数据量会非常庞大,降低性能,因此正式服上排查后要关掉。
主要作用:
- 分析客户端发送到MySQL的实际请求
关于常规日志的配置
+----------------------+----------------------------------------------------------------------------+
| 参数 | 说明 |
+----------------------+----------------------------------------------------------------------------+
| general_log | [ON|OFF] 是否开启general_log,默认为OFF |
+----------------------+----------------------------------------------------------------------------+
| general_log_file | 日志存储的文件,默认:/var/lib/mysql/PC.log |
+----------------------+----------------------------------------------------------------------------+
| | [FILE|TABLE|NONE] 日志输出的目标,[文件|表|无] 表对应的是mysql.general_log表 |
| | 这个表的存储引擎是CSV,也就是一个CSV文件,存储在MySQL的数据目录下。 |
| log_output | 存储在表中有这样几点好处: |
| | 1.可以用SQL来分析日志 |
| | 2.对于带密码的SQL语句,写表的时候会隐藏密码,更安全 |
+----------------------+----------------------------------------------------------------------------+
查看MySQL的数据目录位置:
select @@global.datadir;