show status 慢查询及相关优化

SHOW STATUS语句查看MySQL数据库的性能参数
1.SHOW STATUS like ‘Slow_queries’   //慢查询的次数  
  查看日志
       1.配置
         centos下  my.cnf
               log-slow-queries = /tmp/mysql-slow.log
               long_query_time = 2
          windows下  my.ini:
               log_slow_queries
               long_query_time = 2     //查询SQL语句超过两秒的就记录  通常2秒就够了,默认是10秒
         注意:
              在许多站点中,一个SQL语句超过1秒的执行时间都算慢的了
              保存退出,重启MySQL
            
2.分析
     [root@lizhong tmp]# tail -f /tmp/mysql_slow.log
              Time: 120815 23:22:11
              User@Host: root[root] @ localhost []
              Query_time: 9.869362 Lock_time: 0.000035 Rows_sent: 1 Rows_examined: 6261774
              SET timestamp=1294388531;
              select count(*) from blog;
              Time:执行时间
              User@Host:执行用户
              Query_time SQL执行的时间,越长则越慢
              Lock_time 在MySQL服务器阶段(不是在存储引擎阶段)等待表锁时间
              Rows_sent 查询返回的行数
              Rows_examined 查询检查的行数
    
2.SHOW STATUS like ‘Com_(CRUD)’
        SHOW (GLOBAL) STATUS like ‘Com_select’   //查看总共执行select的次数
        SHOW (GLOBAL) STATUS like ‘Com_insert’   
        SHOW (GLOBAL) STATUS like ‘Com_delete’;

3.SHOW STATUS like ‘uptime’; //查询当前MySQL本次启动后的运行统计时间

4.SHOW STATUS like ‘threads%’;
        threads_cached  //查看线程缓存内的线程的数量
        threads_connected //查看当前打开的连接的数量
        threads_running  //查看激活的(非睡眠状态)线程数。

5.show status like  ‘Innodb_buffer_pool_%’;  //查看相关缓存信息
        Innodb_buffer_pool_read_requests:read请求的次数
        Innodb_buffer_pool_reads:从物理磁盘中读取数据的请求次数
        innodb buffer的read命中率 = (Innodb_buffer_pool_read_requests - Innodb_buffer_pool_reads) /         Innodb_buffer_pool_read_requests * 100%  //命中率不会低于99%
        低于这个值的话就要考虑加大innodb buffer pool
  
6.show variables like ‘%innodb_buffer_pool_size%’  //命令查看当前缓存的大小
         默认是8M(8388608 ),一般来讲这个值肯定是不够的
         修改/etc/my.cnf文件,并添加字段innodb_buffer_pool_size = 3G,然后重启mysql 服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值