码迷,mamicode.com
首页 > 数据库 > 详细

数据库存储引擎

时间:2014-10-22 10:00:22      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:blog   http   os   ar   使用   for   sp   文件   数据   

MySQL中提到了存储引擎这个概念。简而言之,存储引擎就是表的类型。数据库的存储引擎决定了表在计算机中的存储方式。

SHOW ENGINES语句可以查看MySQL数据库支持的存储引擎。

InnoDB存储引擎

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

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

       InnoDB创建的表的结构存储在.frm文件中。

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

MyISAM存储引擎

       MyISAM曾经是MySQL的默认存储引擎。它将表存储成为3个文件。文件的名字与表的名字相同。扩展名包括frm,NYD,MYI。其中frm文件存储表的结构;NYD文件存储表的数据;MYI文件存储表的索引。

       它的优点是占用空间小,处理速度快。缺点是不支持事务的完整性和并发性。

Memory存储引擎

       使用存储在内存中的内容来创建表,而且所有数据也放在内存中。每个基于MEMORY存储引擎的表实际对应一个磁盘文件。该文件的文件名与表名相同,类型为frm类型。该文件值存储表的结构。而其数据文件,都是存储在内存中的。这样有利于数据的快速处理,提高整个表的处理效率。服务器要有足够的内存来为止MEMORY存储引擎表的使用。

       MEMORY存储引擎默认使用HASH索引。其速度要比B树快。

 
分类: MySQL

数据库存储引擎

标签:blog   http   os   ar   使用   for   sp   文件   数据   

原文地址:http://www.cnblogs.com/php-rearch/p/4042203.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!