my.cnf MySQL性能为5GB MYISAM表

时间:2012-11-26 16:09:39

标签: mysql performance optimization my.cnf

我有一个专用服务器 - 带有8GB RAM和2 x 500GB 7200RMP硬盘的Intel Xeon L5320

我需要优化mysql以应对大型5Gb MyISAM表+大约25-30个较小的数据库,目前看起来像这样:

key_buffer = 3G
thread_cache_size = 16
table_cache = 8192
query_cache_size = 512M

因为它是服务器真的很难,我得到继续tmp磁盘完全警告你能帮我/建议我的服务器和任何其他设置更改,以改善性能的最佳my.cnf配置。

提前致谢

2 个答案:

答案 0 :(得分:1)

如果/tmp正在填满,那么您正在某些地方运行一些大而低效的查询,这些查询将回退到FILESORT。编写良好,高效的查询通常不需要这样 - 打开慢速查询记录(如果还没有)并检查日志以查看需要优化的内容。

答案 1 :(得分:1)

我建议您使用 mytop mysqltuner 来分析使用mysql资源(RAM和CPU)。

太多启用选项以记录慢查询

log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 3

查看这篇关于 ntpd 服务的帖子:

MySQL high CPU usage

最后,我将您留在一个设置中,我有一个专用服务器,用于高交易率。

max_allowed_packet=16M
key_buffer_size=8M
innodb_additional_mem_pool_size=10M
innodb_buffer_pool_size=512M
join_buffer_size=40M
table_open_cache=1024
query_cache_size=40M
table_definition_cache=256
innodb_additional_mem_pool_size=10M
key_buffer_size=16M
max_allowed_packet=32M
max_connections = 300
query_cache_limit = 10M
log_slow_queries = /var/log/mysql/mysql-slow.log
long_query_time = 3

问候。