MySql配置最佳化

來源:互聯網
上載者:User

標籤:

MySQL 配置:

 

1、使用 innodb_flush_method=O_DIRECT 來避免寫的時候出現雙緩衝區。

 

2、避免使用 O_DIRECT 和 EXT3 檔案系統 — 這會把所有寫入的東西序列化。

 

3、分配足夠 innodb_buffer_pool_size ,來將整個InnoDB 檔案載入到記憶體 — 減少從磁碟上讀。

 

4、不要讓 innodb_log_file_size 太大,這樣能夠更快,也有更多的磁碟空間 — 經常重新整理有利降低發生故障時的恢復。

 

5、不要同時使用 innodb_thread_concurrency 和 thread_concurrency 變數 — 這兩個值不能相容。

 

6、為 max_connections 指定一個小的值 — 太多的串連將耗盡你的RAM,導致整個MySQL伺服器被鎖定。

 

7、保持 thread_cache 在一個相對較高的數值,大約是 16 — 防止開啟串連時候速度下降。

 

8、使用 skip-name-resolve — 移除 DNS 尋找。

 

9、如果你的查詢重複率比較高,並且你的資料不是經常改變,請使用查詢快取 — 但是,在經常改變的資料上使用查詢快取會對效能有負面影響。

 

10、增加 temp_table_size — 防止磁碟寫。

 

11、增加 max_heap_table_size — 防止磁碟寫。

 

12、不要將 sort_buffer_size 的值設定的太高 — 可能導致串連很快耗盡所有記憶體。

 

13、監控 key_read_requests 和 key_reads,以便確定 key_buffer 的值 — key 的讀需求應該比 key_reads 的值更高,否則使用 key_buffer 就沒有效率了。

 

14、設定 innodb_flush_log_at_trx_commit = 0 可以提高效能,但是保持預設值(1)的話,能保證資料的完整性,也能保證複製不會滯後。

 

15、有一個測試環境,便於測試你的配置,可以經常重啟,不會影響生產環境。

 

 

MySql配置最佳化

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.