婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL 5.6下table_open_cache參數(shù)優(yōu)化合理配置詳解

MySQL 5.6下table_open_cache參數(shù)優(yōu)化合理配置詳解

熱門標簽:凱立德科技館地圖標注 中科嘉智人工智能電銷機器人 上海智能外呼系統(tǒng)需要多少錢 電銷機器人好品牌門薩維l 西安400電話在哪里辦理 甘孜電話機器人廠家 銀川電銷外呼系統(tǒng)定制 做地圖標注都需要什么工具 哈爾濱crm外呼系統(tǒng)價格

1、簡介

table_cache是一個非常重要的MySQL性能參數(shù),它在5.1.3之后的版本中叫做table_open_cache。table_cache主要用于設置table高速緩存的數(shù)量。由于每個客戶端連接都會至少訪問一個表,因此此參數(shù)的值與max_connections有關。
例如,對于 1000 個并行運行的連接,應該讓表的緩存至少有 1000 × N ,這里 N 是應用可以執(zhí)行的查詢的一個聯(lián)接中表的最大數(shù)量。此外,還需要為臨時表和文件保留一些額外的文件描述符。

2、緩存機制

當某一連接訪問一個表時,MySQL會檢查當前已緩存表的數(shù)量。如果該表已經(jīng)在緩存中打開,則會直接訪問緩存中的表已加快查詢速度;如果該表未被緩存,則會將當前的表添加進緩存并進行查詢。

在執(zhí)行緩存操作之前,table_open_cache用于限制緩存表的最大數(shù)目:如果當前已經(jīng)緩存的表未達到table_open_cache,則會將新表添加進來;若已經(jīng)達到此值,MySQL將根據(jù)緩存表的最后查詢時間、查詢率等規(guī)則釋放之前的緩存。每當MySQL訪問一個表時,如果在表緩沖區(qū)中還有空間,該表就被打開并放入其中,這樣可以更快地訪問表內(nèi)容。

3、如何判斷

通過檢查峰值時間的狀態(tài)值Open_tables和Opened_tables,可以決定是否需要增加table_open_cache的值。

如果你發(fā)現(xiàn)open_tables等于table_open_cache,并且opened_tables在不斷增長,那么你就需要增加 table_open_cache的值了(上述狀態(tài)值可以使用SHOW GLOBAL STATUS LIKE ‘Open%tables'獲得)。

注意,不能盲目地把table_open_cache設置成很大的值。如果設置得太高,可能會造成文件描述符不足,從而造成性能不穩(wěn)定或者連接失敗。

Open_tables / Opened_tables >= 0.85

Open_tables / table_cache = 0.95

4、建議

如果開始沒有把握的話,把MySQL數(shù)據(jù)庫放在生產(chǎn)環(huán)境中試運行一段時間,然后把參數(shù)的值調(diào)整得比Opened_tables的數(shù)值大一些,并且保證在比較高負載的極端條件下依然比Opened_tables略大。
在mysql默認安裝情況下,table_cache的值在2G內(nèi)存以下的機器中的值默認時256到 512,如果機器有4G內(nèi)存,則默認這個值是2048,但這決意味著機器內(nèi)存越大,這個值應該越大,因為table_cache加大后,使得mysql對 SQL響應的速度更快了,不可避免的會產(chǎn)生更多的死鎖(dead lock),這樣反而使得數(shù)據(jù)庫整個一套操作慢了下來,嚴重影響性能。所以平時維護中還是要根據(jù)庫的實際情況去作出判斷,找到最適合你維護的庫的 table_cache值。

mysql >flush tables; 可以將open_tables 清零

# service mysqld restart 可以講opened_tables 清零

以下是針對mysql 5.6的說明

table_open_cache指定表高速緩存的大小。每當MySQL訪問一個表時,如果在表緩沖區(qū)中還有空間,該表就被打開并放入其中,這樣可以更快地訪問表內(nèi)容。
通過檢查峰值時間的狀態(tài)值Open_tables和Opened_tables,可以決定是否需要增加table_open_cache的值。
如果你發(fā)現(xiàn)open_tables等于table_open_cache,并且opened_tables在不斷增長,那么你就需要增加table_open_cache的值了(上述狀態(tài)值可通過SHOW GLOBAL STATUS LIKE ‘Open%tables'獲得)。
注意,不能盲目地把table_open_cache設置成很大的值,設置太大超過了shell的文件描述符(通過ulimit -n查看),造成文件描述符不足,從而造成性能不穩(wěn)定或者連接失敗。

測試環(huán)境:騰訊云CDB,內(nèi)存4000M,在控制臺查看到table_open_cache=512,監(jiān)測table_open_cache設置是否合理,是否需要優(yōu)化。

show variables like '%table_open_cache%';

show global status like 'Open%tables';

發(fā)現(xiàn)open_tables等于table_open_cache,都是512,說明mysql正在將緩存的表釋放以容納新的表,此時可能需要加大table_open_cache的值,4G內(nèi)存的機器,建議設置為2048

比較適合的值:

Open_tables / Opened_tables >= 0.85
Open_tables / table_open_cache = 0.95

如果對此參數(shù)的把握不是很準,有個很保守的設置建議:把MySQL數(shù)據(jù)庫放在生產(chǎn)環(huán)境中試運行一段時間,然后把參數(shù)的值調(diào)整得比Opened_tables的數(shù)值大一些,并且保證在比較高負載的極端條件下依然比Opened_tables略大。

您可能感興趣的文章:
  • MySQL 參數(shù)相關概念及查詢更改方法
  • Python連接mysql方法及常用參數(shù)
  • pyMySQL SQL語句傳參問題,單個參數(shù)或多個參數(shù)說明
  • python mysql中in參數(shù)化說明
  • Python MySQLdb 執(zhí)行sql語句時的參數(shù)傳遞方式
  • Python MySQL 日期時間格式化作為參數(shù)的操作
  • 詳解MySql存儲過程參數(shù)的入門使用
  • MySQL修改innodb_data_file_path參數(shù)的一些注意事項
  • MYSQL配置參數(shù)優(yōu)化詳解
  • MySQL性能全面優(yōu)化方法參考,從CPU,文件系統(tǒng)選擇到mysql.cnf參數(shù)優(yōu)化
  • 聊聊MySQL中的參數(shù)

標簽:平頂山 安康 那曲 山南 四川 濮陽 安徽 浙江

巨人網(wǎng)絡通訊聲明:本文標題《MySQL 5.6下table_open_cache參數(shù)優(yōu)化合理配置詳解》,本文關鍵詞  MySQL,5.6下,table,open,cache,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL 5.6下table_open_cache參數(shù)優(yōu)化合理配置詳解》相關的同類信息!
  • 本頁收集關于MySQL 5.6下table_open_cache參數(shù)優(yōu)化合理配置詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 尚志市| 鲜城| 乌兰县| 辽宁省| 会东县| 莎车县| 盘山县| 武宣县| 剑阁县| 哈密市| 商水县| 齐齐哈尔市| 宜都市| 河曲县| 开化县| 缙云县| 西畴县| 唐山市| 鄱阳县| 巧家县| 商都县| 宝坻区| 榆林市| 化州市| 都江堰市| 乌兰县| 彭水| 军事| 白银市| 阿巴嘎旗| 兴山县| 昭苏县| 阳城县| 沙湾县| 岳池县| 湘西| 商城县| 嘉祥县| 盐源县| 娱乐| 耿马|