智唯高端建站是一家专注中小型企业网站建设、营销型网站建设、响应式网站建设公司

建站优化电话:138 2557 5516(免费SEO检测 保证收录 保证排名)
广州建站微信号
返回旧版
网站建设News
公司网站建设

MySQL极具参考价值的性能调优技巧

关键词:广州建站 作者:智唯建站 | VISITORS: | 来源:智唯网络科技
08Dec
2017
万圣节已经过去很久了,该是把注意力集中在即将到来的假日季节的时候了。首先是感恩节,接着就是黑色星期五和网络星期一,最终在圣诞节/节礼周(从12月26日的节礼日开始,到12月

  万圣节已经过去很久了,该是把注意力集中在即将到来的假日季节的时候了。首先是感恩节,接着就是黑色星期五和网络星期一,最终在圣诞节/节礼周(从12月26日的节礼日开始,到12月31日的除夕结束为期六天或更长时间。这个词是由零售业在2000年代中期左右发明的,试图延长他们的节礼日销售)达到购物高潮。对于企业主来说,一年的这个时候标志着人们期待已久的年底获利了结。对于一些DBA来说,它会带来恐惧,不安,甚至是不眠之夜,他们要努力使系统重新上线。

853c42f6c385350eed50dc819b9f75a8.jpg-wh_651x-s_3498805260

  值得庆幸是,,情况并非如此。通过对MySQL性能变量做一些主动调整,可以使数据库服务器免受购物旺季带来的需求增加的冲击。

  技巧#1:确定MySQL的最大连接数

  对于MySQL的最大连接数,一次最好是发送5个请求到Web服务器。对Web服务器的5个请求中的一部分将用于CSS样式表,图像和脚本等资源。由于诸如浏览器缓存等原因,要获得准确的MySQL到Web服务器的请求比率可能很困难; 要想得到一个确切的数字,就需要分析Web服务器的日志文件。例如,可以手动访问Apache的“access_log”日志文件,也可以通过 Analog 或 Webalizer 等实用程序访问日志文件。

  一旦有了对特定使用情况的准确估计,请将该比率乘以Web服务器的最大连接数。例如,如果Web服务器配置为最多为256个客户端提供服务,MySQL请求与Web请求的比率为1/8,则最好将最大数据库连接数设置为32。还要考虑留有安全余量,把这个数乘以2,得到最终的数量。只有在基础设施支持的情况下,才能尝试将数据库连接数的最大数量与Web服务器的客户端限制相匹配。在大多数情况下,最好保持接近32。

  在Monyog中查看MySQL连接

  在MySQL数据库中,MySQL的最大并发连接数是存储在全局变量max_connections中的。Monyog报告变量“ max_connections”作为当前连接监控组中的“最大允许”指标。它还将该数字除以打开的连接数,以生成连接使用百分比:

  还有一个连接历史记录监控,可以帮助计算最佳的最大并发连接数。它包括尝试,拒绝和成功连接的数量。此外,允许达到的最大指标的百分比显示为一个进度条,可以让你快速评估服务器在过去达到的最大并发连接数:

  技巧#2:为临时表分配足够的内存

  在某些情况下,服务器在处理语句时会创建内部临时表。临时表用于内部操作如GROUP BY和distinct,还有一些ORDER BY查询以及UNION和FROM子句(派生表)中的子查询。这些都是在内存中创建的内存表。内存中临时表的最大大小由 tmp_table_size和 max_heap_table_size中较小的值确定。如果临时表的大小超过这个阈值,则将其转换为磁盘上的InnoDB或MyISAM表。此外,如果查询涉及BLOB或TEXT列,而这些列不能存储在内存表中,临时表总是直接指向磁盘。

  这种转换的代价很大,所以考虑增加 max_heap_table_size和 tmp_table_size变量的大小来帮助减少在磁盘上创建临时表的数量。请记住,这将需要大量内存,因为内存中临时表的大小是基于“最坏情况”的。例如,内存表总是使用固定长度的列,所以字符列使用VARCHAR(255)。这可以使内存中的临时表比想象的要大得多—事实上,这比查询表的总大小要大很多倍!当增加 max_heap_table_size和 tmp_table_sizevariables的大小时,一定要监视服务器的内存使用情况,因为内存中的临时表可能会增加达到服务器内存容量的风险。

  一般来说,32M到64M是建议值,从这两个变量开始并根据需要进行调优。

  在Monyog中的临时表监测

  临时表的监测是许多预定义的Monyog监测之一。它提供了一些临时表使用的指标,包括:

  允许的最大值 :显示 tmp_table_size服务器变量的值,它定义了在内存中创建的临时表的最大大小。与 max_heap_table_size一起,这个值定义了可以在内存中创建的临时表的最大大小。如果内存临时表大于此大小,则将其存储在磁盘上。 内存表的最大大小 :显示 max_heap_table_size服务器变量的值,该值定义了显式创建的MEMORY存储引擎表的最大大小。 创建的临时表总数 :显示 created_tmp_tables服务器变量的值,它定义了在内存中创建的临时表的数量。 在磁盘上创建的临时表 :显示 created_tmp_disk_tables服务器变量的值,该变量定义了在磁盘上创建的临时表的数量。如果这个值很高,则应该考虑增加 tmp_table_size和 max_heap_table_size的值,以便增加创建内存临时表的数量,从而减少在磁盘上创建临时表的数量。 磁盘:总比率 :基于 created_tmp_disk_tables除以 created_tmp_tables的计算值。由于 tmp_table_size或 max_heap_table_size不足而在磁盘上创建的临时表的百分比。Monyog将这个数字显示为一个进度条和百分比,以便快速确定有多少磁盘用于临时表,而不是内存。 趋势图可用于创建的总表,磁盘上创建的表和磁盘的总比值。这些让我们看到了它们随着时间的演变:

  技巧#3:增加线程缓存大小

关于网站制作,看看客户怎么说
***(匿名) 评价文章 佛山网站制作不能忽视的细节

互联网是一个无时间、无区域、开放式的市场,网站是企业在互联网上的窗口,企业可以通过它,展示实力、宣传品牌,吸引更多潜在用户来了解企业,并最终达成合作。然而想...

***(匿名) 评价文章 网站制作经验分享 企业网站在初期设计时应该考虑哪些因素

A5创业网是国内领先的创业资讯和服务平台,提供权威的创业资讯和精准的品牌营销服务。以创业融资动态、创业学院...

***(匿名) 评价文章 广州专业网站制作公司建设的网站有死链接吗

大家在上网的过程中都应该遇到过这样的一个问题,那就是自己找到了最为需要的信息,但是点击进入网站的时候,或者说是点击进入了某一个链接,却发现它出现了不存在的页...

公司网站建设
Hi,Are you ready?
准备好开始了吗?
那就与我们取得联系吧

广州建站 感恩回馈

咨询送礼现在提交,将获得智唯网络策划专家免费为您制作
价值5880元《全网营销方案+优化视频教程》一份!
下单送礼感恩七周年,新老用户下单即送创业型空间+域名等大礼
24小时免费咨询热线0757-8108-9123
合作意向表
您需要的服务
您最关注的地方
预算
  • 验证码

直接咨询