这里以mysam表修改为innodb为例:
这里有两种方式,各自有优缺点:
1,数据量不太大的时候
ALTER TABLE   table engine=InnoDB; (注意InnoDB的大小写)
优点: 简单,好记;
缺点: 数据量大时会很慢;

2,数据量比较大可以用这种方式 (这里以表t为例),简单理解就是想把数据导入到一个临时的innoDb表,在把原来的表替换掉
a)先创建一个临时表   create table t_tmp  like  t;
b)alter  table  t_tmp   engine=InnoDB; (这个就是方法一的做法)
c)insert  into   t_tmp select * from t
d)  drop table  t;
e)  alter table t_tmp  rename to t   (修改表名)
优点:数据量大时候想读快一点。
缺点:步骤太多

如何批量修改:可以把表donw出来,换掉引擎在重新导入
 


 

09-17 09:06