PolarDB MySQL版5.7版本发布日志

本文将详细介绍PolarDB MySQL版5.7版本的更新日志和全部的功能特性。

5.7.1.0.36

类别

说明

发布时间

新增功能和性能优化

2024-11-28

问题修复

  • 修复Proxy高级事务拆分与Fast Query Cache之间的冲突影响结果集的问题。

  • 修复库表恢复新流程中,同一张表进行多轮恢复后导致流程中断的问题。

  • 修复在只读(RO)节点上执行CHECK TABLE可能会导致集群崩溃的问题。

  • 修复并行DDL执行期间时间窗口内执行修改innodb_bulk_load_page_grained_redo_enable参数小概率导致部分page的redo写错的问题。

  • 修复在发生RO节点切换为RW节点后,执行INSERT ... ON DUPLICATE KEY UPDATE语句导致表Autoinc回退问题。

  • 修复DML语句默认禁止index merge intersection访问路径,提升性能,防止死锁。

5.7.1.0.35

类别

说明

发布时间

新增功能和性能优化

  • 新增支持PolarDB 5.6物理迁移至PolarDB5.7功能。

  • 新增开启TDE功能后对新建表进行TDE加密功能。

  • 新增细粒度的数据修改追踪能力,提升全局一致性(高性能模式)性能。

  • 新增支持只读节点的用户自定义内存临时表(目前只支持MEMORY引擎和MyISAM引擎)。

  • 将只读变量max_digest_length参数优化为可动态设置。

  • 优化simulated AIO的性能。

  • 优化outline库每次执行允许outline库名为空问题。

  • 优化PolarDB IO Threads可动态调整无需重启功能。

2024-08-30

问题修复

  • 修复动态Buffer Pool缩容时的锁冲突问题。

  • 修复blob数据类型purge预读相关问题。

  • 修复分区表在HA后出现Autoinc回退问题。

  • 修复大JSON序列化性能问题。

  • 修复JSON中浮点数精度不够问题。

  • 修复不必要唯一键(Unique Key,简称UK)约束导致的记录锁(record lock)引发的死锁问题。

  • 修复RO节点在Buffer Pool非常满时,用户线程等待Free Page过久问题。

  • 修复表数据全部清空之后,Autoinc值可能会回退为0的问题。

5.7.1.0.34

类别

说明

发布时间

新增功能和性能优化

  • 新增抢占式DDL功能,以解决DDL同步时获取MDL锁失败的问题。

  • 优化分布式文件系统(PolarFileSystem)中的线程优先级,以确保及时处理事务请求,提升PolarDB MySQL版DDL性能。

  • 优化只读节点在分布式文件系统(PolarFileSystem)上的Page读取性能。

2024-07-01

问题修复

  • 修复连接数超过65536时,MDL锁系统可能出现异常的问题。

5.7.1.0.33

类别

说明

发布时间

新增功能和性能优化

  • 优化了RO节点同步MDL锁失败的提示信息。

  • 新增polar_only_allow_discard_with_admin参数,开启后禁止用户执行DISCARD操作。默认值为ON,您可以按需配置。

  • Fast Query Cache增加返回行数的信息,命中缓存的查询在审计中可以展示返回行数。

2024-05-27

问题修复

  • 修复了系统运维的访问会影响slow_queries状态指标的问题。

  • 修复了使用SET_VAR hint设置loose_optimizer_switch时末尾需要添加逗号的问题。

5.7.1.0.32

类别

说明

发布时间

新增功能和性能优化

  • 开启全局事务标识符(GTID)后,支持在事务中创建和删除临时表。

  • 支持在全局一致性高性能模式功能中使用Variable-Setting Hint语法。

  • 优化线程池在开启Binlog多线程并发写入情况下的性能。

2024-03-27

问题修复

  • 修复TDE在fork创建子进程时,与RDMA内存不兼容的问题。

  • 修复在Buffer Pool进行缩容操作时,由于用户的大SQL长时间占用大量页面,导致后续的扩容请求无法进行的问题。

  • 修复Autoinc出现回退时,需要重启节点才能恢复的问题。

  • 修复DDL预读在并行DDL场景下存在死锁的问题。

  • 修复对分区表执行修改分区的DDL语句后,新的Insert请求会出现autoinc duplicate key的问题。

5.7.1.0.31

