mysql存储引擎

                         08-mysql存储引擎

----存储引擎简单介绍

(1)innoDB 引擎

     innoDBmysql的一种存储引擎。innodbmysql的表提供了事务日志,回滚、崩溃修复能力和多版本号并发控制的事务安全。

Mysql3.23.34a開始包括innoDB存储引擎.

        innoDB是第一个提供外键约束的表引擎,并且innoDB拥有对事务处理的能力。

也是其他引擎无法与之抗衡的。

        innodb支持自己主动增长列使用auto_increment,自己主动增长列不值不能为空

        innodb 存储引擎中支持外键Z(foreign key),外键所在的表为子表,外键所依赖的表为父母,父表中的被子表外检关联的字

段必须是主键,当删除、更新父表的某条信息时。字表也必须有对应的改变,

        innodb存储引擎中,创建表的表结构存储在.frm文件里,数据和索引存储在innodb_data_home_dir innodb_data_file_path定义的表空间.

数据文件:*.myd
索引文件:*.myi
表定义文件:*.frm

       Inoodb存储引擎的优缺点:

优势:在于提供了良好的事务管理、崩溃、修复能力和并发控制,

缺点:是其读写效率稍差。占用的数据空间相对照较大.

 

 

(2)MyISAM引擎

   MyISAM存储表分为3个文件,文件与表名同样,扩展包含frm,MYDMYI

Frm 为扩展名的文件存储表的结构

MYD 为扩展名的文件存储数据

MYI  为扩展名的文件存储索引

  长处:占用空间小,处理速度快

  缺点: 不支持事务日志的完整性和并发性

  

 

(3)MEMORY 引擎

   Mysql中的特殊引擎,所有的数据所有存放于内存其中。在企业生产环境其中。差点儿

是用不到。

由于数据存储在内存。假设内存出现异常。将影响数据的完整性。

 长处:存储速度快

 缺点:缺乏稳定性和完整性

 

----存储引擎查看

存储引擎是Mysql的特点。Mysql能够选择多种存储引擎及不同的存储方式,是否进行事物处理等。

(1)、查询Mysql支持的引擎

Mysql->show engines;

Mysql->show enginesG;    +G和不加G两种不同的显示方式。

 

 

 

(2)、查询Mysql支持引擎的信息

Mysql->show variables like have%

 

第一列:Variable_name 表示存储引擎的名称。

第二列:Value 表示Mysql的支持情况,YES表示支持,NO表示不支持

DISABLED表示支持可是有开启。

 

(3)、查询Mysql默认存储引擎

Mysql-> show variables like 'storage_engine';

 假设想改动存储引擎,能够在 my.ini中进行改动

Default-storage-engine=引擎类型

----怎样选择存储引擎

     在企业生产环境中。选择一个款合适的存储引擎是一个非常复杂的问题。每一种存储引擎都有各自的优势,不能笼统的说,谁比谁好。
通经常使用的比較多的是
innodb存储引擎

版权声明:本文博主原创文章。博客,未经同意不得转载。

原文地址:https://www.cnblogs.com/lcchuguo/p/4868943.html