MySQL修改数据表存储引擎的3种方法介绍

看你的mysql如今已提供什么存储引擎:
mysql> show engines;

看你的mysql当前默认的存储引擎:
mysql> show variables like '%storage_engine%';

你要看某个表用了什么引擎(在显示结果里参数engine后面的就表示该表当前用的存储引擎):
mysql> show create table 表名;

MySQL做为最经常使用的数据库,常常遇到各类各样的问题。今天要说的就是表存储引擎的修改。有三种方式,列表以下。mysql

1.真接修改。在数据多的时候比较慢,并且在修改时会影响读取性能。my_table是操做的表,innoDB是新的存储引擎。sql

复制代码代码以下:
ALTER TABLE my_table ENGINE=InnoDB

 

2.导出,导入。这个比较容易操做,直接把导出来的sql文件给改了,而后再导回去。用mysqldump ,枫哥经常使用的是navicate那样更容易上手。友情提醒风险较大。数据库

3.建立,插入。这个比第一种速度快, 安全性比第二种高,推荐。分2步操做安全

a.建立表,先建立一个和要操做表同样的表,而后更改存储引擎为目标引擎。    性能

复制代码代码以下:

CREATE TABLE my_tmp_table LIKE my_table;
ALTER TABLE my_tmp_table ENGINE=InnoDB;

b.插入。为了安全和速度,最好加上事务,并限制id(主键)范围。
复制代码代码以下:
INSERT INTO my_tmp_table SELECT * FROM my_table;
相关文章
相关标签/搜索