>  기사  >  데이터 베이스  >  三种方式修改数据库的引擎_MySQL

三种方式修改数据库的引擎_MySQL

WBOY
WBOY원래의
2016-06-01 13:38:241332검색

bitsCN.com

三种方式修改数据库的引擎

 

1.直接alter table

Sql代码  

ALTER TABLE youTable ENGINE=InnoDB;  

这种方式最简单,但是对于大数据的表会消耗很长时间,因为MySQL要执行旧表到新表的逐行复制。而且alter table操作不管哪种引擎,MySQL都会锁整个表。

     

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。 

bitsCN.com
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.