Innodb
Innodb_buffer_pool 大小的 75% RAM
我已經閱讀了許多文件,包括 percona 和 MariaDB 文件,他們建議將 innodb_buffer_pool_size 設置為 RAM 的 70-80%。我的問題是,是總 RAM 還是可用 RAM?例如,當我在 CentOS-6.5 上執行 free -m 時,我得到以下資訊:
[root@master5 ~]# free -m total used free shared buffers cached Mem: 19991 999 10992 0 38 92 -/+ buffers/cache: 867 19123 Swap: 1999 0 1999
那麼是 19991 的 75-80% 還是 10992 的 75-80%?
總計,但請記住,這只是一個經驗法則。設置值時使用常識。InnoDB 確實喜歡盡可能多的記憶體,但有幾件事需要考慮:
確保有足夠的 RAM 剩餘用於需要在伺服器上執行的所有其他內容
請記住,InnoDB 緩衝池的目的是處理數據的正常工作集。您的數據庫總量有多大,包括一些增長因素?沒有必要設置更多的緩衝池,即使你有 RAM。但是您的工作數據集(日常活動中使用的數據)通常小於數據庫的總大小。為了獲得最佳性能,它真的需要在 RAM 中保留多少?