在MySQL 5.5发布两年后,Oracle宣布MySQL 5.6正式版发布,首个正式版版本号为MySQL 5.6.10。在MySQL 5.5中使用的是InnoDB作为默认的存储引擎,而MySQL 5.6则对InnoDB引擎进行了改造,提供全文索引能力,使InnoDB适合各种应用场景。
此外,子查询的性能提升也是 MySQL 5.6 的主要任务之一,5.6 中使用一种半连接(semi-joins) 和物化处理来提升子查询的执行速度,这意味着你不需要手工将包含子查询的 SQL 语句用 join 操作来替代。此外,多数修改数据结构的操作 (如 ALTER TABLE) 可在线执行,避免了数据库长时间的挂起。EXPLAIN 语句支持 UPDATE/DELETE/INSERT 语句的执行计划信息。其他关于查询的优化还包括消除在使用很小的 LIMIT 值时的表扫描。
在复制方面,MySQL 面向行的复制支持新的 "row image control" ,只记录修改的列而不是行中所有的列,这对一些包含 BLOGs 字段的数据来说可以节省很大的处理能力,因此此项改进不仅节省了磁盘空间,同时也提升了性能。另外, "Index Condition Pushdown" 是一项新的优化措施使得查询尝试优先使用索引的字段,然后再是 WHERE 条件。
MySQL 5.6 同时引入了 NoSQL 接口,提供了兼容 memcached 的 API,该特性让应用可直接访问 InnoDB 存储引擎。底层上保持着跟关系数据库引擎在维护上的统一。同时底层的 InnoDB 引擎也增强在持久化优化统计、多线程消除以及提供更多的系统表和监控数据。
MySQL 的产品经理 Tomas Ulin 解释了开源社区对 Oracle 关于补丁政策的批评,他说:这是一个不断求证的过程,我们每三个月提供安全补丁,但其实大多数用户并不会这么频繁的更新。而使用社区版的用户抱怨 Oracle 没有提供发行说明中 CVE 号的详细说明,它们只是简单的指向 Oracle 内部的错误码。公司将不会发布这些详情信息。
MySQL 5.6 显著提高了性能和可用性,可支持下一代 Web、嵌入式和云计算应用程序。
MySQL Database 5.6 具备以下特性:
新增! 在线 DDL /更改数据架构支持动态应用程序和开发人员灵活性
新增! 复制全局事务标识可支持自我修复式集群
新增! 复制无崩溃从机可提高可用性
新增! 复制多线程从机可提高性能
新增! 对 InnoDB 进行 NoSQL 访问,可快速完成键值操作以及快速提取数据来完成大数据部署
改进! 在 Linux 上的性能提升多达 230%
改进! 在当今、多核、多 CPU 硬件上具备更高的扩展力
改进! InnoDB 性能改进,可更加高效地处理事务和只读负载
改进! 更快速地执行查询,增强的诊断功能
改进! Performance Schema 可监视各个用户/应用程序的资源占用情况
改进! 通过基于策略的密码管理和实施来确保安全性
高度可靠,几乎无需干预即可确保系统持续不间断运行
简便易用,只需 3 分钟即可完成从下载到开发环境的安装和配置过程
管理需求低,数据库维护工作非常少
复制功能 支持灵活的拓扑架构,可实现向外扩展和高可用性
分区 有助于提高性能和管理超大型数据库环境
ACID 事务 支持构建安全可靠的关键业务应用程序
存储过程 可提高开发人员效率
触发器 可在数据库层面实施复杂的业务规则
View 可确保敏感信息不受攻击
Information Schema 有助于方便地访问元数据
插入式存储引擎架构 可最大限度发挥灵活性
Oracle MySQL 5.6.10 可通过这里 下载
同时发布的还有 MySQL Installer 5.5.30 GA 和 MySQL WorkBench 5.2.26 GA