网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 mysql慢查询使用详解
内容
    1 慢查询定义
    指mysql记录所有执行超过long_query_time参数设定的时间阈值的sql语句。慢查询日志就是记录这些sql的日志。
    2 开启慢查询日志
    找到mysql配置文件my.cnf.在mysqld的下面添加
    代码如下:
    log-slow-queries = d:/mysql/log/mysqld-slow-query.log #日志存在的位置。(注意权限的问题,可以不用设置,系统会给一个缺省的文件host_name-slow.log)
    long-query-time = 5 #sql执行时间阈值,默认为10秒。
    #log-long-format #说log-long-format选项是用来设置日志的格式,它是以扩展方式记录有关事件。扩展方式可记录谁发出查询和什么时候发出查询的信息。可使我们更好地掌握客户端的操作情况。
    #log-slow-admin-statements #将慢管理语句例如optimize table、analyze table和alter table记入慢查询日志。
    log-queries-not-using-indexes #如果运行的sql语句没有使用索引,则mysql数据库同样会将这条sql语句记录到慢查询日志文件中。
    配置完毕后重启mysql服务。
    3 测试  
    为了方便 我只在my.cnf中配置了慢查询日志的路径.
    mysql 版本为 5.1.73
    关于 long_query_time :从mysql 5.1开始,long_query_time开始以微秒记录sql语句运行时间,之前仅用秒为单位记录。这样可以更精确地记录sql的运行时间,供dba分析。
    进入mysql.
    代码如下:
    mysql> show variables like %slow%; #查看慢查询日志相关的信息
    mysql> set global long_query_time=0.01; #将mysql位置的值改为 0.01
    mysql> show variables like long_query_time; #查看是否生效
    mysql> select sleep(2); #延迟2秒执行 注:这条sql执行完毕以后应该已经在慢查询的日志文件中产生相关的信息记录
    mysql> show global status like '%slow%'; #查看慢查询语句的次数
    在日志文件中可以看到已经记录了sql.
    总结:
    windows下开启mysql慢查询
    mysql在windows系统中的配置文件一般是是my.ini找到[mysqld]下面加上
    log-slow-queries = f:\mysql\log\mysqlslowquery.log
    long_query_time = 2
    linux下启用mysql慢查询
    mysql在windows系统中的配置文件一般是是my.cnf找到[mysqld]下面加上
    log-slow-queries=/data/mysqldata/slowquery.log
    long_query_time=2
    注意
    log-slow-queries = f:\mysql\log\mysqlslowquery.log为慢查询日志存放的位置,一般这个目录要有mysql的运行帐号的可写权限,一般都将这个目录设置为mysql的数据存放目录;
    long_query_time=2中的2表示查询超过两秒才记录;
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/15 21:07:17