2012-11-26 21 views
1

我有一個專用的服務器 - 英特爾至強L5320 8GB的RAM和2×500GB HDD 7200RMP的my.cnf MySQL的性能比較爲5GB的MyISAM表

我需要優化的MySQL,以應付大量的5Gb MyISAM表+左右25 - 30個目前較小的數據庫,它看起來像這樣:

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

因爲它是這個服務器是鬥爭和我繼續TMP磁盤已滿的警告,你可以請幫我/建議最好my.cnf配置我的服務器和/或任何其他會改善性能的設置更改。

在此先感謝

回答

1

我建議您使用mytopmysqltuner使用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 

問候。

1

如果/tmp佔滿了,你正在運行一些大型的,低效的查詢某處其回落至文件排序。編寫良好,高效的查詢通常不需要這樣 - 打開慢查詢日誌記錄(如果尚未),並檢查日誌以查看需要優化的內容。

+0

我不認爲這是所有和結束所有tbh我已經建立了MySQL的tmp文件夾來解決這個問題 - 我認爲5GB myisam表格已經優化得非常好。 tmp磁盤設置爲4GB,這可以隨着增加?是my.cnf儘可能好 - 是否還有其他可以大大提高性能的tweeks? –

+1

MySQL配置只能爲低效查詢做很多事情。 **看看你的慢查詢日誌。** – duskwuff