配置MySQL服务器
服务器查询
网上有很多的文章教怎么配置MySQL服务器,但考虑到服务器硬件配置的不同,具体应用的差别,那些文章的做法只能作为初步设置参考,我们需要根据自己的情况进行配置优化,好的做法是MySQL服务器稳定运行了一段时间后运行,根据服务器的”状态”进行优化。
mysql>showglobalstatus;
可以列出MySQL服务器运行各种状态值,另外,查询MySQL服务器配置信息语句:
mysql>showvariables;
一、慢查询
mysql>showvariableslike'%slow%';+------------------+-------+|Variable_name|Value|+------------------+-------+|log_slow_queries|ON||slow_launch_time|2|+------------------+-------+mysql>showglobalstatuslike'%slow%';+---------------------+-------+|Variable_name|Value|+---------------------+-------+|Slow_launch_threads|0||Slow_queries|4148|+---------------------+-------+
配置中打开了记录慢查询,执行时间超过2秒的即为慢查询,系统显示有4148个慢查询,你可以分析慢查询日志,找出有问题的SQL语句,慢查询时间不宜设置过长,否则意义不大,最好在5秒以内,如果你需要微秒级别的慢查询,可以考虑给MySQL打补丁:
3.
4.,貌似被墙)
另外,增加read_rnd_buffer_size的值对排序的操作也有一点的好处,参见:,调出服务器完成的查询请求次数:
mysql>showvariableslike'max_connections';+-----------------+-------+|Variable_name|Value|+-----------------+-------+|max_connections|256|+-----------------+-------+9
计算表扫描率:
表扫描率=Handler_read_rnd_next/Com_select
如果表扫描率超过4000,说明进行了太多表扫描,很有可能索引没有建好,增加read_buffer_size值会有一些好处,但最好不要超过8MB。
后记:
文中提到一些数字都是参考值,了解基本原理就可以,除了MySQL提供的各种status值外,操作系统的一些性能指标也很重要,比如常用的top,iostat等,尤其是iostat,现在的系统瓶颈一般都在磁盘IO上,关于iostat的使用,可以参考:
Tags:服务器查询,配置MySQL服务器
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。