thread_cache_size功能在mysql數據庫配置文件中是非常重要的一項功能了,如果對thread_cache_size優化做得好我們可以讓服務器跑得非常快,設置不好就會發現很小訪問量就非常的卡哦。 thread_cache_size 查詢進程使用情況 代碼如下 復制代碼 mysql> show global status like ‘Thread%’; +——————-+———-+ | Variable_name | Value | +——————-+———-+ | Threads_cached | 26 | | Threads_connected | 510 | | Threads_created | 35168165 | | Threads_running | 459 | +——————-+———-+ 4 rows in set (0.01 sec) 查詢服務器 thread_cache_size配置 代碼如下 復制代碼 mysql> show variables like ‘thread_cache_size’; +——————-+——-+ | Variable_name | Value | +——————-+——-+ | thread_cache_size | 32 | +——————-+——-+ 1 row in set (0.00 sec) 如果我們在MySQL服務器配置文件中設置了thread_cache_size,當客戶端斷開之后, 服務器處理此客戶的線程將會緩存起來以響應下一個客戶而不是銷毀(前提是緩存數未達上限)。 Threads_created表示創建過的線程數,如果發現Threads_created值過大的話, 表明 MySQL服務器一直在創建線程,這也是比較耗資源,可以適當增加配置文件中thread_cache_size值, 根據調查發現以上服務器線程緩存thread_cache_size沒有進行設置,或者設置過小,這個值表示可以重新利用保存在緩存中線程的數量,當斷開 連接時如果緩存中還有空間,那么客戶端的線程將被放到緩存中,如果線程重新被請求,那么請求將從緩存中讀取,如果緩存中是空的或者是新的請求,那么這個線 程將被重新創建,如果有很多新的線程,增加這個值可以改善系統性能.通過比較 Connections 和 Threads_created 狀態的變量,可以看到這個變量的作用。(?>表示要調整的值) 根據物理內存設置規則如下: 1G ?> 8 2G ?> 16 3G ?> 32 >3G ?> 64