Unknown/unsupported storage engine: InnoDB網路上常見建議「將 InnoDB 改為 MyISAM」,但這是治標不治本。InnoDB 是現代 MySQL 核心引擎,支援事務、行級鎖、外鍵,**不應輕易捨棄**。
參考 StackOverflow 討論,錯誤實為 記憶體不足導致 InnoDB 無法分配緩衝池。Windows 服務啟動時,InnoDB 依配置參數(innodb_buffer_pool_size、innodb_log_buffer_size、執行緒堆疊等)預分配記憶體。若實體記憶體 + 虛擬記憶體不足,InnoDB 初始化失敗,報錯「unsupported storage engine」。
「並發連接數 = 500」會衍生大量執行緒堆疊與連接緩衝區,加劇記憶體壓力。
my.ini):innodb_buffer_pool_size = 128M # 視記憶體而定,建議 50-70%innodb_log_buffer_size = 8Mthread_stack = 192Knet start mysql
# 或
mysqld --console -- 直接前景執行觀察錯誤輸出
調整後服務順利啟動,錯誤消失。