Aurora MySQL 数据库引擎更新 2017-10-24(版本 1.15)(已弃用) - Amazon Aurora
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Aurora MySQL 数据库引擎更新 2017-10-24(版本 1.15)(已弃用)

版本:1.15

Aurora MySQL 1.15 已正式发布。将在 Aurora 1.15 中创建所有新的数据库集群(包括从快照还原的集群)。您可以选择(但不要求这样做)将现有数据库集群升级到 Aurora 1.15。您可以在 Aurora 1.14.1 中创建新数据库集群。为此,您可以使用 Amazon CLI 或 Amazon RDS API 并指定引擎版本。

对于 Aurora 1.15 版,我们将使用集群修补模式,在该模式下,将同时修补 Aurora 数据库集群中的所有节点。更新需要重新启动数据库,因此,将出现 20 到 30 秒的停机,之后,您可以继续使用数据库集群。如果您的数据库集群当前运行的是 Aurora 1.14 或 Aurora 1.14.1,则 Aurora MySQL 中的零停机时间修补功能可能允许与您的 Aurora MySQL 主实例的客户端连接持续到升级结束(具体取决于您的工作负载)。

如果您有任何疑问或疑虑,可以在社区论坛和 Amazon 支持部门获得Amazon 支持。有关更多信息,请参阅《Amazon Aurora 用户指南》中的维护 Amazon Aurora 数据库集群

零停机时间修补

零停机时间修补 (ZDP) 功能尝试在引擎修补期间尽力保留客户端连接。有关 ZDP 的更多信息,请参阅《Amazon Aurora 用户指南》中的使用零停机时间修补

新功能

  • 异步键预取 – 异步键预取 (AKP) 功能在需要键时预先从内存中提取这些键,从而提高了非缓存索引联接的性能。AKP 针对的一个主要使用案例是小型外部表和大型内部表之间的索引联接,其中索引在大型表中具有高选择性。此外,在启用多区间读 (MRR) 接口时,将利用 AKP 进行二级索引到主索引查找。在某些情况下,具有内存限制的小型实例能够利用 AKP,前提是提供正确的键基数。有关更多信息,请参阅《Amazon Aurora 用户指南》中的使用异步键预取优化 Aurora 索引的联接查询

  • 快速 DDL – 我们已将在 Aurora 1.13 中发布的功能扩展到包含默认值的操作。利用此扩展,快速 DDL 将适用于向表 (带或不带默认值) 结尾添加可为空的列的操作。该功能仍处于 Aurora 实验室模式。有关更多信息,请参阅《Amazon Aurora 用户指南》中的使用快速 DDL 在 Amazon Aurora 中修改表

改进

  • 修复了优化 WITHIN/CONTAINS 空间查询 (之前生成了一个空的结果集) 期间出现的计算错误。

  • 修复了 SHOW VARIABLE 命令以显示更新后的 innodb_buffer_pool_size 参数值(只要该值在参数组中发生变化)。

  • 提高了在禁用自适应哈希索引且要插入的记录为页面上的第一条记录的情况下,对使用快速 DDL 更改的表进行批量插入期间主实例的稳定性。

  • 在以下情况下提高了 Aurora 的稳定性:用户尝试将 server_audit_events 数据库集群参数值设置为 default

  • 修复了一个问题,即,在 Aurora 副本重新启动之前,未在这些副本上复制在 Aurora 主实例上运行的 ALTER TABLE 语句的数据库字符集更改。

  • 通过修复主实例上的争用情况 (之前允许主实例注册 Aurora 副本,即使主实例已关闭其卷),提高了稳定性。

  • 通过更改锁定协议以在索引编制期间支持并发数据操作语言 (DML) 语句,提高了在大型表上创建索引期间的主实例性能。

  • 修复了 ALTER TABLE RENAME 查询期间的 InnoDB 元数据不一致情况 (这将提高稳定性)。示例:在同一个 ALTER 语句中将表 t1(c1, c2) 的列循环重命名为 t1(c2,c3) 时。

  • 在以下情况下提高了 Aurora 副本的稳定性:Aurora 副本没有活动工作负载,并且主实例停止响应。

  • 在以下情况下提高了 Aurora 副本的可用性:Aurora 副本已明确锁定表,并阻止复制线程应用从主实例接收的任何 DDL 更改。

  • 提高了在外键和列将同时从两个单独的会话中添加到表,并且已启用快速 DDL 的情况下,主实例的稳定性。

  • 通过在清除撤消记录之前阻止截断该记录,提高了密集型写入工作负载期间主实例上的清除线程的稳定性。

  • 通过修复删除表的事务提交过程中的锁释放顺序,提高了稳定性。

  • 修复了导致数据库实例无法完成启动的 Aurora 副本缺陷并已端口 3306 已在使用中进行投诉。

  • 修复了 SELECT 查询在某些 information_schema 表 (innodb_trx、innodb_lock、innodb_lock_waits) 上运行时导致集群稳定性降低的争用情况。

MySQL 错误修复汇总

  • CREATE USER 接受插件和密码哈希,但忽略密码哈希 (错误 78033)

  • 分区引擎将字段添加到读位集以便能够从分区索引返回排序的条目。这将促使联接缓冲区尝试读取不需要的字段。通过不向 read_set 添加所有分区字段,而只是对 read_set 中的前缀字段排序来修复该错误。添加了 DBUG_ASSERT,如果执行 key_cmp,则至少必须读取第一个字段 (错误 16367691)。

  • MySQL 实例一直在“执行 SYNC 索引”(错误 73816)

  • 在 ALTER TABLE CHANGE COLUMN 中断言 RBT_EMPTY(INDEX_CACHE->WORDS) (错误 17536995)

  • InnoDB 全文搜索在涉及保存点时找不到记录 (错误 70333)