作家
登录

MySQL慢查询日志相关的配置和使用

作者: 来源: 2017-09-18 16:48:48 阅读 我要评论

【沙龙】51CTO诚邀您9月23号和多位技巧大年夜咖一路聊智能CDN的优化之路,抓紧时光哦!

MySQL慢萌芽日记供给了跨越指准时光阈值的萌芽信息,为机能优化供给了重要的参考根据,是一个异常实用的功能。

MySQL慢萌芽日记的开启和设备异常简单,可以指定记录的文件(或者表),跨越的时光阈值等就可以记录到慢sql了。

实话讲,比拟较sqlserver的trace或者扩大事宜(固然此二者的感化处非仅仅如斯),MySQL的设备老是给人一种异常清爽的感到。

1,慢萌芽日记的打开

正常情况下,只须要在设备文件中增长slow_query_log = 1设备,即打开慢萌芽日记,未指定slow_query_log_file的情况下,会主动生成一个以主机名+‘slow’.log 的文件。

2,默认情况下记录慢萌芽的时光阈值为10s


默认情况下,指定slow_query_log = 1的情况其启动MySQL,即可打开慢萌芽,主动生成一个默认的以主机名++‘slow’.log 的文件来记录跨越履行跨越10s的慢萌芽。

也可以显式指定慢萌芽的日记文件名称(不存在会主动创建)和记录慢萌芽的时光阈值(非默认的10s)。

如下是一个记录到日记文件中的慢sql的示例

3,记录慢萌芽日记到表

设备:须要添加一个log_output的设备,就可以将慢萌芽记录到表中了

mysql库下面有一个默认的slow_log表,可以直接将slow_query_log_file = slow_log,即可将慢萌芽日记记录到表中。

记录到的slow sql如下,可以发明sql_text是一个二进制的信息,并非原始的sql文本

可以经由过程CONVERT函数转换一下即可。

留意在设备文件中指定long_query_time的时刻,不须要时光单位,只须要一个值,比如1就代表1s,如不雅带了时光单位,办事将无法启动。

【编辑推荐】

  1. 为什愦我更爱好PostgreSQL而不是MariaDB/MySQL
  2. MySQL主大年夜同步那点事儿
  3. 这8个MySQL陷阱,你必定得多多留意了~
  4. MySQL 8.0.3 RC版即将宣布,看看竽暌剐哪些变更
  5. 浅析开源数据库MySQL架构
【义务编辑:庞桂玉 TEL:(010)68476606】

关于慢萌芽记录到日记文件和表中的差别:

1,慢萌芽记录到日记文件和表中,记录本身差别不大年夜,如不雅是记录在表中,慢萌芽的履行时光信息无法精确到奥妙,

2,如不雅将慢萌芽信息记录在表中,便利萌芽,但因为是构造化的数据,可能会比记录在慢萌芽日记文件中(平面文本文件)要慢一点点(小我猜测),如不雅是记录到文件,须要mysqldumpslow对象解析。

3,慢萌芽不记录履行掉败的萌芽,比如long_query_time设置为10(10秒钟),一个萌芽跨越了10秒钟,然则因为其他原因履行掉败,MySQL的慢萌芽将无法记录此萌芽信息。



  推荐阅读

  LANs.py:一款可以实现代码注入,无线渗透和WiFi用户监控的强大工具

【沙龙】51CTO诚邀您9月23号和多位技巧大年夜咖一路聊智能CDN的优化之路,抓紧时光哦! LANs.py功能简介1. 主动寻找当前收集中最为活泼的WLAN用户,并对个中的一名用户实施监控,然后>>>详细阅读


本文标题:MySQL慢查询日志相关的配置和使用

地址:http://www.17bianji.com/lsqh/37492.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)