InnoDB MyISAM MEMORY存储引擎

1 innodb 存储引擎

              innodb储存引擎是MYSQL数据库的一种存储引擎。Innodb给MYSQL的表提供了事务、回滚、崩溃修复能力和多版本并发控制的事务安全。InnoDB是MySQL上第一个提供外键约束的表引擎。而且InnoDB对事务处理能力,也是MySQL其它存储引擎无法比拟的。

              InnoDB存储引擎中支持自动增长列AUTO_INCREMENT。自动增长列的值不能为空,且值必须唯一。MySQL中规定自增列必须是主键。在插入值时,如果自增序列不插入值,则插入后的值为自动增长后的值。如果输入的值为0或者为NULL,则插入后的值为自动增长后的值。如果插入某个确定的值,且该值在前面没有出现过,则可以直接插入。

            InnoDB存储引擎中支持外键(FOREIGN KEY)。外键所在的表为子表,外键所依赖的表为父表。父表中被子表关联的字段应该为主键。当删除、更新父表的某条信息使,子表也必须有相应的更新。

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

           InnoDB存储引擎的优势在于提供了良好的事务管理、崩溃修复能力和并发控制。缺点是其读写效率稍差,占用的数据空间相对比较大。

 

2 MyISAM 存储引擎

         MyISAM储存引擎是基于ISAM存储引擎发展起来的。MyISAM存储引擎的表存储成3个文件。文件的名称与表名称相同。扩展名包括frm、MYD、MYI。其中frm为扩展名的文件存储表的结构;MYD为扩展名的文件存储数据,其实是MYData的缩写;MYI为扩展名的文件存储索引,其实MYIndex的缩写。

       基于MyISAM存储引擎的表支持3种不同的存储格式。包括静态型、动态型和压缩型。其中,静态型是MyISAM存储引擎的默认存储格式,其字段是固定长度的;动态型包含变长字段,记录的长度不是固定的;压缩型需要使用myisampack工具创建,占用的磁盘空间较小。

       MyISAM存储引擎的优势在于中用空间小,处理速度快。缺点是不支持事务的完整性和并发型。

3 MEMORY 存储引擎

      MEMORY存储引擎是MySQL中的一类特殊的存储引擎。其使用存储在内存中的内容来创建表,而且所有的数据也都是放在内存中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值