类别

说明

发布时间

新增功能和性能优化

提升低并发场景下Thread Pool处理建连请求的速度。

2024-01-31

问题修复

  • 修复使用逻辑预读功能时,可能导致节点崩溃的问题。

  • 修复使用逻辑预读功能时,内存泄露的问题。

  • 修复执行库表恢复的新流程时,因磁盘满载导致线程无法退出的问题。

  • 修复执行库表恢复的新流程时,只读(RO)节点注册位点过低导致新增RO节点失败的问题。

5.7.1.0.30.1

类别

说明

发布时间

问题修复

  • 修复开启autoinc_persist时,HA切换后出现autoinc回退的问题。

  • 修复RW节点和Standby(或者RO)节点反复HA后出现Autoinc回退的问题。

  • 修复在RW节点执行Degrade操作后,Standby节点会丢失物理复制重连机制的问题。

2023-12-11

5.7.1.0.30

类别

说明

发布时间

新增功能和性能优化

  • 优化了库表恢复功能。如提升库表恢复速度,支持任务失败回滚等。

  • 优化日志输出功能,即删除fil_space_extend中无用的错误日志。

2023-11-23

问题修复

  • 修复RO节点的物理机出现故障时,RW节点在特殊情况下未将其复制关系中断,而引发的RW节点刷脏受阻的问题。

  • 修复HA后,因表数量过多引发table cache淘汰导致Autoinc回退的问题。

  • 修复一键升级RDS MySQL至PolarDB MySQL版场景下,PolarDB集群重启导致迁移链路中断的问题。

  • 修复在undo truncate过程中出现异常checkpoint的问题。

  • 修复RO节点启动时,没有使用polarfs dir fast scan接口链接RW节点的问题。

5.7.1.0.29

类别

说明

发布时间

问题修复

  • 修复逻辑预读跨Page操作和SMO的merge操作发生冲突时死锁的问题。

  • 修复InnoDB引擎中的临时表无法刷脏的问题。

  • 修复删除相同的SQL语句类型中,最后一个只填写了keyword而没有schema和table的CCL规则时,可能导致节点崩溃的问题。

2023-09-14

5.7.1.0.28.4

类别

说明

发布时间

问题修复

修复page cleaner线程在脏页水位较低时,因刷脏量过大导致写入性能下降的问题。

2023-08-28

5.7.1.0.28.2

类别

说明

发布时间

问题修复

修复开启审计日志后,因本地盘压力过大导致SQL延时上升的问题。

2023-08-02

5.7.1.0.28

类别

说明

发布时间

新增功能和性能优化

  • 新增参数innodb_polar_import_tablespace_strict_mode,默认值为ON,即执行库表恢复操作时,表结构中包含full-text index会报错。

  • 新增Session级别的innodb_polar_scc参数来控制当前连接请求是否需要强一致性。当开启全局一致性(高性能模式)功能且当前连接的innodb_polar_scc=true时,全局一致性生效。

2023-07-23

问题修复

  • 修复普通用户可以删除performance_schema库的问题。

  • 修复checkpoint LSN推进不符合预期的问题。

  • 修复在RW节点执行ALTER TABLE ... IMPORT TABLESPACE操作的同时,在RO节点执行查询操作可能会报错的问题。

  • 修复关闭主节点并重启时,备节点未触发重连机制的问题。

  • 修复group_concat_max_len参数值设置较大出现算术溢出,导致GROUP_CONCAT函数结果错误的问题。

  • 修复动态开启PolarTrans后,在高并发范围更新场景下mutex锁争抢的问题。

  • 修复当在读写节点(RW)触发了undo log回收机制后,如果再通过只读节点(RO)连接数据库来读取数据,RO节点会崩溃的问题。

5.7.1.0.27.2

类别

说明

发布时间

问题修复

修复并发记录慢查询日志的过程中,thread pool内部计数器异常可能造成SQL请求堆积的问题。

2023-06-14

5.7.1.0.27

类别

说明

发布时间

