国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Mysql 的引擎類型MyISAM、InnoDB介紹及變更

2019-11-09 13:30:31
字體:
來源:轉載
供稿:網友
nnoDB和MyISAM是許多人在使用MySQL時最常用的兩個表類型,這兩個表類型各有優劣,視具體應用而定。
一、基本的差別為:
1、MyISAM類型不支持事務處理等高級處理,而InnoDB類型支持。2、MyISAM類型的表強調的是性能,其執行數度比InnoDB類型更快,但是不提供事務支持,而InnoDB提供事務支持以及外部鍵等高級數據庫功能。

3、InnoDB不支持FULLTEXT類型的索引。

4、InnoDB 中不保存表的具體行數,也就是說,執行select count(*) from table時,InnoDB要掃描一遍整個表來計算有多少行,但是MyISAM只要簡單的讀出保存好的行數即可。注意的是,當count(*)語句包含 where條件時,兩種表的操作是一樣的。

5、對于AUTO_INCREMENT類型的字段,InnoDB中必須包含只有該字段的索引,但是在MyISAM表中,可以和其他字段一起建立聯合索引。

6、DELETE FROM table時,InnoDB不會重新建立表,而是一行一行的刪除。

7、LOAD TABLE FROM MASTER操作對InnoDB是不起作用的,解決方法是首先把InnoDB表改成MyISAM表,導入數據后再改成InnoDB表,但是對于使用的額外的InnoDB特性(例如外鍵)的表不適用。

  另外,InnoDB表的行鎖也不是絕對的,假如在執行一個SQL語句時MySQL不能確定要掃描的范圍,InnoDB表同樣會鎖全表,例如update table set num=1 where name like “%aaa%”

  兩種類型最主要的差別就是Innodb 支持事務處理與外鍵和行級鎖。而MyISAM不支持.所以MyISAM往往就容易被人認為只適合在小項目中使用。

  作為使用MySQL的用戶角度出發,Innodb和MyISAM都是比較喜歡的,如果數據庫平臺要達到需求:99.9%的穩定性,方便的擴展性和高可用性來說的話,MyISAM絕對是首選。

二、有三種方式可以設定數據庫引擎:
(1)修改配置文件

將安裝目錄下~/MySQL/mysql-5.6.31-winx64的my.int配置文件打開,在[mysqld]的后面修改或添加(如果你之前未設置)下列語句:

而我會自己修改為MyISAM,以后在你創建數據表時默認引擎為當前設置。

(2)創建數據表時聲明

mysql> create table test(      -> id int(10) unsigned not null auto_increment,      -> name varchar(10) character set utf8,      -> age int(10),      -> PRimary key(id)      -> )      -> engine=MyISAM      -> ;  

(3)更改數據表的引擎

數據表的引擎類型,不是一成不變的,可以通過可視化應用如Navicat for Mysql進行修改,也可以通過命令來修改,下面將剛才新建的test表格引擎修改為InnoDB.

alter table test engine=innodb;  


上一篇:PG數據庫工具

下一篇:分區建表1

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 津南区| 咸丰县| 西峡县| 怀远县| 岱山县| 铜陵市| 吴堡县| 林西县| 光泽县| 平泉县| 金湖县| 无极县| 嘉鱼县| 黎城县| 南投县| 兴宁市| 白城市| 铜梁县| 土默特右旗| 方山县| 忻城县| 全州县| 安国市| 延吉市| 凤凰县| 莱州市| 灵川县| 承德县| 什邡市| 垣曲县| 蓬安县| 淮安市| 靖西县| 民和| 石渠县| 通州区| 琼结县| 大港区| 鹤庆县| 郧西县| 昆明市|