MySQL 8.0 has been known for its innovative pace, introducing new breaking changes in minor releases within the 8.0 series, which has been a great debate among the MySQL community and a long ask to have a more stable release cadence within the same minor series.
Oracle has listened to MySQL users and has announced a new release model, where it introduces the concept of LTS releases and Innovate releases.
On the 30th of April, the first Long Term Support release was announced. This release received the version number of 8.4. Let’s have a look at what is new in comparison to the previous 8.0.
What is new?
Here is a list of the most notable changes in the release:
- The Authentication plugin
mysql_native_passwordhas been disabled by default. The new default iscaching_sha2_password. - MySQL GTID has been extended to support GTID TAGS - This work allows for tagging a group of transactions to be easily identifiable on servers.
- MySQL Replication terminology changes - The terms MASTER/SLAVE have been completely removed in this version. This affects commands such as
SHOW MASTER STATUSand also STATUS variables likeCom_change_masterfor exmple. AUTO_INCREMENTmodifier used withFLOATorDOUBLEwas deprecated in 8.0 and now removed in 8.4. Attempting to create a new table using this combination now results in an error.- Automatic updates to histograms have been added to histograms created with
AUTO UPDATEoption. Updates automatically happen whenANALYZE TABLEstatements is used. - New privileges added for
FLUSH PRIVILEGESstatement and forOPTIMIZE LOCAL TABLE(NO_WRITE_TO_BINLOG). - Multiple InnoDB variables have had their default recalculated and adjusted.
- Mysqldump option
--output-as-versionwas added. This allow users to take logical backups from previous versions using the optionsBEFORE_8_2_0(for 8.0.23 until 8.2),BEFORE_8_0_23orSERVER(uses the latest version). - Shutdown and startup messages have been enhanced.
FLUSH HOSTSstatement has been removed. Users need to execute a directTRUNCATE TABLE performance_schema.host_cacheinstead.
Summary
Oracle MySQL has presented a variety of changes but nothing substantial. Most of the changes are housekeeping and removal from previous versions. One of the substantial improvements is around GTID Tags. Also, the new release model with 3 Innovate releases before the LTS, allowing users to preview and test new functionality before they are incorporated into an LTS release.
Readyset is a drop-in performance layer that integrates with your existing MySQL infrastructure without requiring changes to your application code. This makes it ideal when you're already experiencing the stress of updating your database.
If you're still on legacy MySQL 5.7 or below, or if you need to upgrade from 8.0, partner with Readyset and get a fully-managed version of Readyset Cloud in production.
Authors