mysql的日志种类:通用查询日志、慢查询日志、错误日志、二进制日志、中继日志、重做日志、回滚日志。
1、通用查询日志
通用查询日志:记录了所有用户的连接开始时间和截止时间,以及发给mysql数据库服务器的所有SQL日志。文本型数据,可以用记事本打开。
查询通用查询日志:SHOW VARIABLES LIKE '%general%';
开启通用查询日志:SET GLOBAL general_log = 'ON';
指定通用查询日志的文件夹和文件名:SET @@global.general_log_file = 'H:\mytest.log';
general_log :general_log 变量表示通用查询日志的状态。
mysql> SHOW VARIABLES LIKE '%general%';
+------------------+---------------+
| Variable_name | Value |
+------------------+---------------+
| general_log | OFF | -- 通用查询日志处于关闭状态
| general_log_file | GJTECH-PC.log | -- 通用查询日志文件的名称是GJTECH-PC.log
+------------------+---------------+
2 rows in set, 1 warning (0.00 sec)
mysql> SET GLOBAL general_log = 'ON'; --开启通用查询日志
Query OK, 0 rows affected (0.00 sec)
mysql> SET @@global.general_log_file = 'H:\mytest.log'; -指定通用查询日志的文件夹和文件名
Query OK, 0 rows affected (0.02 sec)
2、慢查询日志
慢查询日志:用来记录执行时间超过指定时长的查询。慢查询日志的主要作用是发现那些执行时间特别长的SQL查询,并且有针对性地进行优化,从而提高系统的整体效率。文本型数据,可以用记事本打开。
慢查询日志路径,默认就是数据目录:"C:\ProgramData\MySQL\MySQL Server 8.0\Data",找到my.ini文件。long_query_time 和slow-query-log 这2个变量共同组成了判别一个查询是否是慢查询的条件。
配置文件中关于慢查询日志变量的设定:
--开启慢查询日志:`slow-query-log=1`
--表示慢查询日志的名称是"GJTECH-PC-slow.log":`slow_query_log_file="GJTECH-PC-slow.log" `
--慢查询的标准是查询执行时间超过10秒:`long_query_time=10 `
--控制慢查询日志的系统变量,查询扫描过的最少记录数,默认值为0:`min_examined_row_limit`
3、错误日志
错误日志记录了mysql服务器的启动、停止运行的时间,以及系统启动、运行和停止过程中的诊断信息,包括错误、警告和提示等。
错误日志默认是开启的。我们可以在 MySQL 的配置文件“my.ini”中配置它
# Error Logging.
log-error="GJTECH-PC.err"
总结:
- 通用查询日志
可以记录所有连接的起始时间和终止时间,以及连接发送给数据库服务器的所有指令,对我们复原操作的实际场景、发现问题,甚至是对数据库操作的审计都有很大的帮助。 - 慢查询日志
可以记录运行时间和检查记录数超过指定值的查询,方便我们对查询进行优化。 - 错误日志
它记录了服务器启动、运行和停止过程中的诊断信息,方便我们了解服务器的状态,从而对服务器进行维护。
网友评论