一次將一張表從 MyISAM 修改為 InnoDB 可能會很乏味。以下的文章提供了一個全面的解決方案,可以使用 SQL 將資料庫中的所有 MyISAM 表快速轉換為 InnoDB。
要實現此批次轉換,請執行下列 SQL 語句:
SET @DATABASE_NAME = 'name_of_your_db'; SELECT CONCAT('ALTER TABLE `', table_name, '` ENGINE=InnoDB;') AS sql_statements FROM information_schema.tables AS tb WHERE table_schema = @DATABASE_NAME AND `ENGINE` = 'MyISAM' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name DESC;
確保將 name_of_your_db替換為您的名稱
執行上面的SQL語句後,輸出將提供將每個MyISAM表轉換為InnoDB的SQL語句清單。將這些語句複製到新的 SQL 查詢視窗中並執行它們。這將為資料庫中的所有 MyISAM 表執行轉換。
InnoDB 相對於 MyISAM具有多個優勢,包括:
以上是如何將MySQL中的所有MyISAM表批量轉換為InnoDB?的詳細內容。更多資訊請關注PHP中文網其他相關文章!