欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql -參數(shù)thread_cache_size優(yōu)化方法 小結(jié)

 更新時(shí)間:2021年03月16日 00:34:46   投稿:mdxy-dxy  
以下是某門戶網(wǎng)站的mysql狀態(tài)實(shí)例及分析過程,絕對(duì)的第一手?jǐn)?shù)據(jù)資料,很生動(dòng)的體現(xiàn)了參數(shù)thread_cache_size優(yōu)化的效果及優(yōu)化該參數(shù)的必要性,希望對(duì)各位系統(tǒng)管理員能有幫助。

全局,動(dòng)態(tài),默認(rèn)值-1表示自動(dòng)調(diào)整大小,公式:8 + (max_connections / 100)。
最小值0,最大值16384,查看當(dāng)前:

MySQL [(none)]> show variables like 'thread_cach%';
+-------------------+-------+
| Variable_name   | Value |
+-------------------+-------+
| thread_cache_size | 64  |
+-------------------+-------+

在經(jīng)常創(chuàng)建新的連接的情況下,提高該值可提高mysql性能,因?yàn)闇p少了連接的分配,但使用了java的連接池等,性能提升沒那么顯著。如果每秒有上百的連接,需要將該值設(shè)置足夠高。

#嘗試連接次數(shù),無論是否成功連接
MySQL [(none)]> show global status like 'connections';
+---------------+-----------+
| Variable_name | Value   |
+---------------+-----------+
| Connections  | 177312707 |
+---------------+-----------+
1 row in set (0.00 sec)

MySQL [(none)]> show global status like 'thread%';
+-------------------+--------+
| Variable_name   | Value |
+-------------------+--------+
| Threads_cached  | 49   | #線程緩存中的空閑線程數(shù)
| Threads_connected | 416  | #當(dāng)前打開的連接數(shù)
| Threads_created  | 208872 | #創(chuàng)建連接的線程數(shù),如果很大,需要添加thread_cache_size大小
| Threads_running  | 5   | #當(dāng)前未休眠的連接
+-------------------+--------+

通過檢查Connections和Threads_created狀態(tài)變量之間的差異,您可以看到線程緩存的效率,越小越好

MySQL [(none)]> select 208872/177312707;
+------------------+
| 208872/177312707 |
+------------------+
|      0.0012 |
+------------------+

下面是一些補(bǔ)充說明:

根據(jù)調(diào)查發(fā)現(xiàn)以上服務(wù)器線程緩存thread_cache_size沒有進(jìn)行設(shè)置,或者設(shè)置過小,這個(gè)值表示可以重新利用保存在緩存中線程的數(shù)量,當(dāng)斷開連接時(shí)如果緩存中還有空間,那么客戶端的線程將被放到緩存中,如果線程重新被請(qǐng)求,那么請(qǐng)求將從緩存中讀取,如果緩存中是空的或者是新的請(qǐng)求,那么這個(gè)線程將被重新創(chuàng)建,如果有很多新的線程,增加這個(gè)值可以改善系統(tǒng)性能.通過比較 Connections 和 Threads_created 狀態(tài)的變量,可以看到這個(gè)變量的作用。(-->表示要調(diào)整的值) 根據(jù)物理內(nèi)存設(shè)置規(guī)則如下:

1G ---> 8
2G ---> 16
3G ---> 32
>3G ---> 64

優(yōu)化方法:

1、mysql> set global thread_cache_size=16
2、編輯/etc/my.cnf 更改/添加

thread_concurrency = 16

1、MySQL服務(wù)器的線程數(shù)查看方法:

show  global status like 'Thread%';

Threads_created:創(chuàng)建過的線程數(shù),如果發(fā)現(xiàn)Threads_created值過大的話,表明MySQL服務(wù)器一直在創(chuàng)建線程,這也是比較耗資源,可以適當(dāng)增加配置文件中thread_cache_size值

2、優(yōu)化參數(shù)thread_cache_size

thread_cache_size:當(dāng)客戶端斷開之后,服務(wù)器處理此客戶的線程將會(huì)緩存起來以響應(yīng)下一個(gè)客戶而不是銷毀(前提是緩存數(shù)未達(dá)上限)

即可以重新利用保存在緩存中線程的數(shù)量,當(dāng)斷開連接時(shí)如果緩存中還有空間,那么客戶端的線程將被放到緩存中,如果線程重新被請(qǐng)求,那么請(qǐng)求將從緩存中讀取,如果緩存中是空的或者是新的請(qǐng)求,那么這個(gè)線程將被重新創(chuàng)建,如果有很多新的線程,增加這個(gè)值可以改善系統(tǒng)性能。

thread_cache_size大小的設(shè)置:

