MYSQL教程深入MySQL存储引擎比较的详解
《MYSQL教程深入MySQL存储引擎比较的详解》要点: InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全.但是比起MyISAM存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引. MEMORY存储引擎使用存在内存中的内容来创建表.每个MEMORY表只实际对应一个磁盘文件.MEMORY类型的表访问非常得快,因为它的数据是放在内存中的,并且默认使用HASH索引.但是一旦服务关闭,表中的数据就会丢失掉. MYSQL实例MERGE存储引擎是一组MyISAM表的组合,这些MyISAM表必须结构完全相同.MERGE表本身没有数据,对MERGE类型的表进行查询、更新、删除的操作,就是对内部的MyISAM表进行的. MYSQL实例MyISAM表还支持3中不同的存储格式: MYSQL实例MySQL支持外键存储引擎只有InnoDB,在创建外键的时候,要求附表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.? MYSQL实例为了适应各种不同的运行环境,MYSQL提供了多种不同的存储引擎(Storage?Engine ),在应用程序开发这个层面上,开发者可以根据不同的需求选择适合的Storage?Engine 方案,更为灵活的是,你可以根据每张表将要存储数据的特点,选择不同的Storage?Engine,也就是说,在一个MYSQL数据库中,可以混合使用多种不同的Storage?Engine 其中应用层为所有RDBMS用户提供用户接口,逻辑层包括了所有核心功能的实现,物理层则负责将数据存储在硬件设备上. 图中右侧更为具体的描述了逻辑层的组成,查询处理子系统、事务管理子系统、恢复管理子系统和存储管理子系统共同组成了MySQL的逻辑层.相信Storage?Engine的位置是在Storage?Management处,既Storage?Engine属于Storage?Management子系统的一部分 为了让思路更清晰一些,下面给出一幅比较全面的体系结构图(或更确切的说是流程图,只是忽略了反馈) ? 上面三幅图来自于一篇非官方(不保证百分百的正确)的MySQL体系结构的报告,与《High Performance?MySQL》一书中给出的MySQL大体结构(下图,基本对应于Logic Layer,从第一幅图右侧可以看出MySQL?logic layer同样遵从分层体系结构)还是比较吻合的. ? 连接上图中第二层和第三层之间的接口是并不针对任何存储引擎的单一API,.大概由20个基本的类似“启动事务,返回结果集”等函数组成.存储引擎并不处理SQL,相互之间也不通信,它们的任务只是简单的响应高层传来的请求. MYSQL实例存储引擎各自的一些特点? MYSQL实例? MYSQL实例? MYSQL实例附上一张《High Performance?MySQL》 中的各存储引擎的特性表 MYSQL实例Attribute MYSQL实例MyISAM MYSQL实例Heap MYSQL实例BDB MYSQL实例InnoDB MYSQL实例Transactions MYSQL实例No MYSQL实例No MYSQL实例Yes MYSQL实例Yes MYSQL实例Lock granularity MYSQL实例Table MYSQL实例Table MYSQL实例Page (8 KB) MYSQL实例Row MYSQL实例Storage MYSQL实例Split files MYSQL实例In-memory MYSQL实例Single file per table MYSQL实例Tablespace(s) MYSQL实例Isolation levels MYSQL实例None MYSQL实例None MYSQL实例Read committed MYSQL实例All MYSQL实例Portable format MYSQL实例Yes MYSQL实例N/A MYSQL实例No MYSQL实例Yes MYSQL实例Referential integrity MYSQL实例No MYSQL实例No MYSQL实例No MYSQL实例Yes MYSQL实例Primary key with data MYSQL实例No MYSQL实例No MYSQL实例Yes MYSQL实例Yes MYSQL实例MySQL?caches data records MYSQL实例No MYSQL实例Yes MYSQL实例Yes MYSQL实例Yes MYSQL实例Availability MYSQL实例All versions MYSQL实例All versions MYSQL实例MySQL-Max MYSQL实例All Versions (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |