MySQL 9.1.0 → 9.6.1
16 releases · 16 breaking changes · 6 security fixes · 30 advisories fixed
6security16breaking40deprecated44feature94fix
Vulnerabilities fixed by this upgrade
- 5.0 CVE-2026-34317 Vulnerability in the MySQL Shell product of Oracle MySQL (component: Shell: Core Client). Supported versions that are affected are 8.0.0-8.0.45, 8.4.0-8.4.8 and 9.0.0-9.6.0. Easily exploitable vu…
- 5.8 CVE-2026-34318 Vulnerability in the MySQL Shell product of Oracle MySQL (component: Shell: Core Client). Supported versions that are affected are 8.0.0-8.0.45, 8.4.0-8.4.8 and 9.0.0-9.6.0. Difficult to exploit…
- 5.0 CVE-2026-34319 Vulnerability in the MySQL Shell product of Oracle MySQL (component: Shell: Core Client). Supported versions that are affected are 8.0.0-8.0.45, 8.4.0-8.4.8 and 9.0.0-9.6.0. Easily exploitable vu…
- 4.9 CVE-2026-21964 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Thread Pooling). Supported versions that are affected are 8.0.0-8.0.44, 8.4.0-8.4.7 and 9.0.0-9.5.0. Easily exploitab…
- 2.7 CVE-2025-50098 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.9 CVE-2025-50099 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerability…
- 2.2 CVE-2025-50100 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Thread Pooling). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Difficult to exp…
- 4.9 CVE-2025-50101 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.9 CVE-2025-50102 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.4 CVE-2025-50103 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Security: LDAP Auth). Supported versions that are affected are 9.0.0-9.3.0. Difficult to exploit vulnerability allows…
- 2.7 CVE-2025-50104 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: DDL). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerab…
- 4.9 CVE-2025-50091 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.9 CVE-2025-50092 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerability…
- 4.9 CVE-2025-50093 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: DDL). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerab…
- 4.9 CVE-2025-50095 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 9.0.0-9.3.0. Easily exploitable vulnerability allows high privile…
- 4.4 CVE-2025-50096 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerability…
- 4.9 CVE-2025-50097 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Security: Encryption). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exp…
- 6.5 CVE-2025-50083 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.9 CVE-2025-50084 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 5.5 CVE-2025-50085 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerability…
- 4.9 CVE-2025-50086 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Components Services). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily expl…
- 4.9 CVE-2025-50087 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.9 CVE-2025-50088 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 8.0.0-8.0.41, 8.4.0-8.4.4 and 9.0.0-9.2.0. Easily exploitable vulnerability…
- 4.9 CVE-2025-50089 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 9.0.0-9.1.0. Easily exploitable vulnerability allows high privile…
- 4.9 CVE-2025-50077 Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerability…
- 6.5 CVE-2025-50078 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: DML). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vulnerab…
- 4.9 CVE-2025-50079 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
- 4.9 CVE-2025-50080 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Stored Procedure). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploit…
- 3.1 CVE-2025-50081 Vulnerability in the MySQL Client product of Oracle MySQL (component: Client: mysqldump). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Difficult to exploit…
- 6.5 CVE-2025-50082 Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: Optimizer). Supported versions that are affected are 8.0.0-8.0.42, 8.4.0-8.4.5 and 9.0.0-9.3.0. Easily exploitable vu…
Breaking changes
- breaking A number of unused symbols were removed from the code base. (Bug #38557463) in 9.6.0
- breaking InnoDB: InnoDB redo logging error messages now include the current LSN and redo log capacity information. A new warning code ER_IB_WRN_REDO_DISABLED_INFO is added which includes the current LSN. A new error code ER_IB_MSG_LOG_WRITER_WAIT_ON_NEW_LOG_FILE_INFO is added to include the current log… in 9.6.0
- breaking InnoDB: The field fk_max_recusive_level in dict_table_t struct is no longer used and has been removed. Our thanks to Xiaocong Ding for the contribution. (Bug #119063, Bug #38492574) in 9.6.0
- breaking Important Change: IFNULL() used in a LIKE clause raised ER_CANT_AGGREGATE_2COLLATIONS. This was due to the fact that IFNULL() returns a binary collation and the collation derivation NONE, but NONE was not allowed in this context, leading to the error. We solve this problem by making a slight… in 9.4.0
- breaking Removed a warning in gcs_xcom_networking.cc. (Bug #38021787) in 9.4.0
- breaking MySQL Server now requires GCC version 11 or later to compile. As part of this change, support for ARM systems using RHEL7 is removed in this release, due to the lack of availability of GCC 11 on that platform. (Bug #38004285) in 9.4.0
- breaking Removed workaround for old versions of CMake. Note The minimum version of CMake supported for building MySQL is 3.14.6. (Bug #37901122) in 9.4.0
- breaking Removed warnings observed when compiling the server with Clang 20. (Bug #37785251) in 9.4.0
- breaking Removed the unused file strings/utr11-dump.cc. (Bug #37549844) in 9.3.0
- breaking Removed extraneous pipe characters (|) from the first example. in 9.3.0
- breaking macOS: Removed obsolete CMake code from MacOS builds. (Bug #37258036) in 9.2.0
- breaking macOS: Removed warnings of the form ld: warning: ignoring duplicate libraries and warnings specific to xcodebuild. (Bug #37065301) in 9.2.0
- breaking Microsoft Windows: Removed compiler warnings issued when building MySQL with Visual Studio 2022. (Bug #113870, Bug #36256477) in 9.2.0
- breaking Removed or fixed issues in a number of copyright header files. (Bug #37238155) in 9.2.0
- breaking Removed a maybe-uninitialized error found in sql/item.cc when building MySQL with GCC 14. (Bug #37157201) in 9.2.0
- breaking Removed an error in mysql_prepare_create_table() (in the file sql/sql_table.cc) found when compiling MySQL with XCode 16. (Bug #37068527) in 9.2.0
Security changes
- security Important Change: MySQL now supports enhanced security and flexibility with the relocation of MD5() and SHA1() SQL functions to a separate component, allowing for greater control over deprecated hashing algorithms and improved compliance with security standards. You can install the classic_hashing… in 9.6.0
- security Fixed an issue relating to authentication. (Bug #118447, Bug #38077617) in 9.6.0
- security The error message returned when attempting to create a user with an existing user name was unclear. (Bug #28331, Bug #11746738) in 9.6.0
- security Security Enhancement: The default value of caching_sha2_password_digest_rounds is increased to 10,000. (WL #16974) in 9.5.0
- security MySQL Replication supports enhanced security features with encryption now being enabled for all replication connections by default. With this configuration change, the default value of the SOURCE_SSL option in the CHANGE REPLICATION SOURCE TO Statement has been changed to 1, the default value of… in 9.5.0
- security This release introduces a MySQL component, component_keyring_hashicorp, which takes the place of the HashiCorp Vault keyring plugin; that plugin and its associated system variables are now deprecated (and subject to removal in a future version of MySQL). Like the plugin, the component allows… in 9.3.0
Deprecations
- deprecated MySQL now provides an INTERPRET_UTF8_AS_UTF8MB4 SQL mode that controls whether the deprecated utf8 character set and utf8_* collation aliases in SQL statements are interpreted as utf8mb3 or utf8mb4. The mode is disabled by default, preserving the previous utf8mb3 interpretation. When enabled, utf8… in 9.5.0
- deprecated The group_replication_allow_local_lower_version_join system variable, deprecated in MySQL 8.4.0, has now been removed. (WL #16019) in 9.5.0
- deprecated The replica_parallel_type system variable, deprecated in MySQL 8.0.29, has now been removed. (WL #13955) in 9.5.0
- deprecated The SCRAM-SHA-1 authentication method for SASL LDAP authentication is now deprecated, and subject to removal in a future version of MySQL. You are encouraged to use SCRAM-SHA-256 instead. As part of this work, the default value for the authentication_ldap_sasl_auth_method_name system variable has… in 9.5.0
- deprecated The following deprecated plugins are removed in this release: (WL #16801) in 9.5.0
- deprecated semisync_master replaced by semisync_source. in 9.5.0
- deprecated semisync_slave replaced by semisync_replica. in 9.5.0
- deprecated The keyring_okv plugin is deprecated and replaced by the keyring_kmip component, enabling secure communication with Key Management Interoperability Protocol (KMIP) 1.1-compatible products such as Oracle Key Vault, Gemalto SafeNet KeySecure Appliance, Townsend Alliance Key Manager, and Entrust… in 9.5.0
- deprecated Microsoft Windows: MySQL Configurator command-line option names and aliases have been revised to more clearly indicate their purpose. Multiword options accept either hyphens or underscores as separators, but the separator styles cannot be mixed within one option name. Deprecated names and aliases… in 9.5.0
- deprecated Warnings raised by Clang 20 for non-trivially copyable types, deprecated literal operators, and incorrect main function declarations are no longer generated. (Bug #37785251) in 9.4.0
- deprecated On MacOS, silenced deprecation warnings generated by Xcode 14; this includes suggestions to use snprintf(3) instead of sprintf(3), and warnings about possible loss of precision when converting from 64-bit to 32-bit integers. (Bug #34776172) in 9.4.0
- deprecated Microsoft Windows: As MySQL Enterprise Edition 9.4.0 includes a new The MySQL Enterprise Firewall Component), intended to be a replacement for the now deprecated MySQL Enterprise Firewall plugin, the MySQL Configurator now supports enabling the firewall component and upgrading to it from the… in 9.4.0
- deprecated As part of ongoing work to transition from MySQL plugins to MySQL components, the API used to write MySQL plugins is now deprecated and subject to removal in a future version of MySQL. This change has the following effects: Keyring Components Versus Keyring Plugins, provides a summary of the… in 9.4.0
- deprecated The MySQL server's --early-plugin-load option is deprecated. Starting the server with this option now raises a deprecation warning. in 9.4.0
- deprecated A deprecation warning is now issued whenever a keyring plugin is loaded. in 9.4.0
- deprecated The system variable temptable_use_mmap, deprecated in version 8.0.26, is removed in this version. (WL #16745) in 9.4.0
- deprecated The SQL functions MD5() and SHA1() are deprecated as of this release and scheduled for removal in a future release. (WL #16955) in 9.4.0
- deprecated Packaging: This release includes a MySQL Enterprise Firewall component (see The MySQL Enterprise Firewall Component) intended to replace the firewall plugin, which is now deprecated and thus subject to removal in a future version of MySQL. The component implements most of the plugin's… in 9.4.0
- deprecated Group Replication: The OpenSSL Engine interface is deprecated, and is no longer being included in OpenSSL v3 main packages by some Linux distributions, including Fedora. To avoid build issues, the usage of the OpenSSL Engine interface by the Group Communication System (GCS) is now restricted to… in 9.3.0
- deprecated NDB Cluster: The --restore-privilege-tables option for ndb_restore, which was deprecated in NDB 8.0.16, has now been removed. (Bug #36298807) in 9.3.0
- deprecated Replication: The replica_parallel_workers server system variable can no longer be set to 0; the minimum permitted value is now 1. (WL #13957) in 9.3.0
- deprecated The system variable innodb_undo_tablespaces, deprecated in MySQL 8.0.14, has been removed. (WL #16746) in 9.3.0
- deprecated The system variables innodb_log_file_size and innodb_log_files_in_group, deprecated in MySQL 8.0.30, have been removed. (WL #16743) in 9.3.0
- deprecated The Version Tokens plugin, which was deprecated in MySQL 9.2.0, has been removed in this release. (WL #16614) in 9.3.0
- deprecated This release adds the CREATE_SPATIAL_REFERENCE_SYSTEM privilege, which allows the user to execute any of the statements CREATE SPATIAL REFERENCE SYSTEM, CREATE OR REPLACE SPATIAL REFERENCE SYSTEM, and DROP SPATIAL REFERENCE SYSTEM. Use of the SUPER privilege for this purpose should now be… in 9.2.0
- deprecated Implemented the standards-compliant my_char_traits<unsigned char> for use as a drop-in replacement for std::char_traits<unsigned char>, which was deprecated in Clang 18 and removed in Clang 19. (Bug #37273525, Bug #37785339) in 9.2.0
- deprecated The entries present in the mysql_option.option_usage table depended on whether the Option Tracker was installed before or after the Audit Log. See Option Tracker Component, and MySQL Enterprise Audit Plugin (Deprecated), for more information. (Bug #37037438) in 9.2.0
- deprecated This release adds a Connection Control component (component_connection_control) intended to replace the Connection Control plugins (see Connection Control Plugins). A single component takes the place of both plugins, which are now deprecated and subject to removal in a future version of MySQL. One… in 9.2.0
- deprecated Microsoft Windows: On Windows, MySQL Configurator no longer executes the deprecated FLUSH PRIVILEGES statement. (Bug #37170330) in 9.2.0
- deprecated The FLUSH PRIVILEGES statement is now deprecated, and causes a warning when issued. You should expect this statement to be removed in a future MySQL release. The following constructs are also deprecated, and now cause a warning when used: The features listed here do not cause any warnings but… in 9.2.0
- deprecated The FLUSH_PRIVILEGES privilege, and granting of this privilege in 9.2.0
- deprecated mysqladmin flush-privileges in 9.2.0
- deprecated mysqladmin reload. in 9.2.0
- deprecated Flushing of privileges by SIGHUP in 9.2.0
- deprecated Flushing of the caching_sha2 cache by FLUSH PRIVILEGES in 9.2.0
- deprecated Flushing of privileges by mysqladmin refresh in 9.2.0
- deprecated The Version Tokens plugin is now deprecated, and subject to removal in a future MySQL release. The following related features are also now deprecated, and raise deprecation warnings whenever they are invoked: Attempting to install the version_tokens plugin—or to start the server when this plugin… in 9.2.0
- deprecated The functions version_tokens_delete(), version_tokens_edit(), version_tokens_lock_exclusive(), version_tokens_lock_shared(), version_tokens_set(), version_tokens_show(), and version_tokens_unlock() in 9.2.0
- deprecated The VERSION_TOKEN_ADMIN privilege in 9.2.0
- deprecated The version_tokens_session and version_tokens_session_number server system variables in 9.2.0
Every release in between
fixUpdated the audit_log_rotate_on_size system variable to require the AUDIT_ADMIN privilege for modification. (Bug #38620615)
featureMySQL now supports a more modular and efficient auditing system with the introduction of the Audit Log component. This update splits the monolithic Audit Log software into smaller, more manageable components, encapsulated into MySQL components, making it easier to install, manage, and maintain.…
fixMySQL Server's clang-tidy configuration now consistently disables all brace checks, including hicpp-braces-around-statements, to prevent duplicate diagnostics. (Bug #38601902)
breakingA number of unused symbols were removed from the code base. (Bug #38557463)
fixThe cmake macro MYSQL_CHECK_PROTOBUF did not properly handle multiple calls when using system protobuf. Errors were returned similar to the following: ADD_LIBRARY cannot create imported target "ext::libprotobuf" because another target with the same name already exists. (Bug #38417986)
fixThe mysqlx_port server variable was not persisted in the my.ini file when set through the Type and Networking configuration page. (Bug #38728671)
fixMySQL Configurator treated single-quotes (') as part of the password. The configurator now correctly handles quoted passwords by removing any quotes, double quotes, or backticks from the beginning and end of the password. (Bug #38069029)
fixServer file permissions were not applied as specified with --server-file-permissions-access. Full access was granted regardless of the value defined. (Bug #38068994)
fixslow-query-log-file could be used even if the slow query log was not enabled. (Bug #38068822)
fixIt was possible to set the --general-log-file CLI option when the general log was disabled. As of this release, an error is returned. (Bug #38068775)
fixopen-win-firewall could be used when TCP/IP connections were disabled. As of this release, --open-win-firewall can only be used when TCP/IP connections are enabled. (Bug #38068699)
fixUpdating the password with MySQL Configurator took a long time. (Bug #37459271)
fixA number of issues were corrected in the Server API documentation. Our thanks to Daniël van Eeden for the contribution. (Bug #114671, Bug #117516, Bug #37329988, Bug #37615382, Bug #36526371)
breakingInnoDB: InnoDB redo logging error messages now include the current LSN and redo log capacity information. A new warning code ER_IB_WRN_REDO_DISABLED_INFO is added which includes the current LSN. A new error code ER_IB_MSG_LOG_WRITER_WAIT_ON_NEW_LOG_FILE_INFO is added to include the current log…
fixInnoDB: If an XA PREPARED transaction existed during a server shutdown or crash, restarting the server with a non-zero --innodb-force-recovery value caused InnoDB to incorrectly change the transaction state from PREPARED to ACTIVE. This could lead to issues ranging from assertion failures to…
fixInnoDB: InnoDB now generates unique rowid values in tables without primary keys more efficiently. (Bug #13395168)
breakingInnoDB: The field fk_max_recusive_level in dict_table_t struct is no longer used and has been removed. Our thanks to Xiaocong Ding for the contribution. (Bug #119063, Bug #38492574)
fixInnoDB: If the server closed during transaction commit, transactions in an already committed state could remain in the undo log. If the transaction is already committed, it is cleared from trx_sys->rw_trx_list during recovery, but is not cleared from active_tw_trxs of the trx_sys->shards. This…
fixInnoDB: When selecting blob data after a small partial update, incorrect results may be returned due to inconsistencies in the Multi-Version Concurrency Control (MVCC) for blob objects. (Bug #114138, Bug #36342348)
fixInnoDB: Concurrent execution of FLUSH TABLE FOR EXPORT with DROP TABLE and DML operations could result in a deadlock. (Bug #110485, Bug #35221441)
fixFixed an issue related to bulk inserts. (Bug #38208188)
featureMySQL Server now supports a new startup option, container_aware, which controls the server's ability to discover and adhere to CPU and memory resource limits set by a container. (WL #16937)
fixGraalVM performance metrics are now available on Windows. (Bug #38498718)
fixThe SHOW CREATE LIBRARY command generated HEX representations of binary libraries on x86_64 architectures with FFFFFF patterns before each byte with the high bit set. Our thanks to Akshat Nehra and the team at Amazon for the contribution. (Bug #118927, Bug #38458235)
fixThe table IDs reported in the I_S views for JSON Duality Views differed from those reported by ORACLE DB due to differences in calculation order, leading to inconsistent REFERENCED_TABLE_ID values when multiple Content_tree_nodes referred to the same base table. (Bug #38624596)
featureOption Tracker now supports MySQL Shell and MySQL Shell for VS Code. The following status variables were added: The following system variable was added: See Option Tracker Component. (WL #16659, WL #17000)
fixFixed an issue relating to Common Table Expressions (CTE). (Bug #38573285)
fixUsing the coalesce or any_value functions with specific JSON operations, such as json_search and json_remove, could cause an assertion failure. (Bug #38549573)
fixNegative year values were accepted as valid datetime values by one method, but not by another. Negative year values are now always reported as errors. (Bug #38487373)
fixFixed issues relating to executing specific SELECT queries. (Bug #38465147, Bug #38465178)
fixFixed an issue related to executing specific SQL queries. (Bug #38448700)
fixFixed an issue relating to SHOW CREATE TABLE. (Bug #38298692)
fixAs of this release, GROUPING() is permitted in queries without ROLLUP. (Bug #38168051)
fixQueries which used REGEXP took longer to execute as prepared statements than as direct queries. (Bug #114056, Bug #36326728)
featureMySQL Server now supports a new GTID set data structure, providing a simpler, more modern, and efficient library for handling Global Transaction IDs. This implementation replaces the existing library, offering improved maintainability and performance. (WL #16076)
securityImportant Change: MySQL now supports enhanced security and flexibility with the relocation of MD5() and SHA1() SQL functions to a separate component, allowing for greater control over deprecated hashing algorithms and improved compliance with security standards. You can install the classic_hashing…
securityFixed an issue relating to authentication. (Bug #118447, Bug #38077617)
securityThe error message returned when attempting to create a user with an existing user name was unclear. (Bug #28331, Bug #11746738)
featureImportant Change: In previous releases, Foreign Key constraints and cascade operations were handled by the InnoDB storage engine. As of this release, they are handled by the SQL layer of the MySQL Server. This change allows for more comprehensive binary logs and improved analytics. This change is…
featureThe bundled version of opentelemetry-cpp was upgraded to version 1.23.0. (Bug #38483354)
+50 more items in the release notesfeatureMySQL now supports enhanced role management with the introduction of a new option, activate_mandatory_roles. If activate_all_roles_on_login is enabled, activate_mandatory_roles is ignored, and both mandatory and granted roles are activated. If activate_all_roles_on_login is disabled and…
fixFixed an issue related to audit log strategy. (Bug #38223011)
fixImproved performance related to adding multiple general_sql_command.str fields to an Enterprise Audit filter. (Bug #38053242)
fixFixed an issue related to audit_log_read performance. (Bug #36281295, Bug #38275868)
securitySecurity Enhancement: The default value of caching_sha2_password_digest_rounds is increased to 10,000. (WL #16974)
fixUnder certain circumstances, the keyring component could not read the configuration file if the configured data directory path was shorter than the default path. (Bug #38078884)
fixGeneral-Purpose Keyring Functions did not handle invalid parameters correctly. (Bug #38055488)
deprecatedMySQL now provides an INTERPRET_UTF8_AS_UTF8MB4 SQL mode that controls whether the deprecated utf8 character set and utf8_* collation aliases in SQL statements are interpreted as utf8mb3 or utf8mb4. The mode is disabled by default, preserving the previous utf8mb3 interpretation. When enabled, utf8…
fixSolaris: Clang and GCC now can be used for compiling MySQL on Solaris. (Bug #30562248)
fixOpenSSL 3 is now used on Solaris. (Bug #38193362)
fixUpgraded the bundled googletest library to version 1.17. (Bug #38152017)
fixUpgraded the bundled libbacktrace library to the latest version (April 2025). (Bug #38151970)
fixMySQL Server now bundles libzip and provides CMAKE options to choose between the bundled or system library when compiling the server. (Bug #38109824)
fixThe minimum required version of CMAKE is now 3.17.5, for supported platforms. (Bug #38090672)
fixCompiler warnings were logged when building MySQL Server with GCC 15. (Bug #37721464)
fixThe MYSQL_OPTION.OPTION_USAGE.OPTION_NAME field used a different character set than PERFORMANCE_SCHEMA.MYSQL_OPTION.OPTION_NAME. As of this release, the CLUSTER_ID, SERVER_ID, and OPTION_NAME fields of MYSQL_OPTION.OPTION_USAGE use utf8mb4_general_ci instead of ascii. (Bug #38230424)
fixThe sql_errno() method in the mysql_command_error_info service returned 0 when a command failed, instead of the appropriate error code. (Bug #38178087)
fixThe server plugin system variable flag PLUGIN_VAR_NOSYSVAR was not processed properly. Variables defined with this flag were displayed when they should be hidden. (Bug #37654916)
fixErrors were not handled correctly when using the keyring UDF plugin and executing specific queries with the keyring_key_generate function. (Bug #37501458)
featureTelemetry component introduces a secret decoding service. This enables you to create your own secret-decoding service for OpenTelemetry. The following system and status variables were added: (WL #16647)
fixMicrosoft Windows: If the MySQL Server was configured as a process, not as a service, the Configurator's Starting the server step could take a long time to complete due to delays in detecting when the server was ready to receive connections. (Bug #38068649)
fixMicrosoft Windows: Shared Memory connections, --enable-shared-memory=true, failed when they were the only enabled protocol during server configuration. (Bug #38068619)
fixMicrosoft Windows: It was not possible to create usernames with escaped characters, using single or double quotes, during new server configuration. (Bug #37459624)
fixMicrosoft Windows: When upgrading, for example from version 9.1.0 to 9.2.0, using a non-default port, such as 3307, messages could be generated indicating a connection issue to port 3306, even if the server configuration is correct and the upgrade is successful. Errors were returned similar to the…
fixMicrosoft Windows: The CLI help for MySQL Configurator now correctly displays the list of supported values for configurable server options. (Bug #37458648)
fixconfig-type Configurator CLI option did not accept any values. (Bug #38068684)
featureConnection control now supports exempting unknown users from delay criteria, introducing a new system variable component_connection_control.exempt_unknown_users that allows administrators to configure whether failed connection attempts without user credentials should be penalized. This enhancement…
deprecatedThe group_replication_allow_local_lower_version_join system variable, deprecated in MySQL 8.4.0, has now been removed. (WL #16019)
deprecatedThe replica_parallel_type system variable, deprecated in MySQL 8.0.29, has now been removed. (WL #13955)
deprecatedThe SCRAM-SHA-1 authentication method for SASL LDAP authentication is now deprecated, and subject to removal in a future version of MySQL. You are encouraged to use SCRAM-SHA-256 instead. As part of this work, the default value for the authentication_ldap_sasl_auth_method_name system variable has…
deprecatedThe following deprecated plugins are removed in this release: (WL #16801)
deprecatedsemisync_master replaced by semisync_source.
deprecatedsemisync_slave replaced by semisync_replica.
fixFixed an issue related to executing certain UPDATE statements. (Bug #37590580) References: This issue is a regression of: Bug #31562881.
fixInnoDB: The dict_stats_analyze_index() function could discard optimal index-based access paths, resulting in suboptimal performance for large tables when empty index statistics are read concurrently or an error leads to empty index statistics. Our thanks to Casa Zang and the Tencent team for the…
fixCreating a thread for parallel scan may fail, resulting in assertion failures when it fell back to single-thread mode. Errors were returned similar to the following: Assertion failure: row0pread.h:306:active >= n_threads (Bug #38325137)
deprecatedThe keyring_okv plugin is deprecated and replaced by the keyring_kmip component, enabling secure communication with Key Management Interoperability Protocol (KMIP) 1.1-compatible products such as Oracle Key Vault, Gemalto SafeNet KeySecure Appliance, Townsend Alliance Key Manager, and Entrust…
featureThis version includes the MySQL Diagnostic Monitor (mysqldm), a new client tool designed to collect server diagnostic information. To supply to Oracle Support for efficient issue resolution, for example. The mysqldm client tool runs a predefined set of queries on the server, storing the results in…
securityMySQL Replication supports enhanced security features with encryption now being enabled for all replication connections by default. With this configuration change, the default value of the SOURCE_SSL option in the CHANGE REPLICATION SOURCE TO Statement has been changed to 1, the default value of…
deprecatedMicrosoft Windows: MySQL Configurator command-line option names and aliases have been revised to more clearly indicate their purpose. Multiword options accept either hyphens or underscores as separators, but the separator styles cannot be mixed within one option name. Deprecated names and aliases…
+74 more items in the release notesfixThe LDAP SASL authentication plugin could not be installed successfully when the Option Tracker component was already installed. (Bug #37983282)
breakingImportant Change: IFNULL() used in a LIKE clause raised ER_CANT_AGGREGATE_2COLLATIONS. This was due to the fact that IFNULL() returns a binary collation and the collation derivation NONE, but NONE was not allowed in this context, leading to the error. We solve this problem by making a slight…
fixCREATE TABLE with a generated column expression, such as a CHECK constraint, which referenced a non-ASCII identifier caused a syntax error if the current client character set was not compatible with UTF-8 (for example, GBK). (Bug #30453221)
fixGroup Replication: Defining TASK_EVENT_TRACE in gcs_profile.in broke the build of GCS/XCOM in MySQL Server's Group Replication GCS component, returning errors similar to member reference type 'connection_descriptor *' is a pointer; did you mean to use '->'?. (Bug #38042851)
fixmacOS: Aligned the buffer used for reading status variables. This fixes a potential issue with MacOS/M1 platforms.
fixUpgraded the bundled libcurl library to version 8.14.1. (Bug #38042758)
fixMySQL Server now supports CMake 4, ensuring compatibility with future CMake versions where support for versions prior to 3.10 is expected to be discontinued. (Bug #38027636)
fixUse -DWITH_PROTOBUF=system for relevant .proto files, which can reduce build times. (Bug #38022751)
breakingRemoved a warning in gcs_xcom_networking.cc. (Bug #38021787)
fixThe system bzip2 library is now located by cmake before linking with -lbz2. (Bug #38005363)
breakingMySQL Server now requires GCC version 11 or later to compile. As part of this change, support for ARM systems using RHEL7 is removed in this release, due to the lack of availability of GCC 11 on that platform. (Bug #38004285)
breakingRemoved workaround for old versions of CMake. Note The minimum version of CMake supported for building MySQL is 3.14.6. (Bug #37901122)
fixThe included ICU library has been upgraded to version 77-1. (Bug #37870791)
fixThe included zstd library has been upgraded to version 1.5.7. (Bug #37869972)
deprecatedWarnings raised by Clang 20 for non-trivially copyable types, deprecated literal operators, and incorrect main function declarations are no longer generated. (Bug #37785251)
breakingRemoved warnings observed when compiling the server with Clang 20. (Bug #37785251)
fixDisabled clang::musttail when building with GCC 15. (Bug #37776018)
fixWorked around an issue with list handling in certain older versions of CMake. (Bug #37709169)
fixSome compiler features tests did not pass when building with -fprofile-use. (Bug #37707556)
fixOn RHEL 9, MySQL Server is now built using GCC 14. (Bug #37702396)
fixThe version of Boost needed to build MySQL has been raised from 1.85.0 to 1.87.0. (Bug #37403602)
fixThe linker tried to use the empty Cmake variable ${ICU_LIBRARIES}, even though the correct library (ext::icu) was already linked elsewhere. (Bug #36524167)
fixCompiling on macOS looked explicitly for [email protected] but now looks for the generic openssl symlink instead, to allow for openssl@3. (Bug #35468370)
deprecatedOn MacOS, silenced deprecation warnings generated by Xcode 14; this includes suggestions to use snprintf(3) instead of sprintf(3), and warnings about possible loss of precision when converting from 64-bit to 32-bit integers. (Bug #34776172)
deprecatedMicrosoft Windows: As MySQL Enterprise Edition 9.4.0 includes a new The MySQL Enterprise Firewall Component), intended to be a replacement for the now deprecated MySQL Enterprise Firewall plugin, the MySQL Configurator now supports enabling the firewall component and upgrading to it from the…
featureFor new server configurations: Users can choose to enable the new firewall component.
featureFor server reconfigurations: Users can choose to disable the firewall, enable the new firewall component (if the firewall was not enabled before), keep the old firewall plugin, or upgrade the firewall plugin to the firewall component.
deprecatedAs part of ongoing work to transition from MySQL plugins to MySQL components, the API used to write MySQL plugins is now deprecated and subject to removal in a future version of MySQL. This change has the following effects: Keyring Components Versus Keyring Plugins, provides a summary of the…
deprecatedThe MySQL server's --early-plugin-load option is deprecated. Starting the server with this option now raises a deprecation warning.
deprecatedA deprecation warning is now issued whenever a keyring plugin is loaded.
deprecatedThe system variable temptable_use_mmap, deprecated in version 8.0.26, is removed in this version. (WL #16745)
deprecatedThe SQL functions MD5() and SHA1() are deprecated as of this release and scheduled for removal in a future release. (WL #16955)
deprecatedPackaging: This release includes a MySQL Enterprise Firewall component (see The MySQL Enterprise Firewall Component) intended to replace the firewall plugin, which is now deprecated and thus subject to removal in a future version of MySQL. The component implements most of the plugin's…
featureJavaScript programs using the MySQL Multilingual Engine component now supports libraries written in WebAssembly (see https://webassembly.org/). Such a library can be created using CREATE LIBRARY ... LANGUAGE WASM and the hexadecimal or base64-encoded representation of a compiled WebAssembly…
featureMySQL now supports JSON duality views, which provide a way to expose data stored in relational tables as JSON documents. Such views can be created, altered, dropped, and viewed using CREATE JSON DUALITY VIEW and ALTER JSON DUALITY VIEW (both implemented in this release); DROP VIEW and SHOW CREATE…
featureImportant Change: Added the mysql client --commands option, which enables or disables most mysql client commands. This option is disabled by default. To enable it, start the client with --commands or --commands=ON. For a complete list of all commands affected by this option, and additional…
featureInnoDB: To improve debugging, the buf_page_t and buf_block_t structure's metadata is now printed to the error log. (Bug #35115629) References: See also: Bug #35115601.
featureGroup Replication: Added the error ER_GRP_RPL_APPLIER_THD_KILLED, to distinguish when the applier thread has been terminated using SQL KILL, rather than stopped by an error. (Bug #37764717)
featureIncreased the historical 1024-byte limit when printing the current query during signal handling to 1073741824 (1024 * 1024 * 1024). (Bug #37603354)
featureBinary packages that include curl rather than linking to the system curl library have been upgraded to use curl 8.14.1. (Bug #37389565)
+95 more items in the release notesfixIt was possible in some cases to grant a user the EXECUTE privilege, but subsequently to be unable to revoke it from the same user. (Bug #37570206)
fix<COMMAND_CLASS> was not populated for <NAME>Execute</NAME>. For more information, see Logging Specific Event Classes. (Bug #36686351)
securityThis release introduces a MySQL component, component_keyring_hashicorp, which takes the place of the HashiCorp Vault keyring plugin; that plugin and its associated system variables are now deprecated (and subject to removal in a future version of MySQL). Like the plugin, the component allows…
deprecatedGroup Replication: The OpenSSL Engine interface is deprecated, and is no longer being included in OpenSSL v3 main packages by some Linux distributions, including Fedora. To avoid build issues, the usage of the OpenSSL Engine interface by the Group Communication System (GCS) is now restricted to…
fixLinux: Use /usr/bin/gcc (GCC 14.2.1) when building the server on Oracle Linux 10. (Bug #37616148)
fixLinux: Use --experimental_allow_proto3_optional when building with protoc version 3.14 or earlier. (Bug #37579947)
fixMicrosoft Windows: The server could not be built using Visual Studio 17.13.1 with MSVC_CPPCHECK enabled. (Bug #36925076)
fixUpgraded the bundled Curl library to version 8.12.1. (Bug #37633587)
fixDisabled the -ftls-model=initial-exec option when compiling MySQL on FreeBSD. (Bug #37613105)
fixAbseil could not be built on FreeBSD. (Bug #37611924)
fixDo not read share/charsets/Index.xml when running comp_err. (Bug #37569683)
fixThe file mysql_version.cmake was included multiple times. (Bug #37559512)
breakingRemoved the unused file strings/utr11-dump.cc. (Bug #37549844)
fixThe bundled version of opentelemetry-cpp was upgraded to version 1.19.0. (Bug #37506554)
fixFixed a large number of warnings generated by clang-tidy. (Bug #37471922)
fixinclude/my_systime.h included std::chrono, which was unneeded, and which has now been removed. (Bug #37458343)
fixIn order to use xxhash functions independently from the lz4 library (bundled or source), we compiled xxhash.c into our own binaries, which required using a great many CMake directives. Instead, we now build an interface library for xxhash, and link with that wherever such functions are used. (Bug…
featureGroup Replication: Added the Group Replication Primary Election component, which makes it possible to specify the most-up-to-date selection method for choosing a new primary in the event of failover. The Group Replication plugin is a prerequisite for this component, which must be installed on each…
featureThe Boolean used key in the JSON format employed for usage data has been replaced with a counter, usedCounter. After upgrading to this release, no used members are added or updated in this data by the Option Tracker.
deprecatedNDB Cluster: The --restore-privilege-tables option for ndb_restore, which was deprecated in NDB 8.0.16, has now been removed. (Bug #36298807)
deprecatedReplication: The replica_parallel_workers server system variable can no longer be set to 0; the minimum permitted value is now 1. (WL #13957)
deprecatedThe system variable innodb_undo_tablespaces, deprecated in MySQL 8.0.14, has been removed. (WL #16746)
deprecatedThe system variables innodb_log_file_size and innodb_log_files_in_group, deprecated in MySQL 8.0.30, have been removed. (WL #16743)
deprecatedThe Version Tokens plugin, which was deprecated in MySQL 9.2.0, has been removed in this release. (WL #16614)
breakingRemoved extraneous pipe characters (|) from the first example.
featureMySQL JavaScript programs now provide localization and internationalization of numbers, dates, and other values by supporting the Intl global object. MySQL locales map to JavaScript locales by substituting a dash character for the underscore; for example, setting lc_time_names = "ja_JP" means that…
featureThe statements ALTER PROCEDURE and ALTER FUNCTION now accept a USING clause and so can add, replace, or remove a list of libraries imported by the named JavaScript stored procedure or stored function. See the descriptions of these statements for more information and examples.
featureCREATE LIBRARY now supports a COMMENT clause. This comment is shown in the output of SHOW CREATE LIBRARY and SHOW LIBRARY STATUS (see next item). It is also shown in the ROUTINE_COMMENT column of the Information Schema ROUTINES table; the LIBRARIES table also adds a LIBRARY_COMMENT column for…
featureThis release also implements a SHOW LIBRARY STATUS statement which provides basic information about one or more JavaScript libraries. Like SHOW PROCEDURE STATUS, this statement supports LIKE and WHERE clauses for filtering the output.
featureThe ALTER LIBRARY statement implemented in this release makes it possible to update the comment for a JavaScript library.
featureThe status variables Com_alter_library and Com_show_library_status, added in this release, provide counts of ALTER LIBRARY and SHOW LIBRARY STATUS statements, respectively.
featureThe Option Tracker component has added support for two MySQL features—the traditional MySQL Optimizer, and the MySQL Hypergraph Optimizer (available in MySQL HeatWave only). See Option Tracker Supported Components, for more information. (WL #16548)
featureYou can now configure a network namespace for your telemetry endpoints on Linux platforms. The following system variables are added: (WL #16735)
featureImportant Change: Beginning with this release, it is no longer possible to downgrade between individual MySQL Innovation series releases, even within the same series. For example, were a version 9.3.1 to be released, it would not be possible after upgrading to it to downgrade back from MySQL 9.3.1…
featureImportant Change: For platforms on which OpenSSL libraries are bundled, the linked OpenSSL library for MySQL Server has been updated to version 3.0.16. For more information, see OpenSSL 3.0 Series Release Notes and OpenSSL Security Advisory (11th February 2025). (Bug #36033684)
featurePerformance: The output process of the mysql client for binary values (printed as hexadecimal strings) in query results has been optimized, speeding up slightly the output of large result sets containing binary values. (Bug #37334107)
featureAdded Enterprise Linux 10 (EL10) support. (Bug #37592019)
featureThe signature of the handlerton drop_database_t API has been changed: instead of the database path, it now accepts the database name as a parameter. The change makes the API more efficient. (Bug #37191149)
featureThe mysqldump utility can now provide logical dumps of information about user accounts, writing the appropriate CREATE USER and GRANT SQL statements to the dump, when run with the --users command line option introduced in this release. You can cause the CREATE USER statements generated by…
featureThe mysql client now displays query execution times with three decimal places of precision to show milliseconds. Our thanks to Marcelo Altmann for the contribution. (Bug #117270, Bug #37510263)
+136 more items in the release notesfixThe database cache was not flushed properly following execution of DROP USER. (Bug #37132323)
deprecatedThis release adds the CREATE_SPATIAL_REFERENCE_SYSTEM privilege, which allows the user to execute any of the statements CREATE SPATIAL REFERENCE SYSTEM, CREATE OR REPLACE SPATIAL REFERENCE SYSTEM, and DROP SPATIAL REFERENCE SYSTEM. Use of the SUPER privilege for this purpose should now be…
fixFailed password validation was not always handled correctly. (Bug #37041439)
fixProcess memory usage grew when the libmysqlclient API user tried to cache and reuse a prepared statement, preparing it once and then calling either of mysql_stmt_bind_param() or mysql_stmt_bind_named_param() followed by mysql_stmt_execute(), repeatedly without calling the matching…
fixThe Doxygen comments for the OK_Packet did not cover all possible cases; this has been updated so that it now accurately reflects the data actually sent by the server. (Bug #35630063) References: See also: Bug #35358417, Bug #36374232.
fixZero rows resulted (where one row was expected) when selecting from a view created with its connection and client character set to latin1, where a query on the view used utf8 as its connection and client character set, the view contained literal values with non-ASCII characters, and the query…
fixmacOS: Use OBJECT library in place of routing_guidelines when compiling with Xcode. (Bug #37350937)
breakingmacOS: Removed obsolete CMake code from MacOS builds. (Bug #37258036)
fixmacOS: It is now possible to build MySQL using the Homebrew version of Clang. (Bug #37256912)
breakingmacOS: Removed warnings of the form ld: warning: ignoring duplicate libraries and warnings specific to xcodebuild. (Bug #37065301)
fixMicrosoft Windows: Windows builds are now configured with -DWITH_ASAN. (Bug #37309813)
fixMicrosoft Windows: Disabled windows compiler warnings C26445 and C26821 in cmake/msvc_cppcheck.cmake. Both of these relate to MSVC substitution of gsl::span for std::span, which is not used for MySQL. (Bug #37158156)
breakingMicrosoft Windows: Removed compiler warnings issued when building MySQL with Visual Studio 2022. (Bug #113870, Bug #36256477)
fixMicrosoft Windows: The CMake option -DWITH_SASL is not supported for building MySQL on Windows. Attempting to use this option when doing so now causes the build to terminate with an error. (Bug #113558, Bug #36155972)
deprecatedImplemented the standards-compliant my_char_traits<unsigned char> for use as a drop-in replacement for std::char_traits<unsigned char>, which was deprecated in Clang 18 and removed in Clang 19. (Bug #37273525, Bug #37785339)
breakingRemoved or fixed issues in a number of copyright header files. (Bug #37238155)
breakingRemoved a maybe-uninitialized error found in sql/item.cc when building MySQL with GCC 14. (Bug #37157201)
breakingRemoved an error in mysql_prepare_create_table() (in the file sql/sql_table.cc) found when compiling MySQL with XCode 16. (Bug #37068527)
deprecatedThe entries present in the mysql_option.option_usage table depended on whether the Option Tracker was installed before or after the Audit Log. See Option Tracker Component, and MySQL Enterprise Audit Plugin (Deprecated), for more information. (Bug #37037438)
deprecatedThis release adds a Connection Control component (component_connection_control) intended to replace the Connection Control plugins (see Connection Control Plugins). A single component takes the place of both plugins, which are now deprecated and subject to removal in a future version of MySQL. One…
deprecatedMicrosoft Windows: On Windows, MySQL Configurator no longer executes the deprecated FLUSH PRIVILEGES statement. (Bug #37170330)
deprecatedThe FLUSH PRIVILEGES statement is now deprecated, and causes a warning when issued. You should expect this statement to be removed in a future MySQL release. The following constructs are also deprecated, and now cause a warning when used: The features listed here do not cause any warnings but…
deprecatedThe FLUSH_PRIVILEGES privilege, and granting of this privilege
deprecatedmysqladmin flush-privileges
deprecatedmysqladmin reload.
deprecatedFlushing of privileges by SIGHUP
deprecatedFlushing of the caching_sha2 cache by FLUSH PRIVILEGES
deprecatedFlushing of privileges by mysqladmin refresh
deprecatedThe Version Tokens plugin is now deprecated, and subject to removal in a future MySQL release. The following related features are also now deprecated, and raise deprecation warnings whenever they are invoked: Attempting to install the version_tokens plugin—or to start the server when this plugin…
deprecatedThe functions version_tokens_delete(), version_tokens_edit(), version_tokens_lock_exclusive(), version_tokens_lock_shared(), version_tokens_set(), version_tokens_show(), and version_tokens_unlock()
deprecatedThe VERSION_TOKEN_ADMIN privilege
deprecatedThe version_tokens_session and version_tokens_session_number server system variables
featureJavaScript programs supported by the MLE Component, available as part of MySQL Enterprise Edition, now supports access from JavaScript routines to user-defined functions, procedures, and variables. MySQL stored functions and procedures can be accessed using the Schema methods getFunction() and…
featureThe MLE component, available as part of MySQL Enterprise Edition, now supports reusable JavaScript libraries containing functions which can be called from other JavaScript stored programs. JavaScript libraries can be managed using the CREATE LIBRARY and DROP LIBRARY SQL statements added in this…
featureInnoDB: During recovery, IBUF merges were disabled for all recovery batches except for the last batch, but is now disabled for all batches. This change prevents the addition of new redo log entries during recovery, as they led to deadlock and recovery performance degradation with reads and writes…
featureMicrosoft Windows: On Windows, MySQL Configurator has added a command-line interface for configuring a MySQL Server installation. See MySQL Configurator CLI, for more information. A known limitation of this release: the new CLI only supports the configure action. (WL #16564)
featureBinary packages that include curl rather than linking to the system curl library have been upgraded to use curl 8.11.1. (Bug #37389565)
featureRefactored code to take advantage of OpenSSL 3.x functionality to improve performance for cryptographic operations, such as those performed by the MySQL MD5() and SHA2() functions. (Bug #116939, Bug #37185170, WL #16504)
featureAdded a source code static analysis tool. For usage details, see scripts/static_analysis.md in the source code or execute python3 ./scripts/static_analysis.py --help for additional help. Use this to check single commits or the entire source code repository. (WL #16329)
featureConverted the caching SHA-2 authentication plugin to use the event component API instead of the audit log plugin API. This also removes the sha2_cache_cleaner audit plugin. (WL #16572)
+112 more items in the release notes