1. 程式人生 > >mysql 案例 ~ 瘦身mysql系列(1)

mysql 案例 ~ 瘦身mysql系列(1)

無法 得到 failure 不為 max eve innodb 大表 默認值

一 簡介:這一系列我們要進行如何瘦身mysql

二 目的:通過提高CPU利用率和節約成本,降低數據庫容量及I/O負載,從而使數據吞吐率得到顯著提高

三 方法:

利用innodb的COMPRESSED

四 如何開啟

第一,mysql的版本需要大於5.5,mysql系統表是無法進行壓縮的
第二,設置innodb_file_format=barracuda
第三,create table或者alter talble 增加 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;(默認的key_block_size=16)

五 對於現有的表如何進行轉化壓縮

alter table test KEY_BLOCK_SIZE=8; 默認是16,數值越小壓縮率越高,但是解壓所消耗的資源率越高

六 目標:

1 針對 數據短時間用不到而且需要保留的大表,可以進行壓縮和處理->冷表

2 針對 只有單一insert和select業務的大表,考慮進行壓縮和處理

3 針對 頻繁業務的大表,不推薦進行壓縮處理,可能會影響並發

七 相關參數

innodb_compression_level:決定壓縮程度的參數 如果你設置比較大,那麽壓縮比較多,耗費的CPU資源也較多;相反,如果設置較小的值,那麽CPU占用少。默認值6,可以設置0-9
innodb_compression_failure_threshold_pct:默認值5,範圍0到100.設置中斷點避免高昂的壓縮失敗率。
innodb_compression_pad_pct_max:指定在每個壓縮頁面可以作為空閑空間的最大比例,該參數僅僅應用在設置了innodb_compression_failure_threshold_pct不為零情況下,並且壓縮失敗率通過了中斷點。默認值50,可以設置範圍是0到75.

mysql 案例 ~ 瘦身mysql系列(1)