Mysql

如何決定是否使用 InnoDB 啟用 MySQL 查詢記憶體

  • February 2, 2015

在僅使用 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 是可取的

引用自:https://dba.stackexchange.com/questions/63415