【运维干货】通过宝塔面板实现MySQL性能简单调优

  • 时间:
  • 浏览:62
  • 来源:泽宇博客 - 专注共享知识共享网资源
      在PHP+MYSQL架构网站运行过程中,往往会遇到各种性能疑问影响,如MySQL、PHP、CPU、磁盘IO、缓存等,其中MySQL瓶颈要是 最常见也最难避免的一种生活影响网站性能的因素;通常,大伙会使用redis、memcached等缓存软件来缓存内容,这随便说说是最优的避免方案之一,但这才能 网站进程的支持,然而多数常用网站进程无须支持可才能完美支持哪此缓存软件,今天大伙就来谈谈咋样通过MySQL自身的配置调整来优化MySQL性能,以缓解MySQL瓶颈疑问。

准备:     1、宝塔Linux面板 正式版 5.2.0+ (2017/09/20发布)  测试版5.2.4+



    2、MySQL 5.x

通常MySQL调优大伙分以下几部分:     1、MySQL配置参数调优 (才能 根据网站运行状态调整)



    2、数据表索引调优 (效果明显,但通常优秀的开源进程总要才能 调整)

    3、SQL一句话调优 (这是进程员或DBA干的事)

今天大伙主要谈谈可能配合宝塔面板的新功能来进行MySQL配置参数调优,大伙先来看两张图片:

(图1)



(图2)



很明显,(图1)显示的是MySQL当前的运行状态,(图2)显示的是MySQL主要配置参数

下面大伙就来解读一下这两张图:

1、活动/峰值连接数       (图1)中当前活动的连接为一另另两个多,自MySQL服务启动以来,最高连接数为54;当最高连接数接近或等于(图2)中的max_connections时,应适当增加max_connections,才能 注意的是,无须一下子增加不让 ,建议每次增加200,观察一段时间,严重不足再继续增加。

2、进程缓存命中率       (图1)中进程缓存命中率为99.78%,若这一 值小于90%,建议适当增加(图2)中的thread_cache_size,建议每次增加8。

3、索引命中率       (图1)中索引命中率为99.200%,若这一 值小于95%,建议适当增加(图2)中的key_buffer_size,建议每次增加64,才能 说明的是,若您的数据库使用的是Innodb引擎,可忽略这一 选项

4、Innodb索引命中率       (图1)中Innodb索引命中率为200%,若这一 值小于95%,建议适当增加(图2)中的innodb_buffer_pool_size,建议每次增加64,才能 说明的是,若您的数据库这么使用Innodb引擎,可忽略这一 选项

5、查询缓存命中率       MySQL查询缓存是个比较受争议的功能,被委托人建议当你有在使用redis、memcached等缓存软件时,在(图2)中将query_cache_size设为0才能将其关闭,当你这么使用缓存软件,有多余的内存使用,且数据库瓶颈明显存在时,才能尝试开启查询缓存,这是个非常依赖数据表形态学 及SQL一句话优化的功能,若数据表形态学 和SQL一句话都针对查询缓存进行过优化,它的效果还是很不错的。

6、创建临时表到磁盘       (图1)中创建临时表到磁盘的比例是0.42%,这说明大部分临时表创建到内存了,不让不让 增加磁盘IO的开销,建议,当比例大于2%时适当增加(图1)中的tmp_cache_size,建议每次增加32,当比例大于200%时,放弃吧,或多或少开源进程并这么专门优化过SQL一句话,要是 有在运行过程中会开启多量临时表,加几个缓存总要严重不足用的。

7、已打开的表       当(图1)中的已打开的表接近或等于(图2)中的table_open_cache时,才能适当增加table_open_cache,但若设置过大可能原困您的进程频繁中断MySQL连接,建议在1024以内,最大无须超过2048。

8、这么使用索引的量、这么使用索引的JOIN量       若不为0,就检查下数据表索引吧,随便说说假若这么疯涨,比如一天增涨几千,一般才能忽略,必竟优化索引还是进程员或DBA去干比较至少。

9、排序后的合并次数       可能这一 值在缓慢增张,建议适当增加(图2)中的sort_buffer_size,建议每次增加512,但最大无须超过8192,可能这一 值一直在疯涨,增加sort_buffer_size也没用,就放弃这一 选项吧,这一 锅还是给进程开发者背。

10、锁表次数       可能服务器CPU开销不大的状态下,疯狂锁表,建议你将所有数据表转加进去innodb,记得转换前备份哦。

11、优化方案       这一 是大伙根据内存大小给的一另另两个多推荐优化方案,仅是建议仅用于基础参考值,还是要根据实据状态来调整每一另另两个多配置项。

注意:保存参数配置后不让立即生效,记得要重启MySQL服务。 写在最后:



      因我被委托人并总要专业DBA,难免有错误或遗漏的地方,还请大伙给予指正,另外,可能面板提供的参考数据及调整选项还严重不足充裕,大伙在往后的更新中会根据才能 考虑继续增加更多的调整选项,谢谢大伙的支持。