Mysql引擎MyIsam與InnoDB的區(qū)別

2016年1月11日12:36:11 發(fā)表評論 3,941 ℃

mysql采用MYISAM引擎的數(shù)據(jù)表A,會有如下文件:

A.frm【存儲表定義,表字段等等】

A.MYD【存儲數(shù)據(jù)】

A.MYI【存儲索引】

mysql采用InnoDB引擎的數(shù)據(jù)表B,會有如下文件:

B.frm文件

B.ibd 或 .ibdata

idb或.ibdata這兩種文件都是存放innodb數(shù)據(jù)的文件

獨享表空間存儲方式使用.ibd文件,并且每個表一個ibd文件

共享表空間存儲方式使用.ibdata文件,所有表共同使用一個ibdata文件(所有表是指這個服務(wù)器上所有庫的所有使用INNODB引擎的表)

從這個2中引擎的文件方式中就可以看出,如果用戶數(shù)據(jù)庫出現(xiàn)問題,我們采用直接拷貝表文件的方式去操作數(shù)據(jù)庫,前提必須是這些表都采用MYISAM引擎。

查看MySQL是否支持InnoDB引擎以及不支持的解決辦法

通過命令行進(jìn)入mysql或者是通過phpmyadmin進(jìn)行操作,執(zhí)行如下命令:

SHOW variables like "have_%"

顯示結(jié)果中會有如下3種可能的結(jié)果:

have_innodb YES 已經(jīng)開啟InnoDB引擎

have_innodb NO  未安裝InnoDB引擎

have_innodb DISABLED  未啟用InnoDB引擎

針對第二種未安裝,只需要安裝即可;針對第三種未啟用,則打開mysql配置文件,找到 skip-innodb項,將其改成#skip-innodb,之后重啟mysql服務(wù)即可。

【騰訊云】云服務(wù)器、云數(shù)據(jù)庫、COS、CDN、短信等云產(chǎn)品特惠熱賣中

發(fā)表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: