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;
相關文章
相關標籤/搜索