[mysqld] default-storage-engine = MYISAM default-tmp-storage-engine = MYISAM # 5.6 新增,臨時表也用 MyISAM skip-innodb # 5.5/5.6 生效
重啟後驗證:
# 僅供參考,生產環境請勿嘗試 [mysqld] default-storage-engine = MYISAM default-tmp-storage-engine = MYISAM skip-innodb loose-innodb-trx = 0 loose-innodb-locks = 0 loose-innodb-lock-waits = 0 loose-innodb-cmp = 0 loose-innodb-cmp-per-index = 0 loose-innodb-cmp-per-index-reset = 0 loose-innodb-cmp-reset = 0 loose-innodb-cmpmem = 0 loose-innodb-cmpmem-reset = 0 loose-innodb-buffer-page = 0 loose-innodb-buffer-page-lru = 0 loose-innodb-buffer-pool-stats = 0 loose-innodb-metrics = 0 loose-innodb-ft-default-stopword = 0 loose-innodb-ft-inserted = 0 loose-innodb-ft-deleted = 0 loose-innodb-ft-being-deleted = 0 loose-innodb-ft-config = 0 loose-innodb-ft-index-cache = 0 loose-innodb-ft-index-table = 0 loose-innodb-sys-tables = 0 loose-innodb-sys-tablestats = 0 loose-innodb-sys-indexes = 0 loose-innodb-sys-columns = 0 loose-innodb-sys-fields = 0 loose-innodb-sys-foreign = 0 loose-innodb-sys-foreign-cols = 0
| 版本 | 啟用 InnoDB | 禁用 InnoDB (MyISAM) | 備註 |
|---|---|---|---|
| 5.5 | ~400MB+ | ~50MB | Buffer Pool 預設 128MB |
| 5.6 | ~500MB+ | ~60MB | 新增幾十個系統表 |
| 8.0 | ~800MB+ | 不可行 | Data Dictionary 強制 InnoDB |
default-storage-engine=MYISAM; skip-innodbinnodb_buffer_pool_size=32M 極小化記憶體mysqlhotcopy/cp -r(需鎖表),InnoDB 用 xtrabackup/mysqldump --single-transactionMySQL 5.5/5.6 可用 skip-innodb + default-storage-engine=MYISAM 徹底禁用 InnoDB,節省 ~80% 記憶體。MySQL 8.0 系統表強制 InnoDB,**禁用不現實**,請接受 InnoDB 並調小 Buffer Pool。選擇引擎本質是業務需求與資源預算的權衡。