您的位置:首页 > 数据库 > MySQL

mysql的存储引擎分析

2014-12-29 10:34 351 查看
mysql数据库存储引擎有:MRG_MYISAM,MyISAM,BLACKHOLE,CSV,MEMORY,ARCHIVE,InnoDB等。



命令查看当前mysql支持的存储引擎:show engines



查看某个表的存储引擎:show table status from db_name where name='table_name'

MRG_MYISAM:也就是MERGE存储引擎,其基本表类型必须是MyISAM,用法可参考:http://www.linuxidc.com/Linux/2012-08/67797.htm

MyISAM:mysql默认存储引擎,执行大量的select时优选,不提供事务支持,每个MyISAM在磁盘上存储成三个文件,文件名都和表名相同,扩展名分别是.frm(存储表定义)、.MYD(MYData,存储数据)、.MYI(MYIndex,存储索引)。

BLACKHOLE:黑洞引擎。

CSV: 该引擎有点类似Oracle的外部表。它可以将“逗号分隔值(CSV)文件”作为表进行处理,但不支持在这种文件上建立相关索引。在服务器运行中,这种引擎支持从数据库中拷入/拷出CSV文件。如果从电子表格软件输出一个CSV文件,将其存放在MySQL服务器的数据目录中,服务器就能够马上读取相关的CSV文件。同样,如果写数据库到一个CSV表,外部程序也可以立刻读取它。在实现某种类型的日志记录时,CSV表作为一种数据交换格式,特别有用。此段文字来自:http://blog.csdn.net/wzy0623/article/details/8168386

MEMORY:将表的数据存放在内存中,详解可参考:http://www.cnblogs.com/wu-jian/archive/2011/11/29/2267795.html

ARCHIVE:只支持insert和select操作,使用场景:归档数据、日志信息(系统功能模块访问日志)。

InnoDB:提供事务支持事务,外部键等高级数据库功能,数据执行大量的INSERT或UPDATE时适合采用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql