2012-10-08 23 views
0

我有一個8GB RAM的MediaTemple DV4服務器上的Wordpress網站。該數據庫擁有超過35,000個帖子,在繁忙時間,該站點擁有300至400個併發用戶。主頁運行6個查詢到wp_posts表。my.cnf設置爲一個DV4 8GB

任何人都可以提供有關my.cnf文件的最佳設置的任何建議嗎?謝謝。

query-cache-type = 1 
query-cache-size = 256M 
query_cache_limit = 1M 
thread_cache_size = 256 
max_connections = 350 
tmp_table_size=256M 
max_heap_table_size=256M 
table_cache= 1024 
join_buffer_size = 5M 
key_buffer_size = 512M 
wait_timeout = 60 
local-infile=0 
datadir=/var/lib/mysql 
socket=/var/lib/mysql/mysql.sock 
user=mysql 
# Disabling symbolic-links is recommended to prevent assorted security risks 
symbolic-links=0 

MySQLTuner性能指標:

-------- Storage Engine Statistics ------------------------------------------- 
[--] Status: +Archive -BDB -Federated +InnoDB -ISAM -NDBCluster 
[--] Data in MyISAM tables: 963M (Tables: 504) 
[--] Data in InnoDB tables: 4M (Tables: 198) 
[!!] Total fragmented tables: 218 

[--] Up for: 2d 18h 10m 22s (27M q [113.837 qps], 1M conn, TX: 489B, RX: 4B) 
[--] Reads/Writes: 97%/3% 
[--] Total buffers: 1.4G global + 7.6M per thread (350 max threads) 
[OK] Maximum possible memory usage: 4.0G (42% of installed RAM) 
[OK] Slow queries: 0% (3K/27M) 
[!!] Highest connection usage: 86% (301/350) 
[OK] Key buffer size/total MyISAM indexes: 128.0M/679.6M 
[OK] Key buffer hit rate: 100.0% (1B cached/57K reads) 
[OK] Query cache efficiency: 67.8% (14M cached/20M selects) 
[!!] Query cache prunes per day: 29253 
[OK] Sorts requiring temporary tables: 0% (1K temp sorts/1M sorts) 
[!!] Temporary tables created on disk: 35% (688K on disk/1M total) 
[OK] Thread cache hit rate: 99% (463 created/1M connections) 
[OK] Table cache hit rate: 31% (1K open/3K opened) 
[OK] Open file limit used: 42% (1K/2K) 
[OK] Table locks acquired immediately: 99% (7M immediate/7M locks) 
[OK] InnoDB data size/buffer pool: 4.3M/32.0M 

回答

1

可能是你可以檢查查詢的大小,它可能是1M過大和小 - 但經常運行 - 查詢將不會被緩存。

PT-查詢消化是這樣做的一個很好的工具: http://www.percona.com/doc/percona-toolkit/2.1/pt-query-digest.html

對於一般的技巧,你可以使用: http://mysqltuner.pl 記住它,那他們只是一般的建議,所以不要」不要盲目追隨他們,但通常在優化MySql時腳本的輸出是一個很好的開始。

key_buffer_size只與您使用MyISAM表格相關(不要!)。

如果你希望數據庫InnoDB的具有流暢的運行則提高 innodb_buffer_pool_size以高於實際的數據庫大小(如果可能的話)

+0

我剛添加的mysqltuner指標... – ok1ha