mysql引數優化

2021-07-02 05:25:58 字數 1247 閱讀 8042

back_log: 要求 mysql 能有的連線數量。當主要mysql執行緒在乙個很短時間內得到非常多的連線請求,這就起作用,然後主線程花些時間(儘管很短)檢查連線並且啟動乙個新執行緒。 back_log值指出在mysql暫時停止回答新請求之前的短時間內多少個請求可以被存在堆疊中。只有如果期望在乙個短時間內有很多連線,你需要增加 它,換句話說,這值對到來的tcp/ip連線的偵聽佇列的大小。你的作業系統在這個佇列大小上有它自己的限制。 試圖設定back_log高於你的作業系統的限制將是無效。預設為50,改為500.

interactive_timeout: 伺服器在關閉它前在乙個互動連線上等待行動的秒數。乙個互動的客戶被定義為對mysql_real_connect()使用 

client_interactive 選項的客戶。 預設數值是28800,我把它改為7200。

key_buffer_size: 索引塊是緩衝的並且被所有的執行緒共享。

key_buffer_size是用於索引塊的緩衝區大小,增加它可得到更好處理的索引(對所有讀和多重寫),到你 能負擔得起那樣多。如果你使它太大,系統將開始換頁並且真的變慢了。預設數值是8388600(8m),改為 402649088(400mb)。

max_connections: 允許的同時客戶的數量。增加該值增加mysqld 要求的檔案描述符的數量。這個數字應該增加,否則,你將經常看到 too many connections 錯誤。 預設數值是100,我把它改為1024 。

sort_buffer: 每個需要進行排序的執行緒分配該大小的乙個緩衝區。增加這值加速order by或group by操作。預設數值是2097144(2m),我把它改為16777208 (16m)

table_cache: 為所有執行緒開啟表的數量。增加該值能增加mysqld要求的檔案描述符的數量。mysql對每個唯一開啟的表需要2個檔案描述符。預設數值是64,我把它改為512。

thread_cache_size: 可以復用的儲存在中的執行緒的數量。如果有,新的執行緒從快取中取得,當斷開連線的時候如果有空間,客戶的線置在快取中。如果有很多新的執行緒,為了提高效能可 以這個變數值。通過比較 connections 和 threads_created 狀態的變數,可以看到這個變數的作用。我把它設定為 80。

wait_timeout: 伺服器在關閉它之前在乙個連線上等待行動的秒數。 預設數值是28800,我把它改為7200。 注:引數的調整可以通過修改/etc/my.cnf 檔案並重啟 mysql 實現。這是乙個比較謹慎的工作,上面的結果也僅僅是我的一些看法,你可以根據你自己主機的硬體情況(特別是記憶體大小)進一步修改

Mysql 引數優化

1.my.cnf中的把 innodb buffer pool size 16g 別佔滿了記憶體。2.my.cnf中的把 innodb log buffer size 50m 這個主要是滿足大事務的需求。3.my.cnf中的把 innodb log file size 4g 這個是在硬碟,所以先設大 ...

Mysql引數優化

修改的引數 1 long query time 10改為long query time 2 此引數為將執行時間超過多少秒的sql,放入慢查詢日誌。在此將時間從10秒縮短為2秒,從而更加詳細的抓取重負載的sql。2 tmp table size 75m改為tmp table size 256m 此引數...

mysql引數優化

mysql引數優化 用來存放innodb的內部目錄,對於大資料設定16m足夠用 innodb additional mem pool size 16m innodb 快取總大小設定,一般設定為系統記憶體的70 80 innodb buffer pool size 12g 指定所有innodb資料檔案...