MYSQL,数据库存储引擎!

Posted Syw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL,数据库存储引擎!相关的知识,希望对你有一定的参考价值。

本人安装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存储引擎:该存储引擎使用内存来存储数据,因此该存储引擎的数据访问速度快,但是安全上没有保障,如果应用中涉及的数据比较小,需要进行快速访问,则适合使用该引擎

 

以上是关于MYSQL,数据库存储引擎!的主要内容,如果未能解决你的问题,请参考以下文章

使用Merge存储引擎实现MySQL分表

(转)Mysql存储引擎__笔记

查看和修改MySQL数据库表存储引擎

查看和改动MySQL数据库表存储引擎

2022-09-11 mysql列存储引擎-宣讲-第二讲-一条SQL在Tianmu引擎中的运行

浅谈MySql的存储引擎(表类型) (转)