mysql inno優化配置方法

2021-06-04 01:28:55 字數 1665 閱讀 1332

innodb_buffer_pool_size:這是innodb最重要的設定,對innodb效能有決定性的影響。預設的設定只有8m,所以預設的資料庫設定下面innodb效能很差。在只有innodb儲存引擎的資料庫伺服器上面,可以設定60-80%的記憶體。更精確一點,在記憶體容量允許的情況下面設定比innodb tablespaces大10%的記憶體大小。

innodb_data_file_path:指定表資料和索引儲存的空間,可以是乙個或者多個檔案。最後乙個資料檔案必須是自動擴充的,也只有最後乙個檔案允許自動擴充。這樣,當空間用完後,自動擴充資料檔案就會自動增長(以8mb為單位)以容納額外的資料。例如: innodb_data_file_path=/disk1/ibdata1:900m;/disk2/ibdata2:50m:autoextend兩個資料檔案放在不同的磁碟上。資料首先放在ibdata1中,當達到900m以後,資料就放在ibdata2中。一旦達到50mb,ibdata2將以8mb為單位自動增長。如果磁碟滿了,需要在另外的磁碟上面增加乙個資料檔案。

innodb_data_home_dir:放置表空間資料的目錄,預設在mysql的資料目錄,設定到和mysql安裝檔案不同的分割槽可以提高效能。

innodb_log_file_size:該引數決定了recovery speed。太大的話recovery就會比較慢,太小了影響查詢效能,一般取256m可以兼顧效能和recovery的速度

。innodb_log_buffer_size:磁碟速度是很慢的,直接將log寫道磁碟會影響innodb的效能,該引數設定了log buffer的大小,一般4m。如果有大的blob操作,可以適當增大。

innodb_flush_logs_at_trx_commit=2: 該引數設定了事務提交時記憶體中log資訊的處理。

1) =1時,在每個事務提交時,日誌緩衝被寫到日誌檔案,對日誌檔案做到磁碟操作的重新整理。truly acid。速度慢。

2) =2時,在每個事務提交時,日誌緩衝被寫到檔案,但不對日誌檔案做到磁碟操作的重新整理。只有作業系統崩潰或掉電才會刪除最後一秒的事務,不然不會丟失事務。

3) =0時, 日誌緩衝每秒一次地被寫到日誌檔案,並且對日誌檔案做到磁碟操作的重新整理。任何mysqld程序的崩潰會刪除崩潰前最後一秒的事務

innodb_file_per_table:可以儲存每個innodb表和它的索引在它自己的檔案中。

transaction-isolation=read-comitted: 如果應用程式可以執行在read-commited隔離級別,做此設定會有一定的效能提公升。

innodb_flush_method: 設定innodb同步io的方式:

1) default – 使用fsync()。

2) o_sync 以sync模式開啟檔案,通常比較慢。

3) o_direct,在linux上使用direct io。可以顯著提高速度,特別是在raid系統上。避免額外的資料複製和double buffering(mysql buffering 和os buffering)。

innodb_thread_concurrency: innodb kernel最大的執行緒數。

1) 最少設定為(num_disks+num_cpus)*2。

2) 可以通過設定成1000來禁止這個限制

Innodb IO優化 配置優化

對於資料庫來講大多瓶頸都出現在io問題上,所以現在ssd類的裝置也才能大行其道。那資料庫的io這塊有什麼可以優化的嗎?我這裡大致談一下我的看法,希望能達到乙個拋磚引玉的效果。這裡談一下資料庫本身的配置方面 具體如下 配置方面對於io優化的原則 盡可能能快取,減少讀對資料庫的隨機io的請求 同時減少寫...

mysql配置優化 MySQL配置效能優化

下面配置的優化,可能影響比較大,可能可以顯著提高讀寫效能。1 mysql一些主要配置項介紹 innodb buffer pool size 這是你安裝完innodb後第乙個應該設定的選項。緩衝池是資料和索引快取的地方 這個值越大越好,這能保證你在大多數的讀取操作時使用的是記憶體而不是硬碟。如果是純資...

mysql server 配置優化

mysql伺服器的後台管理程式,要想使用客戶端程式,該程式必須執行,因為客戶端通過連線伺服器來訪問資料庫。下面讓我們以伺服器的系統變數和狀態變數為根據,優化我們的mysql資料庫服務。在這之前,我們需要掌握以下方法 檢視mysql狀態及變數的方法 mysql show status 顯示狀態資訊 擴...