MySQL中myisam轉(zhuǎn)innodb的案例圖文說明教程
發(fā)表時間:2023-08-26 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]myisam轉(zhuǎn)innodb就是要修改表的存儲引擎了這個如果不按標(biāo)準(zhǔn)方法來修改myisam轉(zhuǎn)innodb那么可能導(dǎo)致數(shù)據(jù)庫損壞及數(shù)據(jù)丟失問題了,下面我們來看正確的myisam轉(zhuǎn)innodb方法。<script>ec(2);</script>這里簡單的介紹一下兩者間的區(qū)別和轉(zhuǎn)換...
myisam轉(zhuǎn)innodb就是要
修改表的存儲引擎了這個如果不按標(biāo)準(zhǔn)方法來修改myisam轉(zhuǎn)innodb那么可能導(dǎo)致數(shù)據(jù)庫損壞及數(shù)據(jù)丟失問題了,下面我們來看正確的myisam轉(zhuǎn)innodb方法。
<script>ec(2);</script>
這里簡單的介紹一下兩者間的區(qū)別和轉(zhuǎn)換方法:
MyISAM:MyISAM是MySQL5.5之前版本默認(rèn)的數(shù)據(jù)庫存儲引擎。MYISAM提供高速存儲和檢索,以及全文搜索能力,適合數(shù)據(jù)倉庫等查詢頻繁的應(yīng)用。但不支持事務(wù)、也不支持外鍵。MyISAM格式的一個重要缺陷就是不能在表損壞后恢復(fù)數(shù)據(jù)。
InnoDB:InnoDB是MySQL5.5版本的默認(rèn)數(shù)據(jù)庫存儲引擎,不過InnoDB已被Oracle收購,MySQL自行開發(fā)的新存儲引擎Falcon將在MySQL6.0版本引進(jìn)。InnoDB具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但是比起MyISAM存儲引擎,InnoDB寫的處理效率差一些并且會占用更多的磁盤空間以保留數(shù)據(jù)和索引。盡管如此,但是InnoDB包括了對事務(wù)處理和外來鍵的支持,這兩點都是MyISAM引擎所沒有的。
MyISAM適合:(1)做很多count 的計算;(2)插入不頻繁,查詢非常頻繁;(3)沒有事務(wù)。
InnoDB適合:(1)可靠性要求比較高,或者要求事務(wù);(2)表更新和查詢都相當(dāng)?shù)念l繁,并且表鎖定的機(jī)會比較大的情況。(4)性能較好的服務(wù)器,比如單獨的數(shù)據(jù)庫服務(wù)器,像阿里云的關(guān)系型數(shù)據(jù)庫RDS就推薦使用InnoDB引擎。
MySQL一般提供多種存儲引擎,可以通過執(zhí)行以下指令查看:
首先進(jìn)入MySQL命令行模式
查看MySQL提供什么存儲引擎:
mysql> show engines;
查看MySQL當(dāng)前默認(rèn)的存儲引擎:
mysql> show variables like '%storage_engine%';
查詢wpsql庫
mysql> use wpsql;
列出當(dāng)前庫所有表名
mysql> show tables;
你要看wp_posts表用了什么引擎(在顯示結(jié)果里參數(shù)engine后面的就表示該表當(dāng)前用的存儲引擎):
mysql> show create table wp_posts;
將wp_posts表修為InnoDB存儲引擎(也可以此命令將InnoDB換為MyISAM):
mysql> ALTER TABLE wp_posts ENGINE=INNODB;
如果要更改整個數(shù)據(jù)庫表的存儲引擎,一般要一個表一個表的修改,比較繁瑣,可以采用先把數(shù)據(jù)庫導(dǎo)出,得到SQL,把MyISAM全部替換為INNODB,再導(dǎo)入數(shù)據(jù)庫的方式。
轉(zhuǎn)換完畢后重啟mysql
> service mysqld restart
以上就是MySQL中myisam轉(zhuǎn)innodb的實例教程的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識。