Upgrading from MariaDB 10.4 to MariaDB 10.5

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

How to Upgrade

For Windows, see Upgrading MariaDB on Windows instead.

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

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_rollback_segmentsDeprecated and replaced by innodb_undo_logs in MariaDB 10.0.
innodb_stats_sample_pagesDeprecated in MariaDB 10.0. Use innodb_stats_transient_sample_pages instead.
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.
thread_concurrencyDeprecated and has had no effect since MariaDB 5.5.
timed_mutexesDeprecated 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_background_scrub_data_check_intervalProblematic ‘background scrubbing’ code removed.
innodb_background_scrub_data_intervalProblematic ‘background scrubbing’ code removed.
iinnodb_background_scrub_data_compressedProblematic ‘background scrubbing’ code removed.
iinnodb_background_scrub_data_uncompressedProblematic ‘background scrubbing’ code removed.
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.
innodb_undo_logsIt always makes sense to use the maximum number of rollback segments.
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.
large_page_sizeUnused since multiple page size support was added.

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.