我有专用服务器(Intel四核Xeon E5645 VT,6 GB RAM)。但我有mysql的问题。
我的网站每天有40-60k的unical用户。我需要配置my.cnf以获得最佳性能。
我目前的配置:
key_buffer = 256M
max_allowed_packet = 32M
thread_stack = 320K
thread_cache_size = 20
myisam-recover = BACKUP
max_connections = 500
myisam_sort_buffer_size = 24M
table_cache = 1024
tmp_table_size = 48M
query_cache_limit = 3M
query_cache_size = 128M
答案 0 :(得分:1)
对于table_open_cache,请看一下这个页面: https://kb.askmonty.org/en/optimizing-table_open_cache/ (它与MariaDB有关,但对MySQL也有效)
对于key_buffer_size: https://kb.askmonty.org/en/optimizing-key_buffer_size/
对于max_connections: https://kb.askmonty.org/en/handling-too-many-connections/
当然myisam-recover = BACKUP会减慢你的速度,所以一定要确保它有所帮助。但我建议您添加FORCE,以防服务器崩溃。
检查query_cache_limit是否过高(当然这取决于您的工作量)。 tmp_table_size对于避免基于磁盘的临时表非常重要,但我无法帮助你,因为只有你知道你的GROUP BY有多重。
如果您不使用InnoDB,则可以禁用该插件以节省内存。