新增功能和性能优化

  • 支持记录DDL、LOCK TABLE语句到系统表。

  • 线程池(Thread Pool)功能兼容CCL。开启Thread Pool功能后,如果用户的连接被CCL拦截,则该连接会在Thread Pool内部标记,并且Thread Pool会创建额外的线程来执行其他连接上的SQL语句。

  • 当使用Statement Outline过程中指定的Index Hints不存在时,不直接进行报错,只报告警。

  • 优化show full tables from db_name like table_name

  • 全局一致性(高性能模式)新增Innodb_scc_timeout_count参数,用于记录查询过程中的超时次数。

  • 全局一致性(高性能模式)新增Innodb_scc_timeout_degrade_count参数,用于记录查询超时转异步查询的次数。

  • 优化使用Statement Outline的过程中,无Outline时,执行语句跳过digest hash计算的问题。

  • 优化Truncate temp table的效率。

  • 支持在只读节点查询gtid信息。

  • 优化PolarFS内部的锁粒度,大幅提升部分高负载场景下的性能。

2023-05-08

问题修复

  • 修复创建event后,无法删除的问题。

  • 修复在只读节点建立物理复制时出现读超时,而无法连接数据库的问题。

  • 修复undo log无法truncate的问题。

  • 修复只读节点在应用宽表的Redo日志时,出现复制延迟的问题。

5.7.1.0.26.2

类别

说明

发布时间

问题修复

  • 修复开启全局一致性(高性能模式)过程中,可能导致热备节点意外崩溃的问题。

  • 修复RW节点重启后,PolarTrans日志不能正常回收的问题。

2023-03-25

5.7.1.0.26

类别

说明

发布时间

问题修复

  • 修复主备节点切换后CREATE TABLE语句中AUTO_INCREMENT值丢失的问题。

  • 修复了集群启动时,my.cnf文件中的innodb_buffer_pool_in_core_file参数设置不生效的问题。

  • 修复大内存规格下TDE插件通信慢的问题。

2023-02-27

5.7.1.0.25

类别

说明

发布时间

新增功能和性能优化

  • 忽略dbms_ccl.add_ccl_digest_ruledbms_outln.add_index_outlinedbms_outln.add_optimizer_outline内置存储过程中参数query中的SQL语句结尾的分号。

  • Statement Outline支持所有的UNION子句。

  • 调整物理复制连接相关的超时参数,以避免当RW节点所在的物理机出现故障时,出现物理复制连接问题。

  • 线程池优化:

    • 您可以通过thread_pool_high_priority_users参数来配置高优先级用户列表,当线程池分配线程时,优先匹配高优先级用户的需求。

    • 新增bypass机制。您可以通过配置bypass_thread_pool_ips参数来进行特权连接。即当用户使用bypass_thread_pool_ips中的IP地址连接数据库时,可以直接绕过线程池。

    • 新增慢查询超时处理机制。即线程池计算整体线程数量时,会忽略处于慢查询状态的线程数量,使得整体的线程数量不再受慢查询线程数量限制。

2023-01-06

问题修复

修复长事务场景下可能导致数据库性能变慢的问题。

5.7.1.0.24

类别

说明

发布时间

新增功能和性能优化

  • 全局一致性(高性能模式)新增Innodb_scc_timeout_count参数,用于记录全局一致性(高性能模式)查询过程中的超时次数。

  • 全局一致性(高性能模式)新增Innodb_scc_timeout_degrade_count参数,用于记录全局一致性(高性能模式)查询超时转异步查询的次数。

2022-11-11

问题修复

  • 修复RW节点上物理复制模块占用额外内存的问题。

  • 修复特殊场景下无法清除undo log的问题。

  • 修复特殊场景下管控探活失败的问题,提升高并发场景下的系统稳定性。

5.7.1.0.23.3

类别

说明

发布时间

问题修复

修复了RO节点因文件名哈希值冲突导致的崩溃问题。

2022-09-17

5.7.1.0.23

类别

说明

发布时间

新增功能和性能优化

  • 新增全局一致性(高性能模式)功能。开启全局一致性(高性能模式)功能后,PolarDB的RO节点可以提供强一致性读服务。详细请参见概述

  • 优化DDL预读功能,提高创建索引的效率。

  • 优化DDL排序:二路归并改为多路归并来减少IO次数,提升DDL加索引的性能。

  • 提升高并发下thread pool性能。

2022-08-30

问题修复

修复删除数据库不记录slow log的问题。

5.7.1.0.22

类别

说明

发布时间

新增功能和性能优化

支持DDL预读功能,提高创建索引的效率。

2022-06-17

