三種方式修改數據庫的引擎 1.直接alter table Sql代碼 ALTER TABLE youTable ENGINE=InnoDB; 這種方式最簡單,但是對於大數據的表會消耗很長時間,因為MySQL要執行舊表到新表的逐行復制。而且alter table操作不管哪種引擎,MySQL都會鎖整個表。 www.2cto.com 2.利用dump和source 首先dump需要的表,然後修改dump文件,去掉DROP TABLE修改CREATE TABLE代碼,執行source。 這種方式不能在線修改引擎,需要讓數據庫下線;或者在線修改後進行同步。 3.利用CREATE和SELECT Sql代碼 CREATE TABLE myTableCopy LIKE myTable; ALTER TABLE myTableCopy ENGINE=InnoDB; INSERT INTO myTableCopy SELECT * FROM myTable WHERE id BETWEEN x AND y; 這種方式時候表的數據量比較大的情況,可以分批根據范圍倒入,不會鎖myTable。