MariaDB数据库存储引擎详解选编.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MariaDB数据库存储引擎详解选编

MariaDB数据库存储引擎详解 在看MariaDB的存储引擎之前,可以先了解MySQL存储引擎。 MySQL常用的存储引擎: MyISAM存储引擎:是MySQL的默认存储引擎。MyISAM不支持事务、也不支持外键,但其访问速度快,对事务完整性没有要求。? MyISAM表还支持3中不同的存储格式:? 1 静态表? ?2 动态表? ?3 压缩表? 静态表是默认的存储格式,静态表中的字段都是非变长的字段,优点是:存储非常迅速,容易缓存,出现故障容易恢复;缺点是:占用的空间通常比动态表多。(注意: ?在存储时,列的宽度不足时,用空格补足,当时在访问的时候并不会得到这些空格)? ?动态表的字段是变长的,优点是:占用的空间相对较少,但是频繁地更新删除记录会产生碎片,需要定期改善性能,并且出现故障的时候恢复相对比较困难。? ?压缩表占用磁盘空间小,每个记录是被单独压缩的,所以只有非常小的访问开支。? MyISAM表存储为三个文件:.frm文件存储表定义。数据文件的扩展名为.MYD (MYData)。索引文件的扩展名是.MYI (MYIndex) InnoDB存储引擎:提供了具有提交、回滚和崩溃恢复能力的事务安全。但是比起MyISAM存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。? MEMORY(heap)存储引擎:memory实际是heap的替代品。使用存在内存中的内容来创建表。每个MEMORY表只实际对应一个磁盘文件(只包含表定义)。 优点:MEMORY类型的表访问非常得快,因为它的数据是放在内存中的,并且默认使用HASH索引 缺点:一旦服务关闭,表中的数据就会丢失掉。其只支持表锁,并发性能较差,并且不支持TEXT和BLOB列类型.存储变长字段(varchar)时是按照定常字段(char)的方式进行的,因此会浪费内存 MERGE(mrg_myisam)存储引擎:是一组MyISAM表的组合,这些MyISAM表必须结构完全相同。MERGE表本身没有数据,类似于一个视图.对MERGE类型的表进行查询、更新、删除的操作,就是对内部的MyISAM表进行的。似乎看到分区表的影子,但完全是两种不同的东西. 官网说明:/kb/en/merge/ archive存储引擎:这种类型只支持select 和 ?insert语句,而且不支持索引。非常适合存储大量的独立的作为历史记录的数据。Archive???有高效的插入速度,但其对查询的支持相对较差常,应用于日志记录和聚合分析方面。 Federated: 将不同的Mysql服务器联合起来,逻辑上组成一个完整的数据库。非常适合分布式应用 CSV: ?逻辑上由逗号分割数据的存储引擎。它会在数据库子目录里为每个数据表创建一个.CSV文件。这是一种普通文本文件,每个数据行占用一个文本行。CSV存储引擎不支持索引。 BlackHole :黑洞引擎,写入的任何数据都会消失,一般用于记录binlog做复制的中继 ?MYSQL 中的部分存储引擎的特性: AttributeMyISAMHeapBDBInnoDBTransactions(支持事务)NoNoYesYesLock granularity(锁粒度)TableTablePage (8 KB)RowStorage(存储)Split filesIn-memorySingle file per tableTablespace(s)Isolation levels(隔离级别)NoneNoneRead committedAllPortable format(可移植性)YesN/ANoYesReferential integrity(参照完整性,似乎是对外键的支持)NoNoNoYesPrimary key with dataNoNoYesYesMySQL?caches data recordsNoYesYesYesAvailability(支持的版本)All versionsAll versionsMySQL-MaxAll Versions MariaDB?与 MySQL 相比较 MariaDB 提供以下特性: XtraDB 替换 InnoDB(在MariaDB中 使用InnoDB等同于XtraDB),XtraDB 是 Percona 开发维护的 InnoDB 威力加强版,整合 ?Google、Facebook 等公司和 MySQL 社区的补丁。XtraDB 存储引擎是完全的向下兼容,在 MariaDB 中,XtraDB 存储引擎被标识为ENGINE=InnoDB,这个与 InnoDB 是一样的,所以你可以直接用XtraDB 替换

您可能关注的文档

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档