Upgrading from MariaDB 10.4 to MariaDB 10.5

You are viewing an old version of this article. View the current version here.

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:

  1. Modify the repository configuration, so the system's package manager installs MariaDB 10.4. For example,
  2. Stop MariaDB.
  3. 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
  4. Install the new version of MariaDB.
  5. Make any desired changes to configuration options in option files, such as my.cnf. This includes removing any options that are no longer supported.
  6. Start MariaDB.
  7. Run mysql_upgrade.
    • mysql_upgrade does two things:
      1. Ensures that the system tables in the#mysql database are fully compatible with the new version.
      2. 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

OptionOld default valueNew default value
innodb_adaptive_hash_indexONOFF
innodb_checksum_algorithmcrc32full_crc32
innodb_log_optimize_ddlONOFF
slave_parallel_modeconservativeoptimistic
performance_schema_max_cond_classes8090

Options That Have Been Removed or Renamed

The following options should be removed or renamed if you use them in your option files:

OptionReason
innodb_checksumsDeprecated and functionality replaced by innodb_checksum_algorithms in MariaDB 10.0.
innodb_locks_unsafe_for_binlogDeprecated in MariaDB 10.0. Use READ COMMITTED transaction isolation level instead.
innodb_stats_sample_pagesDeprecated in MariaDB 10.0. Use innodb_stats_transient_sample_pages instead.
innodb_rollback_segmentsDeprecated and replaced by innodb_undo_logs in MariaDB 10.0.
max_long_data_sizeDeprecated and replaced by max_allowed_packet in MariaDB 5.5.
multi_range_countDeprecated and has had no effect since MariaDB 5.3.
timed_mutexesDeprecated and has had no effect since MariaDB 5.5.
thread_concurrencyDeprecated 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.

OptionReason
innodb_undo_logsIt always makes sense to use the maximum number of rollback segments.
innodb_buffer_pool_instancesHaving more than one buffer pool is no longer necessary.
innodb_log_files_in_groupRedo log was unnecessarily split into multiple files. Limited to 1 from MariaDB 10.5.
innodb_log_optimize_ddlProhibited optimizations.
innodb_page_cleanersHaving more than one page cleaner task no longer necessary.
iinnodb_background_scrub_data_compressed
innodb_background_scrub_data_check_interval
innodb_scrub_logNever really worked as intended, redo log format is being redone.
innodb_scrub_log_speedNever 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.

See Also

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.