Mysql
如何決定是否使用 InnoDB 啟用 MySQL 查詢記憶體
在僅使用 InnoDB 表的伺服器上,應該如何決定啟用/禁用 MySQL 查詢記憶體。比如說,如果啟用了記憶體,那麼應該如何輸出:
SHOW STATUS LIKE 'Qcache%';
被解釋做出決定?或者可以執行哪些其他查詢/分析來獲取更多資訊,然後應該如何解釋這些資訊?如果要啟用,它的大小應該如何確定?我在 Amazon RDS 上,使用 MySQL 5.6。我最終將成為大約 250 個獨立的數據庫,總空間約為 200gb。
SHOW GLOBAL STATUS;
然後計算這些(無論是使用 MyISAM 還是 InnoDB):
Qcache_lowmem_prunes / Uptime
– QC 被修剪的頻率 – 超過 15/秒錶示開啟 QC 有很多成本。Qcache_not_cached / Uptime
– 記憶體嘗試失敗(每秒)。> 40 可能很糟糕。Qcache_not_cached / (Qcache_hits + Com_select + Qcache_not_cached)
– 其中的百分比SELECTs
沒有記憶體在 QC 中 – >30% 意味著 QC 不是很有用。Qcache_hits / Qcache_inserts
– 命中插入比 – > 10 是可取的