▸1. The New Release Model: LTS vs Innovation
With MySQL 8.4, Oracle split the server release train into two distinct tracks:
- 1LTS (Long Term Support): Published every 2 years with 5 years of premier maintenance and 3 years of extended support. No experimental syntax additions or breaking protocol changes are introduced. Designed strictly for mission-critical enterprise production.
- 2Innovation Releases: Published approximately every 3 months. Designed for early adopters to test bleeding-edge capabilities, with each release replaced by the next innovation milestone.
▸2. Top Production Migration Hazard: mysql_native_password
The single greatest source of post-migration outages in MySQL 8.4 is database authentication:
- •
mysql_native_passwordis now disabled by default. - •Outdated application drivers (older JDBC, PHP PDO, Python mysqlclient) will fail with
ERROR 1045 (28000): Access denied for user.
sql
-- 1. Identify legacy accounts requiring plugin migration
SELECT user, host, plugin FROM mysql.user WHERE plugin = 'mysql_native_password';
-- 2. Migrate accounts to modern caching_sha2_password
ALTER USER 'app_user'@'%' IDENTIFIED WITH caching_sha2_password BY 'production_secure_pass_2026';▸3. Removed Deprecated Server Variables
The following legacy variables are completely excised in MySQL 8.4; if present in your my.cnf / my.ini files, the server daemon will abort startup with fatal errors:
- •
innodb_log_file_size(Replaced by modern dynamicinnodb_redo_log_capacity) - •
innodb_log_files_in_group - •
expire_logs_days(Replaced bybinlog_expire_logs_seconds)