Percona Server for MySQL 8.0.31-23 (2023-02-09)¶
| Release date | February 9, 2023 |
|---|---|
| Install instructions | Install Percona Server for MySQL |
| Download this version | Percona Server for MySQL |
Percona Server for MySQL 8.0.31-23 includes all the features and bug fixes available in the MySQL 8.0.31 Community Edition in addition to enterprise-grade features developed by Percona.
Percona Server for MySQL is a free, fully compatible, enhanced, and open source drop-in replacement for any MySQL database. It provides superior performance, scalability, and instrumentation.
Percona Server for MySQL is trusted by thousands of enterprises to provide better performance and concurrency for their most demanding workloads. It delivers more value to MySQL server users with optimized performance, greater performance scalability and availability, enhanced backups, and increased visibility.
For training, contact Percona Training - Start learning now.
Release highlights¶
Improvements and bug fixes introduced by Oracle for MySQL 8.0.31 and included in Percona Server for MySQL are the following:
-
MySQL adds support for the SQL standard
INTERSECTandEXCEPTtable operators. -
InnoDB supports parallel index builds. This improves index build performance. The sorted index entries are loaded into a B-tree in a multithread. In previous releases, this action was performed by a single thread.
-
The Performance and sys schemas show metrics for the global and session memory limits introduced in MySQL 8.0.28.
The following columns have been added to the Performance Schema tables:
Performance Schema tables Columns SETUP_INSTRUMENTS FLAGS THREADS CONTROLLED_MEMORY, MAX_CONTROLLED_MEMORY, TOTAL_MEMORY, MAX_TOTAL_MEMORY EVENTS_STATEMENTS_CURRENT, EVENTS_STATEMENTS_HISTORY, EVENTS_STATEMENTS_HISTORY_LONG MAX_CONTROLLED_MEMORY, MAX_TOTAL_MEMORY Statement Summary Tables MAX_CONTROLLED_MEMORY, MAX_TOTAL_MEMORY Performance Schema Connection Tables MAX_SESSION_CONTROLLED_MEMORY, MAX_SESSION_TOTAL_MEMORY PREPARED_STATEMENTS_INSTANCES MAX_CONTROLLED_MEMORY, MAX_TOTAL_MEMORY The following columns have been added to the sys schema
STATEMENT_ANALYSISandX$STATEMENT_ANALYSISviews:-
MAX_CONTROLLED_MEMORY
-
MAX_TOTAL_MEMORY
The
controlled_by_defaultflag has been added to thePROPERTIEScolumn of theSETUP_INSTRUMENTStable.Now, you can add and remove non-global memory instruments to the set of controlled-memory instruments. To do this, set the value of the
FLAGScolumn ofSETUP_INSTRUMENTS.SQL> UPDATE PERFORMANCE_SCHEMA.SETUP_INTRUMENTS SET FLAGS="controlled" WHERE NAME='memory/sql/NET::buff'; -
-
The
audit_log_flushvariable has been deprecated and will be removed in future releases.
Find the full list of bug fixes and changes in the MySQL 8.0.31 Release Notes.
Improvements¶
-
PS-7963: The trigger definitions are not cached in the table cache when using SELECT statements. This improvement adds the following variables:
-
table_open_cache_triggerssystem variable -
table_open_cache_triggers_hits,table_open_cache_triggers_misses, andtable_open_cache_triggers_overflowsstatus variables
-
-
PS-8433: Reduces memory spent when caching triggers by replacing a fixed-size error buffer with a variable-size error buffer.
-
PS-8593: The binary tarballs compiled in the
RelWithDebInfoconfiguration include full("-g")rather than minimal("-g1")debug information. -
PS-8553: The Oracle Linux 9 RPM packages are now built with ZenFS enabled.
Bug fixes¶
-
PS-1098: Manually rotating the log files by calling
audit_log_flushmultiple times resulted in using a wrong log file. -
PS-7923: Assertion
owned_gtids.is_owned_by(thd->owned_gtid, thd->thread_id())failed. -
PS-8106: MySQL exited when the replication was stopped on replicating a
CREATE TABLE ASstatement. -
PS-8128: An in-place upgrade of views that refer to
performance_schematables failed. -
PS-8328: MySQL 8.0 exited when using
group_concatwithgroup by with rollup. -
PS-8503:
checkpoint_agerelated status had no value. (Thanks to Huang Zhiyong for reporting this issue.) -
PS-8547: Added a space after the binary name to count all active processes, including processes started by the binary. (Thanks to user Elbandi for reporting this issue.)
-
PS-8589: The replica crashed with fatal signal 11.
-
PS-8327: The usage of
ALTER TABLE ... CHECK PARTITIONinside stored procedure failed. -
PS-8442: A fix for a crash in
buf_pool_invalidate_instance().
Deprecated and removed¶
This release removes the following features, system variables, status variables, and options:
-
innodb_encryption_redo_key_version -
innodb_encryption_rotation_pages_read_from_cache -
innodb_encryption_rotation_pages_read_from_disk -
innodb_encryption_rotation_pages_modified -
innodb_encryption_rotation_pages_flushed -
innodb_encryption_rotation_estimated_iops -
innodb_encryption_rotation_list_length -
innodb_num_pages_encrypted -
innodb_num_pages_decrypted -
innodb_encryption_threads -
innodb_encryption_rotate_key_age -
innodb_encryption_rotation_loops -
innodb_default_encryption_key_id -
rotate_system_keyand any dependencies
This release changes the following system variable options:
-
ONLINE_TO_KEYRINGandONLINE_FROM_KEYRING_TO_UNENCRYPTEDoptions are removed in thedefault_table_encryptionvariable. -
The
innodb_sys_tablespace_encryptvariable data type is changed toBoolean.