Upgrading from MariaDB 10.4 to MariaDB 10.5
Contents
MariaDB 10.5 is a development release, and should not be used in production. Details on this page may change frequently.
How to Upgrade
Before you upgrade, it would be best to take a backup of your database. This is always a good idea to do before an upgrade. We would recommend Mariabackup.
The suggested upgrade procedure is:
- Modify the repository configuration, so the system's package manager installs MariaDB 10.4. For example,
- On Debian, Ubuntu, and other similar Linux distributions, see Updating the MariaDB APT repository to a New Major Release for more information.
- On RHEL, CentOS, Fedora, and other similar Linux distributions, see Updating the MariaDB YUM repository to a New Major Release for more information.
- On SLES, OpenSUSE, and other similar Linux distributions, see Updating the MariaDB ZYpp repository to a New Major Release for more information.
- Stop MariaDB.
- Uninstall the old version of MariaDB.
- On Debian, Ubuntu, and other similar Linux distributions, execute the following:
sudo apt-get remove mariadb-server
- On RHEL, CentOS, Fedora, and other similar Linux distributions, execute the following:
sudo yum remove MariaDB-server
- On SLES, OpenSUSE, and other similar Linux distributions, execute the following:
sudo zypper remove MariaDB-server
- On Debian, Ubuntu, and other similar Linux distributions, execute the following:
- Install the new version of MariaDB.
- On Debian, Ubuntu, and other similar Linux distributions, see Installing MariaDB Packages with APT for more information.
- On RHEL, CentOS, Fedora, and other similar Linux distributions, see Installing MariaDB Packages with YUM for more information.
- On SLES, OpenSUSE, and other similar Linux distributions, see Installing MariaDB Packages with ZYpp for more information.
- Make any desired changes to configuration options in option files, such as
my.cnf
. This includes removing any options that are no longer supported. - Start MariaDB.
- Run mysql_upgrade.
mysql_upgrade
does two things:- Ensures that the system tables in the#mysql database are fully compatible with the new version.
- Does a very quick check of all tables and marks them as compatible with the new version of MariaDB .
Incompatible Changes Between 10.4 and 10.5
On most servers upgrading from 10.4 should be painless. However, there are some things that have changed which could affect an upgrade:
Options That Have Changed Default Values
Option | Old default value | New default value |
---|---|---|
innodb_adaptive_hash_index | ON | OFF |
innodb_checksum_algorithm | crc32 | full_crc32 |
innodb_log_optimize_ddl | ON | OFF |
slave_parallel_mode | conservative | optimistic |
performance_schema_max_cond_classes | 80 | 90 |
Options That Have Been Removed or Renamed
The following options should be removed or renamed if you use them in your option files:
Option | Reason |
---|---|
innodb_checksums | Deprecated and functionality replaced by innodb_checksum_algorithms in MariaDB 10.0. |
innodb_locks_unsafe_for_binlog | Deprecated in MariaDB 10.0. Use READ COMMITTED transaction isolation level instead. |
innodb_stats_sample_pages | Deprecated in MariaDB 10.0. Use innodb_stats_transient_sample_pages instead. |
innodb_rollback_segments | Deprecated and replaced by innodb_undo_logs in MariaDB 10.0. |
max_long_data_size | Deprecated and replaced by max_allowed_packet in MariaDB 5.5. |
multi_range_count | Deprecated and has had no effect since MariaDB 5.3. |
timed_mutexes | Deprecated and has had no effect since MariaDB 5.5. |
thread_concurrency | Deprecated and has had no effect since MariaDB 5.5. |
Deprecated Options
The following options have been deprecated. They have not yet been removed, but will be in a future version, and should ideally no longer be used.
Option | Reason |
---|---|
innodb_undo_logs | It always makes sense to use the maximum number of rollback segments. |
innodb_buffer_pool_instances | Having more than one buffer pool is no longer necessary. |
innodb_log_files_in_group | Redo log was unnecessarily split into multiple files. Limited to 1 from MariaDB 10.5. |
innodb_log_optimize_ddl | Prohibited optimizations. |
innodb_page_cleaners | Having more than one page cleaner task no longer necessary. |
iinnodb_background_scrub_data_compressed | |
innodb_background_scrub_data_check_interval | |
innodb_scrub_log | Never really worked as intended, redo log format is being redone. |
innodb_scrub_log_speed | Never really worked as intended, redo log format is being redone. |
Major New Features To Consider
You might consider using the following major new features in MariaDB 10.5:
- The S3 storage engine allows one to archive MariaDB tables in Amazon S3, or any third-party public or private cloud that implements S3 API.