如果是短連接,適當(dāng)設(shè)置大一點(diǎn),因?yàn)槎踢B接往往需要不停創(chuàng)建,不停銷毀,如果大一點(diǎn),連接線程都處于取用狀態(tài),不需要重新創(chuàng)建和銷毀,所以對(duì)性能肯定是比較大的提升。
對(duì)于長連接,不能保證連接的穩(wěn)定性,所以設(shè)置這參數(shù)還是有一定必要,可能連接池的問題,會(huì)導(dǎo)致連接數(shù)據(jù)庫的不穩(wěn)定性,也會(huì)出現(xiàn)頻繁的創(chuàng)建和銷毀,但這個(gè)情況比較少,如果是長連接,可以設(shè)置成小一點(diǎn),一般在50-100左右。

物理內(nèi)存設(shè)置規(guī)則:通過比較Connections 和 Threads_created 狀態(tài)的變量,可以看到這個(gè)變量的作用。(-->表示要調(diào)整的值)   根據(jù)物理內(nèi)存設(shè)置規(guī)則如下:

1G  ---> 8
2G  ---> 16
3G  ---> 32
>3G  ---> 64

查詢thread_cache_size設(shè)置

show global status like'thread_cache_size';

優(yōu)化方法:

1、mysql> set global thread_cache_size=16
2、編輯/etc/my.cnf 更改/添加
thread_concurrency = 16

3、mysql kill線程

mysqladmin start slave stop slave kill某個(gè)連接到mysqlServer的線程

相關(guān)文章

  • MySQL Count函數(shù)使用教程

    MySQL Count函數(shù)使用教程

    這篇文章主要介紹了MySQL Count函數(shù),COUNT()是一個(gè)聚合函數(shù),返回指定匹配條件的行數(shù)。開發(fā)中常用來統(tǒng)計(jì)表中數(shù)據(jù),全部數(shù)據(jù),不為NULL數(shù)據(jù),或者去重?cái)?shù)據(jù)
    2022-12-12
  • LInux下安裝MySQL5.6 X64版本步驟詳解

    LInux下安裝MySQL5.6 X64版本步驟詳解

    這篇文章主要介紹了LInux下安裝MySQL5.6 X64版本步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • MySql安裝與卸載的詳細(xì)教程

    MySql安裝與卸載的詳細(xì)教程

    這篇文章主要為大家介紹了MySql安裝與卸載的詳細(xì)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • MySQL Like語句的使用方法

    MySQL Like語句的使用方法

    本文介紹一下關(guān)于MySQL查詢字符串中包含字符的記錄一些常用方法,這里包括有REGEXP、FIND_IN_SET、Like
    2013-11-11
  • linux mint 下mysql中文支持問題

    linux mint 下mysql中文支持問題

    這篇文章主要介紹了linux mint 下mysql中文支持問題的相關(guān)資料,需要的朋友可以參考下
    2015-10-10
  • 探究MySQL中索引和提交頻率對(duì)InnoDB表寫入速度的影響

    探究MySQL中索引和提交頻率對(duì)InnoDB表寫入速度的影響

    這篇文章主要介紹了MySQL中索引和提交頻率對(duì)InnoDB表寫入速度的影響,作者通過實(shí)際測試運(yùn)行時(shí)間的對(duì)比來驗(yàn)證,需要的朋友可以參考下
    2015-05-05
  • 解決Can''t locate ExtUtils/MakeMaker.pm in @INC報(bào)錯(cuò)

    解決Can''t locate ExtUtils/MakeMaker.pm in @INC報(bào)錯(cuò)

    今天小編就為大家分享一篇關(guān)于解決Can't locate ExtUtils/MakeMaker.pm in @INC報(bào)錯(cuò),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • mysql無法成功啟動(dòng)服務(wù)的解決方法(通俗易懂!)

    mysql無法成功啟動(dòng)服務(wù)的解決方法(通俗易懂!)

    Mysql是我們使用數(shù)據(jù)庫時(shí)需要用到的服務(wù),但是在使用過程中常常遇到服務(wù)無法啟動(dòng)的問題,下面這篇文章主要給大家介紹了關(guān)于mysql無法成功啟動(dòng)服務(wù)的解決方法,需要的朋友可以參考下
    2023-02-02
  • MAC下MYSQL5.7.17連接不上的問題及解決辦法

    MAC下MYSQL5.7.17連接不上的問題及解決辦法

    MAC下MYSQL5.7.17無法連接的問題,下載安裝完SQLBench_community 6.3.9后新建MYSQL CONNECTIONS根本連接不上,提示為密碼錯(cuò),什么原因如何解決呢?今天小編給大家解答下
    2017-02-02
  • mysql多表連接查詢實(shí)例講解

    mysql多表連接查詢實(shí)例講解

    本篇文章中給大家通過實(shí)例代碼講述了mysql多表連接查詢的方法,有需要的朋友們可以參考學(xué)習(xí)下。
    2018-10-10

最新評(píng)論