问题修复

  • 优化Ordering index选择索引路径时,没有考虑回表代价的问题。

  • 修复Buffer Pool脏页过多,且刷脏缓慢的场景下,LRU List清理受阻导致无法释放Page的问题。

5.7.1.0.21

类别

说明

发布时间

新增功能和性能优化

主备节点间的物理复制支持毫秒级延迟。

2022-05-20

问题修复

  • 修复集群低负载下的物理复制延迟过大的问题。

  • 优化Ordering index的选择,优先选择既能利用索引条件,又能同时提供Ordering的索引路径。

  • 修复优化器针对部分GROUP BY语句未选择更优的索引范围路径的问题。

  • 修复RO节点注册到RW节点时未能触发checkpoint的问题。

5.7.1.0.20

类别

说明

发布时间

新增功能和性能优化

SQL解析将OFCOMMIT_ON_SUCCESSROLLBACK_ON_FAILTARGET_AFFECT_ROW由保留关键字改为非保留关键字。

2022-04-07

5.7.1.0.17

类别

说明

发布时间

新增功能和性能优化

  • 支持热点行优化功能。具体请参见热点行优化

  • 支持热备节点功能,进一步优化高可用效率。

2022-01-14

5.7.1.0.16

类别

说明

发布时间

问题修复

优化了手动触发checkpoint的策略。

2021-12-14

5.7.1.0.15

类别

说明

发布时间

新增功能和性能优化

新增Fast Query Cache功能。具体请参见Fast Query Cache

2021-11-17

5.7.1.0.14

类别

说明

发布时间

问题修复

  • 提供一个optimizer hint使得用户可以控制是否强制视图进行merge。具体请参考MySQL官方文档

  • 支持SELECT FOR UPDATE WAIT N语法。 其中N表示等待超时的秒数,仅针对单个行锁。如果一个查询需要锁定多行时,系统不会对多个行进行时间累计,仅对单行进行超时检测。等待时间超过N秒,系统则返回锁等待超时错误:Lock wait timeout exceeded; try restarting transaction

2021-10-19

5.7.1.0.13

类别

说明

发布时间

新增功能和性能优化

GDN从集群中的只读节点支持通过alter polar to slave命令切换成主节点,从而实现从集群的高可用。

2021-09-10

5.7.1.0.12

类别

说明

发布时间

新增功能和性能优化

2021-08-27

问题修复

  • 修复Statement Concurrency Control指定库表的规则无法匹配的问题。

  • 加快只读节点和从集群应用redo log,提升主节点的同步效率。

5.7.1.0.11

类别

说明

发布时间

新增功能和性能优化

新增polar_replica_work_on_nonblock_mdl_mode参数。开启该参数时,只读节点上的RU/RC隔离级别的未提交事务将不再阻塞主节点上的DDL操作,同时只读节点上将不再保证表定义的事务特性。

2021-07-08

5.7.1.0.10

类别

说明

发布时间

新增功能和性能优化

兼容MySQL 8.0,支持SELECT FOR UPDATE/SHARE SKIP LOCKED/NOWAIT语法。具体请参见MySQL 8.0

2021-06-15

问题修复

RO节点支持将innodb temp table数据落盘。

5.7.1.0.9

类别

说明

发布时间

问题修复

  • 多表场景下,支持存储引擎快速启动。

  • 修复了在虚拟列上回滚Update操作导致数据库崩溃的问题。

2021-05-13

5.7.1.0.8

类别

说明

发布时间

新增功能和性能优化

当只读节点和主节点建立复制关系时,新增主节点是否需要立即执行checkpoint策略的功能。

2021-04-19

问题修复

  • 将KICKOUT修改为非保留关键字。

  • 修复主备切换时,TDE加密表中的加密信息可能丢失导致解密失败的问题。

5.7.1.0.7

类别

说明

发布时间

