MySQL的优化技巧-thread_cache_size
最近我遇到了一个MySQL数据库,轻松运行PROCESSLIST 300至600行。 轻松设置最大连接这一数额的两倍以上。 这是一组,我只是不同意。 我被称为,因为它也证明了自己不是工作非常好。 所以这里有一些我的想法的过程中,我发现了。
在我看来,大部分将不再需要在使用MySQL数据库的最大连接数或1500或以上。 允许更多的连接到您的服务器带来更多的开销。 使用有效的连接。
二,了解Threads_Created的使用与连接%。 你可能认为这是创建的线程命中率。 顺便说一句.. 这是不是新的信息,这是信息已经理解在社会上一些时间。 我不假装提出这比任何其他方式试图去帮助别人。 所以做以下理解你的电流%
显示像'Threads_Created的'状态;
设置@ Threads_Created的的= <从上面的查询结果;
像“连接”的显示状态;
设置连接= <从上面的查询结果;
选择100 - ((@ Threads_Created的/ @连接)* 100)“Threads_Created的连接%”\ G
所以,如果你执行上述过程,你的百分比是什么? 你想这是尽可能接近100。 因此,例如,最近,我遇到的服务器有%至10%以下。 那么,你如何解决这个问题,并提高你的%?
变量thread_cache_size默认设置为0。 如果你开始注意到你的过程中成长,但不会阻止死锁等查询,那么你应该检查你的“Threads_Created的连接%”如上所述。 %将是低的,它很可能。 您可以提高%和找到甜蜜点适合您的服务器环境大大改善你的数据库性能。 thread_cache_size可以改变现场环境。 因此,这可以让你设置的变量,然后监视状态“Threads_Created的价值”(见上文得到的价值)。
如果这种情况持续下去,价值递增,然后继续提高thread_cache_size 。 通常情况下,我更喜欢提高了几然后移动到第500的时间的时间值25。 我经常检查Threads_Created的连接%“和”Threads_Created的。 一旦你得到靠近甜蜜点行开始下降,你会发现获得PROCESSLIST%。 通常一个调整thread_cache_size将让你进入甜蜜点。
每个服务器和环境是不同的。
有些服务器可能thread_cache_size 50与98%,而有98% thread_cache_size设置为15000。 最大为16384。
所以,如果没有别的... 找出你的百分比是先考虑作出调整。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
