本人安装mysql版本为:mysql Ver 14.14 Distrib 5.7.18, for Win64 (x86_64),查看mysql的版本号方式:cmd--》mysql --version 将会显示出mysql的版本。
1、什么是数据库存储引擎?
存储引擎是mysql数据库管理系统的一个重要特征,在具体开发时,为了提高mysql的数据库管理系统的使用效率和灵活性,可以根据具体的实际需要来选择不同的数据库引擎,因为存储引擎指定了表的类型,即如何存储和索引数据,是否支持事务等,同时存储引擎也决定了表在计算机中的存储方式。
2、查看存储引擎:show engines;
2.1)打开cmd框,登录mysql数据库,如果命令行运行的是本机mysql,登录方式 mysql -uroot -p,再次输入password:即可进入mysql数据库
2.2) 查看数据库存储引擎,直接输入命令 show engines; 命令后面一定要加“;”,代表着此语句已编写完成,在之后“回车”即可,cmd框运行命令得出结果看起来不是很清楚,如下:
2.3)采用cmd框运行结果看起来不清楚,因此建议使用连接Mysql的一个图形化界面工具“navicat”,进行查询,打开“navicat”,选中某一个数据库,点击“查询”--"新建查询",进入“查询编辑器”输入命令,结果显示查如下:
根据show engines出现的信息查看可得知,默认的数据库存储引擎为INNODB,可支持的引擎为MYISAM、 MEMORY等。
3、存储引擎的特性详解;
4、创建存储引擎;
4.1)创建表时一般都会指定数据库的存储引擎,具体方式如下:
create table if not exists teachera( id int UNSIGNED not null auto_increment PRIMARY KEY, #unsigned:代表着int给定的值不能为负数,auto_increment:给定的值自动增长,PRIMARY KEY:指定id为主键 name char(6), tel VARCHAR(6) ) engine = MyISAM charset=utf8; #engine = innodb指定了新建的表teachera的引擎为MYISAM
4.2)查看已建表的存储引擎
将表的存储引擎指定之后,具体的查看表引擎,可进入cmd框运行命令进行查看,查看的结果显示较为清晰,首先登录数据库方式如(2.1)介绍)进入,直接输入命令:show create table teachera,如下:
4.3)修改已建表之后的存储引擎方式,命令为:
alter table teachera engine = INNODB;
修改表之后进行查看存储引擎,已修改成功
5、常用的三种存储引擎的对比;
MyISAM存储引擎:由于该存储引擎不支持事务、也不支持外键,所以访问速度比较快,因为对事务完整性没有要求并以访问为主的应用适合使用该引擎。
INNODB存储引擎: 由于该引擎在事务上具有优势,即支持具有提交、回滚和崩溃恢复能力的事务安装,所以比MyISAM存储引擎占用的更多的磁盘空间,因此需要进行频繁的更新、删除操作,同时对事务的完整性要求比较高,需要实现并发控制,此时适合使用该引擎。
MEMORY存储引擎:该存储引擎使用内存来存储数据,因此该存储引擎的数据访问速度快,但是安全上没有保障,如果应用中涉及的数据比较小,需要进行快速访问,则适合使用该引擎