新增功能和性能优化

  • 新增并行DDL功能,提升DDL性能,详情请参见并行DDL

  • 新增innodb_buffer_pool_in_core_file参数,以便将buffer pool从core file中移除。

  • Index Hints新增支持如下关键字,以便优化器处理查询时使用或忽略指定的索引:

    • GROUP_INDEXNO_GROUP_INDEX:使用或忽略指定的索引以进行带有GROUP BY操作的索引扫描。

    • INDEXNO_INDEX:强制服务器使用或忽略指定索引。

    • JOIN_INDEXNO_JOIN_INDEX:强制MySQL对任何访问方法使用或忽略指定的索引。

  • Join Order Hint新增支持如下关键字,以便优化器选择合适的表连接顺序:

    • JOIN_FIXED_ORDER:强制优化器使用FROM子句中出现的顺序来连接表。

    • JOIN_ORDER:指导优化器使用指定的表顺序连接表。 该Hint适用于命名表。 优化器可以将未命名的表放在连接顺序中的任何位置,包括指定表之间。

    • JOIN_PREFIX:指导优化器为连接执行计划的前几个表使用指定的表顺序来连接表。 该Hint适用于命名表。 优化器会将所有的其他表放在命名表之后。

    • JOIN_SUFFIX:指导优化器为连接执行计划的最后几张表使用指定的表顺序来连接表。 该Hint适用于命名表。 优化器会将所有的其他表放在命名表之前。

2021-03-10

问题修复

  • 将token number的对照表进行分区并预留部分token,以修复插入新token后,同一语句digest hash值不一致的问题。

  • 修复变配过程中,由于只读节点无法在主节点上成功注册,导致变配失败的问题。

  • 修复在打开session_track_temporary_tables系统变量的情况下,在存储过程中创建或删除临时表会导致集群异常退出的问题。

5.7.1.0.6.3

类别

说明

发布时间

问题修复

修复部分场景下SHOW PROCESSLIST结果不正确的问题。

2021-02-22

5.7.1.0.6.2

类别

说明

发布时间

问题修复

修复在只读节点上执行使用了Index Merge优化的查询时,偶发性地出现1032错误码Can't find record in TABLE的问题。

2021-02-10

5.7.1.0.6.1

类别

说明

发布时间

问题修复

  • 修复读写节点上刷脏异常的问题。

  • 修复在已执行过主备切换的集群上,可能无法再进行更换主可用区操作的问题。

  • 修复由于执行SHOW PROCESSLIST时错误调用了THD(Thread Descriptor),导致的数据库崩溃问题。

2021-02-02

5.7.1.0.6

类别

说明

发布时间

新增功能和性能优化

  • 新增支持Statement Queue功能,详情请参见Statement Queue

  • 新增支持秒级加字段(Instant add column)功能,详情请参见秒级加字段

  • 新增支持Returning功能,详情请参见Returning

  • innodb_adaptive_hash_index参数的默认值由ON改为OFF

2021-01-29

问题修复

修复升级PolarDB内核版本时,系统表丢失的问题。

5.7.1.0.5

类别

说明

发布时间

问题修复

  • 修复主节点修改密钥后,在只读节点上进行查询时,只读节点会崩溃的问题。

  • 修复在只读节点上分析分区表时,只读节点会崩溃的问题。

  • 修复主备切换后,由于表空间不一致导致新的主节点会崩溃的问题。

2020-12-31

5.7.1.0.4

类别

说明

发布时间

问题修复

  • 修复主备切换后,无法将数据插入临时表的问题。

  • 修复当在只读节点上扩展临时表空间时,只读节点不可用的问题。

  • 修复Simulated AIO不能正常工作的问题。

2020-11-17

5.7.1.0.3

类别

说明

发布时间

新增功能和性能优化

支持透明数据加密TDE功能。

2020-10-21

问题修复

  • 修复只读节点和主节点间统计信息不一致的问题。

  • 修复SHOW PROCESSLIST返回结果中显示错误信息的问题。

5.7.1.0.2

类别

说明

发布时间

问题修复

  • 修复从RDS MySQL 5.7迁移后不能扩展.IDB文件的问题。

  • 禁止在主备切换时执行CF_STATUS_COMMAND相关命令,以保证主备切换的正常运行。

  • 修复因后台更新统计信息线程和Truncate逻辑出现Page争用,导致主节点不可用的问题。

2020-08-28

5.7.1.0.1

类别

说明

发布时间

问题修复

  • 修复当部分PolarDB专属命令缺少对应命令数字时,导致maxscale不能正常访问的问题。

  • 修复通过从回收站恢复方式创建的集群由于找不到表空间,导致集群不可用的问题。

  • 修复执行promote replica命令时,有文件未关闭导致unmount PFS文件崩溃的问题。

2020-07-30