Mysql定位慢查询配置
来源:互联网 发布:矩阵加法运算符重载 编辑:程序博客网 时间:2024/04/30 22:47
在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页,如何优化SQL语句将那些运行时间比较长的SQL语句找出呢?MySQL给我们提供了一个很好的功能,那就是慢查询!所谓的慢查询就是通过设置来记录超过一定时间的SQL语句!那么如何应用慢查询呢?
开启MySQL的慢查询日志功能
默认情况下,MySQL是不会记录超过一定执行时间的SQL语句的。要开启这个功能,我们需要修改MySQL的配置文件,windows下修改my.ini,Linux下修改my.cnf文件,在[mysqld]最后增加如下命令:
slow_query_log= 1
long_query_time= 1
slow_query_log_file=c:/slow.log
解释:
slow_query_log= 1,表示开启慢查询日志功能,当然slow_query_log= 0就是关闭了(默认情况),要开启也可以直接这样写slow_query_log。
long_query_time =1,表示设置慢查询的时间为1S,默认为10S,即如果有查询超过了这个时间,将会被记录到慢查询日志中。当然在高版本的MYSQL中这个时间还可以设置成小数。
slow_query_log_file=c:/slow.log,表示慢查询日志存放的目录文件。当然这条可以不写,不写时,默认在mysql的data目录下生成“主机名_slow.log”的文件来存放日志。
附录
另外,我们还要了解解一些MYSQL数据库查看状态的命令,以便更详尽的掌控MYSQL。在控制如下执行这些命令查看mysql数据库一些运行的状态。
show [session|global]status 注:不写默认的为session..session只取出当前会话的状态,global会取出从启动到现在的状态。
showstatus 查看数据库状态,这里面的状态有很多,DBA应该了解大多数。
showstatus like ‘uptime’ 数据库启动时间(S)
showstatus like ‘com_select’ 数据库执行了多少次查询
showstatus like ‘com_update’ 数据库执行了多少次更新
showstatus like ‘com_delete’ 数据库执行了多少次删除
showstatus like ‘com_insert’ 数据库执行了多少次插入
showstatus like 'connections' 试图链接MYSQL数据库的次数;另外可用cmd下的netstat –an 查看是那些IP链接到3306上,即链接到MYSQL数据库上。
show status like 'slow_queries'; 慢查询次数。默认情况下,超过10S的为慢查询。
控制台下修改MYSQL默认的慢查询时间
show variableslike 'long_query_time' 查询默认的慢查询时间
set long_query_time = 1 设置默认的慢查询时间
开启MySQL的慢查询日志功能
默认情况下,MySQL是不会记录超过一定执行时间的SQL语句的。要开启这个功能,我们需要修改MySQL的配置文件,windows下修改my.ini,Linux下修改my.cnf文件,在[mysqld]最后增加如下命令:
slow_query_log= 1
long_query_time= 1
slow_query_log_file=c:/slow.log
解释:
slow_query_log= 1,表示开启慢查询日志功能,当然slow_query_log= 0就是关闭了(默认情况),要开启也可以直接这样写slow_query_log。
long_query_time =1,表示设置慢查询的时间为1S,默认为10S,即如果有查询超过了这个时间,将会被记录到慢查询日志中。当然在高版本的MYSQL中这个时间还可以设置成小数。
slow_query_log_file=c:/slow.log,表示慢查询日志存放的目录文件。当然这条可以不写,不写时,默认在mysql的data目录下生成“主机名_slow.log”的文件来存放日志。
附录
另外,我们还要了解解一些MYSQL数据库查看状态的命令,以便更详尽的掌控MYSQL。在控制如下执行这些命令查看mysql数据库一些运行的状态。
show [session|global]status 注:不写默认的为session..session只取出当前会话的状态,global会取出从启动到现在的状态。
showstatus 查看数据库状态,这里面的状态有很多,DBA应该了解大多数。
showstatus like ‘uptime’ 数据库启动时间(S)
showstatus like ‘com_select’ 数据库执行了多少次查询
showstatus like ‘com_update’ 数据库执行了多少次更新
showstatus like ‘com_delete’ 数据库执行了多少次删除
showstatus like ‘com_insert’ 数据库执行了多少次插入
showstatus like 'connections' 试图链接MYSQL数据库的次数;另外可用cmd下的netstat –an 查看是那些IP链接到3306上,即链接到MYSQL数据库上。
show status like 'slow_queries'; 慢查询次数。默认情况下,超过10S的为慢查询。
控制台下修改MYSQL默认的慢查询时间
show variableslike 'long_query_time' 查询默认的慢查询时间
set long_query_time = 1 设置默认的慢查询时间
1 0
- Mysql定位慢查询配置
- MYSQL定位慢查询
- MYSQL定位慢查询
- mysql 定位慢查询
- MYSQL定位慢查询
- mysql 优化--定位慢查询
- mysql 优化--定位慢查询
- mysql 优化--定位慢查询
- mysql--18110定位慢查询
- mysql 慢查询配置
- Mysql慢查询配置
- Mysql慢查询配置
- MySQL慢查询配置
- mysql慢查询配置
- MySQL慢查询配置
- mysql优化(定位慢查询)
- mysql 优化笔记一(定位慢查询)
- MySQL慢查询的定位与优化
- MarkDown-Demo
- git pull 报错:error: insufficient permission for adding an object to repository database .git/objects
- linux之等待队列
- 谷歌建设多个数据中心大举进军云计算市场
- 哨兵不能实时查看硬盘IO使用率!打开性能监视器出现“不能添加这些计数器”报错
- Mysql定位慢查询配置
- Logistic Regression 的简单推导
- oracle存储过程,游标定义,匿名块已完成,dbms_output控制块输出
- Linux进程池的实现
- c 打印空心菱形和实心菱形
- 欢迎使用CSDN-markdown编辑器
- Nginx/LVS/HAProxy比较
- ext-4.2之grid的高级应用:增删改查!
- 使用Style自定义ListView快速滑动图标