阿里云 mysql 日志_服务日志 - MySQL中文参考手册

本文介绍了MySQL服务日志,包括错误日志、普通日志、慢查询日志和二进制日志。重点讲解了慢查询日志的启用、设置及查看方法,以及二进制日志的不同记录格式。慢查询日志用于记录执行时间过长的SQL,有助于性能优化;二进制日志则记录数据修改信息。
摘要由CSDN通过智能技术生成

MySQL服务日志MySQL服务日志MySQL服务日志分类慢查询日志查看慢查询日志的定义

启动和设置慢查询日志

二进制日志

MySQL服务日志分类错误日志(error):记录MySQL服务进程mysqld在启动/关闭或者运行过程中遇到的错误信息;

查询日志(query log),分为以下两类:普通日志(general query log):记录客户端连接信息和执行的SQL语句信息(

生产环境中一般不开启

);

慢查询日志(slow query log):记录执行时间超出指定值(long_query_time)的SQL语句;

二进制日志(binary log):记录数据被修改的相关信息

慢查询日志

慢查询日志是用来记录执行时间超过指定时间的查询语句。

通过慢查询日志,可以查找出哪些查询语句的执行效率很低,以便进行优化。

一般建议开启,它对服务器性能的影响微乎其微,但是可以记录mysql服务器上执行了很长时间的查询语句,可以帮助我们定位性能问题的。

查看慢查询日志的定义mysql> SHOW  GLOBAL VARIABLES LIKE 'slow_query%';|  slow_query_log    | OFF    # 定义慢查询日志的|  slow_query_log_file    |/mydata/data/stu18-slow.log    # 输出方式为file(文件)时定义慢查询日志的位置

启动和设置慢查询日志

通过配置文件my.cnf中的log-slow-queries选项可以开启慢查询日志;

>[danger]

[mysqld]

slow_query_log=1

long_query_time=10 # 设置默认超过时间记录慢查询日志

log-slow-queries [=  DIR/[filename] ]

log_queries_not_using_indexes=on # 未使用索引的查询语句是否记录

通过命令行直接定义或者修改满查询日志时间mysql>  SHOW  GLOBAL VARIABLES LIKE 'long%';+-----------------+----------+| Variable_name   | Value    |+-----------------+----------+| long_query_time | 1.000000 |+-----------------+----------+mysql> set global long_query_time=10;Query OK, 0 rows affected (0.00 sec)mysql>  SHOW  GLOBAL VARIABLES LIKE 'long%';+-----------------+-----------+| Variable_name   | Value     |+-----------------+-----------+| long_query_time | 10.000000 |+-----------------+-----------+1 row in set (0.00 sec)

二进制日志

二进制日志中常用的定义格式:

1、语句(statement):默认的记录格式;

2、行(row):定义的并非数据本身而是这一行的数据是什么;

3、混合模式(mixed):交替使用行和语句、由mysql服务器自行判断。

其中基于行的定义格式数据量会大一些但是可以保证数据的精确性。

更多详情参考:MySQL服务日志(待梳理)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值