優化mysql伺服器

2021-10-05 19:29:22 字數 2553 閱讀 8639

優化mysql伺服器

最大連線數:

max_connections=2000

預設:max_connections=151

指定mysql可能的連線數量

#指定mysql可能的連線數量。當mysql主線程在很短的時間內得到非常多的連線請求,該引數就起作用,之後主線程花些時間(儘管很短)檢查連線並且啟動乙個新執行緒。

#back_log引數的值指出在mysql暫時停止響應新請求之前的短時間內多少個請求可以被存在堆疊中。

back_log=1024

預設:back_log=80

索引塊的緩衝區大小

key_buffer_size = 32m

#索引塊的緩衝區大小,對myisam表效能影響最大的乙個引數.決定索引處理的速度,尤其是索引讀的速度。預設值是8m,通過檢查狀態值key_read_requests

#和key_reads,可以知道key_buffer_size設定是否合理

預設:key_buffer_size=8m

mysql執行排序使用的緩衝大小

sort_buffer_size = 16m

#是mysql執行排序使用的緩衝大小。如果想要增加order by的速度,首先看是否可以讓mysql使用索引而不是額外的排序階段。

#如果不能,可以嘗試增加sort_buffer_size變數的大小。

預設:sort_buffer_size=256k

mysql讀入緩衝區大小

read_buffer_size = 64m

#是mysql讀入緩衝區大小。對錶進行順序掃瞄的請求將分配乙個讀入緩衝區,mysql會為它分配一段記憶體緩衝區。read_buffer_size變數控制這一緩衝區的大小。

#如果對錶的順序掃瞄請求非常頻繁,並且你認為頻繁掃瞄進行得太慢,可以通過增加該變數值以及記憶體緩衝區大小提高其效能。

預設:read_buffer_size=64k

join操作快取大小

join_buffer_size = 16m

#應用程式經常會出現一些兩表(或多表)join的操作需求,mysql在完成某些 join 需求的時候(all/index join),為了減少參與join的「被驅動表」的

#讀取次數以提高效能,需要使用到 join buffer 來協助完成 join操作。當 join buffer 太小,mysql 不會將該 buffer 存入磁碟檔案,

#而是先將join buffer中的結果集與需要 join 的表進行 join 操作,

#然後清空 join buffer 中的資料,繼續將剩餘的結果集寫入此 buffer 中,如此往復。這勢必會造成被驅動表需要被多次讀取,成倍增加 io 訪問,降低效率。

預設:join_buffer_size=256k

mysql的隨機讀緩衝區大小

read_rnd_buffer_size = 32m

#是mysql的隨機讀緩衝區大小。當按任意順序讀取行時(例如,按照排序順序),將分配乙個隨機讀快取區。進行排序查詢時,mysql會首先掃瞄一遍該緩衝,以避免磁碟搜尋,

#提高查詢速度,如果需要排序大量資料,可適當調高該值。但mysql會為每個客戶連線發放該緩衝空間,所以應盡量適當設定該值,以避免記憶體開銷過大。

預設:read_rnd_buffer_size=256k

快取排序索引大小

myisam_sort_buffer_size = 256m

#當對myisam表執行repair table或建立索引時,用以快取排序索引;設定太小時可能會遇到」 myisam_sort_buffer_size is too small」

myisam_sort_buffer_size=102m

快取空閒的執行緒以便不被銷毀

thread_cache_size = 384

#thread_cahe_size執行緒池,執行緒快取。用來快取空閒的執行緒,以至於不被銷毀,如果執行緒快取在的空閒執行緒,需要重新建立新連線,

#則會優先呼叫執行緒池中的快取,很快就能響應連線請求。每建立乙個連線,都需要乙個執行緒與之匹配。

預設:thread_cache_size=10

set global max_connections=2000;#設定最大連線數

set global key_buffer_size=51210241024;#設定索引塊緩衝區大小

set global sort_buffer_size=12810241024;#mysql執行排序使用的緩衝大小

set global read_buffer_size=6410241024;#mysql讀入緩衝區大小

set global join_buffer_size=12810241024;#join操作快取大小

set global read_rnd_buffer_size=3210241024;#mysql的隨機讀緩衝區大小

set global myisam_sort_buffer_size=25610241024;#快取排序索引大小

set global thread_cache_size=384;#快取空閒的執行緒以便不被銷毀

set global innodb_buffer_pool_size=100010241024;#記憶體

MySQL優化 伺服器優化

標籤 空格分隔 mysql 伺服器的硬體效能直接決定著mysql資料庫的效能,硬體的效能瓶頸,直接決定mysql資料庫的執行速度和效率。需要從以下幾個方面考慮 1 配置較大的記憶體。足夠大的記憶體,是提高mysql資料庫效能的方法之一。記憶體的io比硬碟快的多,可以增加系統的緩衝區容量,使資料在記憶...

優化MYSQL伺服器

mysql伺服器有幾個影響其操作的引數 變數 如果預設的引數值不合適,可以將其修改為對伺服器執行環境更合適的值。例如,如果您有大量的記憶體,可以告訴服務為磁碟和索引操作使用較大的緩衝區。這將使記憶體持有更多的資訊並減少了必須進行的磁碟訪問的數 量。如果是一般的系統,可以告訴伺服器使用較小的緩衝區,以...

優化MYSQL伺服器

mysql伺服器有幾個影響其操作的引數 變數 如果預設的引數值不合適,可以將其修改為對伺服器執行環境更合適的值。例如,如果您有大量的記憶體,可以告訴服務為磁碟和索引操作使用較大的緩衝區。這將使記憶體持有更多的資訊並減少了必須進行的磁碟訪問的數 量。如果是一般的系統,可以告訴伺服器使用較小的緩衝區,以...