在两个数据库MySQL服务器(来自两个不同的网站)上,我启动了一个mysqltuner(我们在Web服务器上有一个超时,但我们现在还不知道它来自何处)
以下是通过mysqltuner提供建议的优化,数据库运行在具有4vcpu和15 GB ram(ubuntu 16.04服务器)的计算机上。
db01 PROD
要调整的变量:
query_cache_type (= 1)
join_buffer_size (> 256.0K, always use indexes with joins)
table_open_cache (> 431)
innodb_buffer_pool_size (> = 1G) if possible.
db02 PROD:
要调整的变量:
max_connections (> 151)
wait_timeout (<28800)
interactive_timeout (<28800)
query_cache_type (= 1)
sort_buffer_size (> 256K)
read_rnd_buffer_size (> 256K)
join_buffer_size (> 256.0K, always use indexes with joins)
table_open_cache (> 431)
innodb_buffer_pool_size (> = 2G) if possible.
我想听听你的意见并特别理解这些参数(我开始使用MySQL ^^)。
答案 0 :(得分:1)
高CPU - &gt;找慢的查询;处理索引和/或查询的制定。
高I / O - &gt;同上。
高CPU或I / O和/或查询超时 - &gt;打开慢速日志;会抓住它。 (最好有long_query_time = 1
。)
比RAM更多的数据 - &gt;检查innodb_buffer_pool_size
“连接太多” - &gt;各种可能的原因
以上都没有? - &GT;别担心(还)。