
1.3 MySQL 5.6.19功能概述
截止本书编写时MySQL发布的最新版本是5.6.19,处于测试的最新版本是5.6.21。MySQL 5.6.19在原来版本的基础上改进并新增了许多特性,例如,在Linux上的性能提升多达230%,更加快速地执行查询、增强的诊断功能,通过基于策略的密码管理和实施来确保安全性,复制多线程从而可提高功能,InnoDB可以更加高效地处理事务和只读负载等。下面从4个方面简单介绍了MySQL 5.6.19数据库中的新增和增强功能。
1.增强的性能架构(PERFORMANCE_SCHEMA)
新检测让用户能够更好地监控资源最密集的查询、对象、用户和应用程序,也可以通过查询、线程、用户、主机和对象来实现新汇总统计信息概要,增强功能允许更简便的默认配置,并且只耗费不到5%的成本。
2.通过提升MySQL优化诊断来提供更好的查询执行时间和诊断功能
通过提升MySQL优化诊断来提供更好的查询执行时间和诊断功能,这主要表现在以下三个方面。
(1)子查询优化。通过在执行之前优化子查询来简化查询开发,新效率体现在查询执行时间内,显著提升结果集的选择、分类并返回交付。
(2)新增的指数条件下推(Index Condition Pushdown)和批量密钥访问(Batch Key Access)功能可提高选择查询量高达280倍。
(3)增强的优化诊断功能。通过EXPLAIN进行INSERT、UPDATE和DELETE操作。EXPLAIN计划以JSON格式输出,提供更精确的优化指标和更好的可读性,优化跟踪(Optimizer Traces)可跟踪优化决策过程。
3.通过增强InnoDB存储引擎来提高性能处理量和应用可用性
从MySQL 5.5版本开始,InnoDB已经成为默认的存储引擎。通过增强InnoDB存储引擎来提高性能处理量和应用可用性,这主要表现在以下4个方面。
(1)提升处理和只读量高达230%。通过InnoDB重构以尽量减少传统线程,冲洗和清理互斥冲突和瓶颈,从而在高负重OLTP系统上实现更好的并发性,进而针对只读工作负载和处理,显著提高处理量。
(2)提高可用性。在线DDL操作可使数据库管理员添加索引和执行表变更,并且应用程序仍可用于更新。
(3)InnoDB全文搜索。允许开发人员在InnoDB表上建立全文索引,以表示基于文本的内容,并加快单词和短语的应用搜索。
(4)简单和关键值查找。通过熟悉的Memcached API对InnoDB的灵活NoSQL访问,提供了InnoDB数据的简单和关键值查找。用户可以实现在同一个数据库关键值操作和复杂的SQL查询的“双赢”效应。
4.通过MySQL复制的新功能以提高扩展性和高可用性
通过MySQL复制的新功能以提高扩展性和高可用性,这主要体现在以下三个方面。
(1)自我修复功能的复制集群。新增的全球处理识别和使用程序(Global Transaction Identifiers and Utilities)能更加方便地实现自动检测并从故障中恢复。碰撞安全复制功能(Crash-Safe Replication)使二进制日志和从动装载,在崩溃和恢复复制的情况下,能自动恢复到复制流的正确位置上,而无须管理员干预。通过自动检测和警告错误Checksums可跨集群维护数据的完整性。
(2)高性能复制集群。通过多线程的从动装置,Binlog组提交和基于行复制的优化使复制能力提高了5倍,让用户在向外扩展其跨商品系统的工作负载时,能够最大限度地提高复制性能和效率。
(3)时间延迟复制,这能够防止发生在主机的操作失误,例如,意外删除表格。