mysql調優的一些方面

1.首先的一點就是可以做一個mysql集羣實現讀寫分離

2.查詢sql慢日誌,給一些表做索引

3.調整mysql參數:

設置合理的key_buffer_size,它是指索引緩衝區的大小,決定了索引的處理速度。大概的分配爲1G設置128M,2G爲256M,依此類推。

#查看key_buffer_size的值
show variables like "key_buffer%";

#修改,單位爲bit
set global key_buffer_size=256000000;

#查看該參數的合理性,需要看兩個值:key_reads、key_read_requests。一般來說key_reads / key_read_requests爲1:100,或者1:1000
show status like "key_read%";

設置合理的table_open_cache,一般1024就可以了。該參數是指打開一個表的時候,會臨時把表裏面的數據放到這部分內存裏面。該參數設置參考Open_tables,Open_tables應該比table_open_cache小。

#查看table_open_cache
show variables like "table_open_cache";

#查看Open_tables
show status like "open_ta%";

sort_buffer_size 查詢排序時所能使用的緩衝區大小,該參數對應的分配內存是每連接獨佔!如果有100個連接,那麼實際分配的總共排序緩衝區大小爲100 × 4 = 400MB。所以,對於內存在4GB左右的服務器推薦設置爲4-8M。

read_buffer_size 讀查詢操作所能使用的緩衝區大小。和sort_buffer_size一樣,該參數對應的分配內存也是每連接獨享!

 #查看
 show variables like "read_buffer_size%";

#修改
set read_buffer_size=1024000;

myisam_sort_buffer_size 這個緩衝區主要用於修復表過程中排序索引使用的內存或者是建立索引時排序索引用到的內存大小,一般4G內存給64M即可

#查看
show variables like "myisam_sort_buffer_size%";

#修改
set myisam_sort_buffer_size=16000000;

設置合理的query_cache_size,該參數是查詢操作緩衝區的大小。該參數需要結合查看參數Qcache_lowmem_prunes。Qcache_lowmem_prunes記錄了有多少查詢不足而移除查詢緩存。一般來說4G內存64M足夠。

查詢
show variables like "query_cache%";

#修改
SHOW STATUS LIKE "Qcache%";

thread_cache_size 表示可以重新利用保存在緩存中線程的數,參考如下值:1G —> 8 2G —> 16 3G —> 32 >3G —> 64

#查詢
SHOW variables LIKE "thread_cache_size";

wait_timeout 表示空閒的連接超時時間,默認是28800s,這個參數是和interactive_timeout一起使用的,也就是說要想讓wait_timeout 生效,必須同時設置interactive_timeout,建議他們兩個都設置爲10

SHOW variables LIKE "wait_timeout";
SHOW variables LIKE "interactive_timeout";

#修改
set wait_timeout=10;
SHOW variables LIKE "interactive_timeout";

max_connect_errors 是一個MySQL中與安全有關的計數器值,它負責阻止過多嘗試失敗的客戶端以防止暴力破解密碼的情況。與性能並無太大關係。爲了避免一些錯誤我們一般都設置比較大,比如說10000 。
max_connections 最大的連接數,根據業務請求量適當調整,設置500足夠

#查看
SHOW variables LIKE "max_connections ";

#修改
set global max_connections=500;

max_user_connections 是指同一個賬號能夠同時連接到mysql服務的最大連接數。設置爲0表示不限制。通常我們設置爲100足夠

#查看
SHOW variables LIKE "max_user_connections";

#修改
set global max_user_connections=100;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章