Learn how to upgrade MariaDB Server. This section provides detailed instructions and best practices for performing seamless and safe upgrades to newer versions.
MariaDB is designed to allow easy upgrades. You should be able to trivially upgrade from ANY earlier MariaDB version to the latest one (for example MariaDB 10.3.x to MariaDB 10.11.x), usually in a few seconds. This is also mainly true for any MySQL version < 8.0 to MariaDB 10.4 and up.
Upgrades are normally easy because:
All MariaDB table data files are backward compatible
The MariaDB connection protocol is backward compatible. You don't normally need to upgrade any of your old clients to be able to connect to a newer MariaDB version.
The MariaDB replica can be of any newer version than the primary.
MariaDB Corporation regularly runs tests to check that one can upgrade from MariaDB 5.5 to the latest MariaDB version without any trouble. All older versions should work too (as long as the storage engines you were using are still around).
Note that if you are using MariaDB Galera Cluster, you have to follow the Galera upgrading instructions!
Go through the individual version upgrade notes (listed below) to look for any major changes or configuration options that have changed.
Ensure that the target MariaDB version supports the storage engines you are using. For example, in 10.5 TokuDB is not supported.
Back up the database (just in case). At least, take a copy of the mysql
system database directory under the data directory with mariadb-dump --add-drop-table mysql (called mysqldump in MariaDB 10.3 and earlier) as most of the upgrade changes are done there (adding new fields and new system tables etc).
Cleanly shutdown the server. This is necessary because even if data files are compatible between versions, recovery logs may not be.
Ensure that the innodb_fast_shutdown variable is not 2 (fast crash shutdown). The default of this variable is 1.
innodb_force_recovery must be less than 3
.
Note that rpms don't support upgrading between major versions, only minor like 10.4.1 to 10.4.2. If you are using rpms, you should de-install the old MariaDB rpms and install the new MariaDB rpms before running mariadb-upgrade. Note that when installing the new rpms, mariadb-upgrade may be run automatically. There is no problem with running mariadb-upgrade many times.
If you have a primary-replica setup, first upgrade one replica and when you have verified that the replica works well, upgrade the rest of the replicas (if any). Then upgrade one replica to primary, upgrade the primary, and change the replica to a primary.
If you don't have a primary-replica setup, then take a backup, shutdown MariaDB and do the upgrade.
Upgrade MariaDB binaries and libraries, preferably without starting MariaDB.
If the MariaDB server process, mariadbd was not started as part of the upgrade, start it by executing mariadbd --skip-grant-tables
. This may produce some warnings about some system tables not being up to date, but you can ignore these for now as mariadb-upgrade will fix that.
Run mariadb-upgrade
Restart MariaDB server.
The main work done when upgrading is done by running mariadb-upgrade. The main things it does are:
Updating the system tables in the mysql
database to the newest version. This is very quick.
mariadb-upgrade also runs mariadb-check --check-upgrade to check if there have been any collation changes between the major versions. This recreates indexes in old tables that are using any of the changed collations. This can take a bit of time if there are a lot of tables or there are many tables which used the changed collation. The last time a collation changed was in MariaDB/MySQL 5.1.23.
Check the MariaDB error log for any problems during upgrade. If there are any warnings in the log files, do your best to get rid of them!
The common warnings/errors are:
Using obsolete options. If this is the case, remove them from your my.cnf files.
Check the manual for new features that have been added since your last MariaDB version.
Test that your application works as before. The main difference from before is that because of optimizer improvements your application should work better than before, but in some rare cases the optimizer may get something wrong. In this case, you can try to use explain, optimizer trace or optimizer_switch to fix the queries.
First, check the MariaDB error log to see if you are using configure options that are not supported anymore.
Check the upgrade notices for the MariaDB release that you are upgrading to.
File an issue in the MariaDB bug tracker so that we know about the issue and can provide a fix to make upgrades even better.
Add a comment to this manual entry for how we can improve it.
In the unlikely event something goes wrong, you can try the following:
Remove the InnoDB tables from the mysql
data directory. They are:
gtid_slave_pos
innodb_table_stats
innodb_index_stats
transaction_registry
Move the mysql
data directory to mysql-old
and run mariadb-install-db to generate a new one.
After the above, you have to add back your old users.
When done, delete the mysql-old
data directory.
MariaDB server is not designed for downgrading. That said, in most cases, as long as you haven't run any ALTER TABLE or CREATE TABLE statements and you have a mariadb-dump of your old mysql
database , you should be able to downgrade to your previous version by doing the following:
Do a clean shutdown. For this special case you have to set innodb_fast_shutdown to 0,before taking down the new MariaDB server, to ensure there are no redo or undo logs that need to be applied on the downgraded server.
Delete the tables in the mysql
database (if you didn't use the option --add-drop-table
to mariadb-dump)
Delete the new MariaDB installation
Install the old MariaDB version
Start the server with mariadbd --skip-grant-tables
Install the old mysql
database
Execute in the mariadb client FLUSH PRIVILEGES
This page is licensed: CC BY-SA / Gnu FDL
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 mariadb-backup.
To upgrade between minor versions of MariaDB on Linux/Unix (for example from MariaDB 10.11.4 to MariaDB 10.11.5), the following procedure is suggested:
Stop MariaDB.
Uninstall the old version of MariaDB.
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
.
Start MariaDB.
To upgrade between major versions, see the following:
This page is licensed: CC BY-SA / Gnu FDL
For incompatibilities such as removed features, and changes to variables, see the pages describing changes by version on Upgrading MariaDB.
To install a minor upgrade, e.g 10.1.27 on top of existing 10.1.26, with MSI, just download the 10.1.27 MSI and start it. It will do everything that needs to be done for minor upgrade automatically - shutdown MariaDB service(s), replace executables and DLLs, and start service(s) again.
The rest of the article is dedicated to major upgrades, e.g 10.1.x to 10.2.y.
This section assumes MSI installations.
First, check everything listed in the Incompatibilities section of the article relating to the version you are upgrading, for example, Upgrading from MariaDB 10.1 to MariaDB 10.2, to make sure you are prepared for the upgrade.
MariaDB (and also MySQL) allows different versions of the product to co-exist on the same machine, as long as these versions are different either in major or minor version numbers. For example, it is possible to have say MariaDB 5.1.51 and 5.2.6 to be installed on the same machine.
However only a single instance of 5.2 can exist. If for example 5.2.7 is installed on a machine where 5.2.6 is already installed, the installer will just replace 5.2.6 executables with 5.2.7 ones.
Now imagine, that both 5.1 and 5.2 are installed on the same machine and we want to upgrade the database instance running on 5.1 to the new version. In this case special tools are requied. Traditionally, mysql_upgrade is used to accomplish this. On Windows, theMySQL upgrade is a complicated multiple-step manual process.
Since MariaDB 5.2.6, the Windows distribution includes tools that simplify migration between different versions and also allow migration between MySQL and MariaDB.
Note. Automatic upgrades are only possible for DB instances that run as a Windows service.
Important: Ignore any statement that tells you to "just uninstall MySQL and install MariaDB". This does not work on Windows, never has, and never will. Keep your MySQL installed until after the database had been converted.
The following install/upgrade sequence is recommended in case of "major" upgrades, like going from 5.3 to 5.5
Install new version, while still retaining the old one
Upgrade services one by one, like described later in the document (e.g with mysql_upgrade_service). It is recommeded to have services cleanly shut down before the upgrade.
Uninstall old version when previous step is done.
Note. This recommendation differs from the procedure on Unixes, where the upgrade sequence is "uninstall old version, install new version"
This is a GUI tool that is typically invoked at the end of a MariaDB installation if upgradable services are found. The UI allows you to select instances you want to upgrade.
This is a command line tool that performs upgrades. The tool requires full administrative privileges (it has to start and stop services).
Example usage:
mysql_upgrade_service --service=MySQL
mysql_upgrade_service
accepts a single parameter —
the name of the MySQL or MariaDB service. It performs all the steps to convert
a MariaDB/MySQL instance running as the service to the current version.
Earlier we said that only single instance of "MariaDB ." version can be installed on the same machine. This was almost correct, because MariaDB MSI installations allow 32 and 64-bit versions to be installed on the same machine, and in this case it is possible to have two instances of say 5.2 installed at the same time, an x86 one and an x64 one. One can use the x64 Upgrade wizard to upgrade an instance running as a 32-bit process to run as 64-bit.
Both UpgradeWizard and mysql_upgrade_service can also be used to upgrade database instances that were installed with theZIP installation.
This page is licensed: CC BY-SA / Gnu FDL
Learn how to successfully upgrade MariaDB Enterprise Server. This section covers essential steps, best practices, and considerations for ensuring a safe transition to newer database versions.
These instructions detail the upgrade from a previous version of MariaDB Enterprise Server to MariaDB Enterprise Server 11.8 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
See What's New in MariaDB Enterprise Server 11.8.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup before upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
1. Take a full backup. On MariaDB Enterprise Server 11.8 and later:
sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
2. The backup must be prepared. On the MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
3. Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later. It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin\_load\_add
option, then the option should also be removed. The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to a new major release of MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Enterprise Server before installing the new version of MariaDB Enterprise Server. Otherwise, the package manager will refuse to install the new version of MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
1. Set the innodb_fast_shutdown system variable to 1:
SET GLOBAL innodb_fast_shutdown = 1;
2. Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or roll back any open XA transactions before stopping the node for upgrade.
3. Stop the server process: For distributions that use systemd
(most supported OSes), you can manage the server process using the systemctl
command:
sudo systemctl stop mariadb
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4
:
sudo yum remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo apt remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
apt list --installed | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo zypper remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure YUM package repositories:
sudo yum install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.8"
3. Install MariaDB Enterprise Server and package dependencies:
sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the APT package repository. Installable versions of MariaDB Enterprise Server are 11.8 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure APT package repositories:
sudo apt install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.8"
sudo apt update
3. Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
4. Installation of additional packages may be required for some plugins. Configure MariaDB. Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the ZYpp package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure ZYpp package repositories:
sudo zypper install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.8"
3. Install MariaDB Enterprise Server and package dependencies:
sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager: MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back.
For example, to move server.cnf
back in place:
sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable
on boot, and check the status of the Server using the operating system's default process management system.
For distributions that use systemd
, you can manage the Server process using the systemctl
command:
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade
in MariaDB Enterprise Server 10.4 and later:
sudo mariadb-upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
1. Connect to the server using MariaDB Client using the root@localhost
user account. MariaDB Client is called mariadb
(ES 10.4 and later):
sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 11.8.2-0-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
2. You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 11.8.2-0-MariaDB-Enterprise |
+---------------+-----------------------------+
3. You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 11.8.2-0-MariaDB-Enterprise |
+-----------------------------+
These instructions detail the upgrade from a previous version of MariaDB Enterprise Server to MariaDB Enterprise Server 11.4 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
See What's New in MariaDB Enterprise Server 11.4.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup before upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
1. Take a full backup. On MariaDB Enterprise Server 11.4 and later:
sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
2. The backup must be prepared. On the MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
3. Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later. It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin\_load\_add
option, then the option should also be removed. The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to a new major release of MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Enterprise Server before installing the new version of MariaDB Enterprise Server. Otherwise, the package manager will refuse to install the new version of MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
1. Set the innodb_fast_shutdown system variable to 1:
SET GLOBAL innodb_fast_shutdown = 1;
2. Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or roll back any open XA transactions before stopping the node for upgrade.
3. Stop the server process: For distributions that use systemd
(most supported OSes), you can manage the server process using the systemctl
command:
sudo systemctl stop mariadb
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4
:
sudo yum remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo apt remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
apt list --installed | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo zypper remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure YUM package repositories:
sudo yum install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
3. Install MariaDB Enterprise Server and package dependencies:
sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the APT package repository. Installable versions of MariaDB Enterprise Server are 11.8 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure APT package repositories:
sudo apt install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
sudo apt update
3. Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
4. Installation of additional packages may be required for some plugins. Configure MariaDB. Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the ZYpp package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure ZYpp package repositories:
sudo zypper install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
3. Install MariaDB Enterprise Server and package dependencies:
sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager: MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back.
For example, to move server.cnf
back in place:
sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable
on boot, and check the status of the Server using the operating system's default process management system.
For distributions that use systemd
, you can manage the Server process using the systemctl
command:
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade
in MariaDB Enterprise Server 10.4 and later:
sudo mariadb-upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
1. Connect to the server using MariaDB Client using the root@localhost
user account. MariaDB Client is called mariadb
(ES 10.4 and later):
sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 11.4.5-3-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
2. You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 11.4.5-3-MariaDB-Enterprise |
+---------------+-----------------------------+
3. You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 11.4.5-3-MariaDB-Enterprise |
+-----------------------------+
These instructions detail the upgrade from a previous version of MariaDB Enterprise Server to MariaDB Enterprise Server 10.6 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
See What's New in MariaDB Enterprise Server 10.6.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup before upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
1. Take a full backup. On MariaDB Enterprise Server 10.6 and later:
sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
2. The backup must be prepared. On the MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
3. Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later. It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin\_load\_add
option, then the option should also be removed. The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to a new major release of MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Enterprise Server before installing the new version of MariaDB Enterprise Server. Otherwise, the package manager will refuse to install the new version of MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
1. Set the innodb_fast_shutdown system variable to 1:
SET GLOBAL innodb_fast_shutdown = 1;
2. Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or roll back any open XA transactions before stopping the node for upgrade.
3. Stop the server process: For distributions that use systemd
(most supported OSes), you can manage the server process using the systemctl
command:
sudo systemctl stop mariadb
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4
:
sudo yum remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo apt remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
apt list --installed | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo zypper remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure YUM package repositories:
sudo yum install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
3. Install MariaDB Enterprise Server and package dependencies:
sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the APT package repository. Installable versions of MariaDB Enterprise Server are 11.8 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure APT package repositories:
sudo apt install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
sudo apt update
3. Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
4. Installation of additional packages may be required for some plugins. Configure MariaDB. Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the ZYpp package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure ZYpp package repositories:
sudo zypper install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
3. Install MariaDB Enterprise Server and package dependencies:
sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager: MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back.
For example, to move server.cnf
back in place:
sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable
on boot, and check the status of the Server using the operating system's default process management system.
For distributions that use systemd
, you can manage the Server process using the systemctl
command:
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade
in MariaDB Enterprise Server 10.4 and later:
sudo mariadb-upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
1. Connect to the server using MariaDB Client using the root@localhost
user account. MariaDB Client is called mariadb
(ES 10.4 and later):
sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.6.21-17-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
2. You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 10.6.21-17-MariaDB-Enterprise |
+---------------+-----------------------------+
3. You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 10.6.21-17-MariaDB-Enterprise |
+-----------------------------+
These instructions detail the upgrade from a previous version of MariaDB Enterprise Server to MariaDB Enterprise Server 10.5 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
See What's New in MariaDB Enterprise Server 10.5.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup before upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
1. Take a full backup. On MariaDB Enterprise Server 10.5 and later:
sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
2. The backup must be prepared. On the MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
3. Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later. It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin\_load\_add
option, then the option should also be removed. The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to a new major release of MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Enterprise Server before installing the new version of MariaDB Enterprise Server. Otherwise, the package manager will refuse to install the new version of MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
1. Set the innodb_fast_shutdown system variable to 1:
SET GLOBAL innodb_fast_shutdown = 1;
2. Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or roll back any open XA transactions before stopping the node for upgrade.
3. Stop the server process: For distributions that use systemd
(most supported OSes), you can manage the server process using the systemctl
command:
sudo systemctl stop mariadb
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4
:
sudo yum remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo apt remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
apt list --installed | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo zypper remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure YUM package repositories:
sudo yum install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
3. Install MariaDB Enterprise Server and package dependencies:
sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the APT package repository. Installable versions of MariaDB Enterprise Server are 11.8 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure APT package repositories:
sudo apt install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
sudo apt update
3. Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
4. Installation of additional packages may be required for some plugins. Configure MariaDB. Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the ZYpp package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure ZYpp package repositories:
sudo zypper install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
3. Install MariaDB Enterprise Server and package dependencies:
sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager: MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back.
For example, to move server.cnf
back in place:
sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable
on boot, and check the status of the Server using the operating system's default process management system.
For distributions that use systemd
, you can manage the Server process using the systemctl
command:
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade
in MariaDB Enterprise Server 10.4 and later:
sudo mariadb-upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
1. Connect to the server using MariaDB Client using the root@localhost
user account. MariaDB Client is called mariadb
(ES 10.4 and later):
sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.5.28-22-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
2. You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 10.5.28-22-MariaDB-Enterprise |
+---------------+-----------------------------+
3. You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 10.5.28-22-MariaDB-Enterprise |
+-----------------------------+
These instructions detail the upgrade from a previous version of MariaDB Enterprise Server to MariaDB Enterprise Server 10.4 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
See What's New in MariaDB Enterprise Server 10.4.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup before upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
1. Take a full backup. On MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
2. The backup must be prepared. On the MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
3. Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later. It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin\_load\_add
option, then the option should also be removed. The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to a new major release of MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Enterprise Server before installing the new version of MariaDB Enterprise Server. Otherwise, the package manager will refuse to install the new version of MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
1. Set the innodb_fast_shutdown system variable to 1:
SET GLOBAL innodb_fast_shutdown = 1;
2. Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or roll back any open XA transactions before stopping the node for upgrade.
3. Stop the server process: For distributions that use systemd
(most supported OSes), you can manage the server process using the systemctl
command:
sudo systemctl stop mariadb
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4
:
sudo yum remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo apt remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
apt list --installed | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo zypper remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure YUM package repositories:
sudo yum install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
3. Install MariaDB Enterprise Server and package dependencies:
sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the APT package repository. Installable versions of MariaDB Enterprise Server are 11.8 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure APT package repositories:
sudo apt install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
sudo apt update
3. Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
4. Installation of additional packages may be required for some plugins. Configure MariaDB. Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the ZYpp package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure ZYpp package repositories:
sudo zypper install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
3. Install MariaDB Enterprise Server and package dependencies:
sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager: MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back.
For example, to move server.cnf
back in place:
sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable
on boot, and check the status of the Server using the operating system's default process management system.
For distributions that use systemd
, you can manage the Server process using the systemctl
command:
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade
in MariaDB Enterprise Server 10.4 and later:
sudo mariadb-upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
1. Connect to the server using MariaDB Client using the root@localhost
user account. MariaDB Client is called mariadb
(ES 10.4 and later):
sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.4.34-24-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
2. You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 10.4.34-24-MariaDB-Enterprise |
+---------------+-----------------------------+
3. You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 10.4.34-24-MariaDB-Enterprise |
+-----------------------------+
These instructions detail the upgrade from a previous version of MariaDB Enterprise Server to MariaDB Enterprise Server 10.3 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
See What's New in MariaDB Enterprise Server 10.3.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup before upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
1. Take a full backup. On MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
2. The backup must be prepared. On the MariaDB Enterprise Server 10.4 and later:
sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
3. Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later. It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin\_load\_add
option, then the option should also be removed. The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to a new major release of MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Enterprise Server before installing the new version of MariaDB Enterprise Server. Otherwise, the package manager will refuse to install the new version of MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
1. Set the innodb_fast_shutdown system variable to 1:
SET GLOBAL innodb_fast_shutdown = 1;
2. Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or roll back any open XA transactions before stopping the node for upgrade.
3. Stop the server process: For distributions that use systemd
(most supported OSes), you can manage the server process using the systemctl
command:
sudo systemctl stop mariadb
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4
:
sudo yum remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo apt remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
apt list --installed | grep -i -E "mariadb|galera"
1. Uninstall all of the MariaDB Enterprise Server packages. Note that a wildcard character is used to ensure that all MariaDB Enterprise Server packages are uninstalled:
sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
2. Uninstall the Galera package as well. The name of the package depends on the specific version of MariaDB Enterprise Server. When upgrading from MariaDB Enterprise Server 10.4 or later, the package is called galera-enterprise-4:
sudo zypper remove galera-enterprise-4
3. Before proceeding, verify that all MariaDB Enterprise Server packages are uninstalled. The following command should not return any results:
rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure YUM package repositories:
sudo yum install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
3. Install MariaDB Enterprise Server and package dependencies:
sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the APT package repository. Installable versions of MariaDB Enterprise Server are 11.8 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure APT package repositories:
sudo apt install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
sudo apt update
3. Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
4. Installation of additional packages may be required for some plugins. Configure MariaDB. Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
1. Retrieve your Customer Download Token atand substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
2. Configure the ZYpp package repository. Installable versions of MariaDB Enterprise Server are 11.8, 11.4, 10.6, 10.5, 10.4, and 10.3.
Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup
. The following directions reference 11.8.
To configure ZYpp package repositories:
sudo zypper install curl
curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
chmod +x mariadb_es_repo_setup
sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
3. Install MariaDB Enterprise Server and package dependencies:
sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
4. Configure MariaDB. Installation only loads MariaDB Enterprise Server onto the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager: MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back.
For example, to move server.cnf
back in place:
sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable
on boot, and check the status of the Server using the operating system's default process management system.
For distributions that use systemd
, you can manage the Server process using the systemctl
command:
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade
in MariaDB Enterprise Server 10.4 and later:
sudo mariadb-upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
1. Connect to the server using MariaDB Client using the root@localhost
user account. MariaDB Client is called mariadb
(ES 10.4 and later):
sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 11.4.5-3-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
2. You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 11.4.5-3-MariaDB-Enterprise |
+---------------+-----------------------------+
3. You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 11.4.5-3-MariaDB-Enterprise |
+-----------------------------+
These instructions detail a minor release upgrade with MariaDB Enterprise Server 11.4 on a range of supported Operating Systems.
A minor release upgrade is a change from an earlier release of MariaDB Enterprise Server 11.4 to a later release in the same release series.
For example, it would be a minor release upgrade to upgrade from MariaDB Enterprise Server 11.4.4-2 to MariaDB Enterprise Server 11.4.5-3.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
Before the new version can be installed, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
Update MariaDB Enterprise Server and package dependencies:
$ sudo yum update "MariaDB-*" "galera*"
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
$ sudo apt update
Update MariaDB Enterprise Server and package dependencies:
$ sudo apt install --only-upgrade "mariadb-*" "galera*"
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
Update MariaDB Enterprise Server and package dependencies:
$ sudo zypper update "MariaDB-*" "galera*"
For platforms that use YUM or ZYpp as a package manager:
MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql_upgrade in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3, ES10.2):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 11.4.5-3-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------------------+
| Variable_name | Value |
+---------------+-----------------------------+
| version | 11.4.5-3-MariaDB-Enterprise |
+---------------+-----------------------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------------------+
| VERSION() |
+-----------------------------+
| 11.4.5-3-MariaDB-Enterprise |
+-----------------------------+
© 2025 MariaDB. All rights reserved.
These instructions detail a minor release upgrade with MariaDB Enterprise Server 10.6 on a range of supported Operating Systems.
A minor release upgrade is a change from an earlier release of MariaDB Enterprise Server 10.6 to a later release in the same release series.
For example, it would be a minor release upgrade to upgrade from MariaDB Enterprise Server 10.6.20-16 to MariaDB Enterprise Server 10.6.21-17.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
Before the new version can be installed, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.6
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
Update MariaDB Enterprise Server and package dependencies:
$ sudo yum update "MariaDB-*" "galera*"
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.6
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
$ sudo apt update
Update MariaDB Enterprise Server and package dependencies:
$ sudo apt install --only-upgrade "mariadb-*" "galera*"
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
Update MariaDB Enterprise Server and package dependencies:
$ sudo zypper update "MariaDB-*" "galera*"
For platforms that use YUM or ZYpp as a package manager:
MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql_upgrade in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3, ES10.2):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.6.21-17-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-------------------------------+
| Variable_name | Value |
+---------------+-------------------------------+
| version | 10.6.21-17-MariaDB-Enterprise |
+---------------+-------------------------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-------------------------------+
| VERSION() |
+-------------------------------+
| 10.6.21-17-MariaDB-Enterprise |
+-------------------------------+
© 2025 MariaDB. All rights reserved.
These instructions detail a minor release upgrade with MariaDB Enterprise Server 10.5 on a range of supported Operating Systems.
A minor release upgrade is a change from an earlier release of MariaDB Enterprise Server 10.5 to a later release in the same release series.
For example, it would be a minor release upgrade to upgrade from MariaDB Enterprise Server 10.5.27-21 to MariaDB Enterprise Server 10.5.28-22.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
Before the new version can be installed, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
Update MariaDB Enterprise Server and package dependencies:
$ sudo yum update "MariaDB-*" "galera*"
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
$ sudo apt update
Update MariaDB Enterprise Server and package dependencies:
$ sudo apt install --only-upgrade "mariadb-*" "galera*"
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.5
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
Update MariaDB Enterprise Server and package dependencies:
$ sudo zypper update "MariaDB-*" "galera*"
For platforms that use YUM or ZYpp as a package manager:
MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql_upgrade in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3, ES10.2):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.5.28-22-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-------------------------------+
| Variable_name | Value |
+---------------+-------------------------------+
| version | 10.5.28-22-MariaDB-Enterprise |
+---------------+-------------------------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-------------------------------+
| VERSION() |
+-------------------------------+
| 10.5.28-22-MariaDB-Enterprise |
+-------------------------------+
© 2025 MariaDB. All rights reserved.
These instructions detail a minor release upgrade with MariaDB Enterprise Server 10.4 on a range of supported Operating Systems.
A minor release upgrade is a change from an earlier release of MariaDB Enterprise Server 10.4 to a later release in the same release series.
For example, it would be a minor release upgrade to upgrade from MariaDB Enterprise Server 10.4.33-23 to MariaDB Enterprise Server 10.4.34-24.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
Before the new version can be installed, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
Update MariaDB Enterprise Server and package dependencies:
$ sudo yum update "MariaDB-*" "galera*"
For users who have the Spider storage engine loaded who are upgrading from ES 10.4.24-15 or earlier, Spider's new RPM package and dependencies must be manually installed after upgrading to ES 10.4.25-16 or later.
In ES 10.4.24-15 and earlier, Spider's components were installed with the server's RPM package.
Starting with ES 10.4.25-16, Spider adds unixODBC
as a dependency, so Spider has been moved to a separate RPM package to avoid adding new dependencies to the server's RPM package.
To install Spider's new package and dependencies:
$ sudo yum install MariaDB-spider-engine
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
$ sudo apt update
Update MariaDB Enterprise Server and package dependencies:
$ sudo apt install --only-upgrade "mariadb-*" "galera*"
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
Update MariaDB Enterprise Server and package dependencies:
$ sudo zypper update "MariaDB-*" "galera*"
For users who have the Spider storage engine loaded who are upgrading from ES 10.4.24-15 or earlier, Spider's new RPM package and dependencies must be manually installed after upgrading to ES 10.4.25-16 or later.
In ES 10.4.24-15 and earlier, Spider's components were installed with the server's RPM package.
Starting with ES 10.4.25-16, Spider adds unixODBC
as a dependency, so Spider has been moved to a separate RPM package to avoid adding new dependencies to the server's RPM package.
To install Spider's new package and dependencies:
$ sudo zypper install MariaDB-spider-engine
For platforms that use YUM or ZYpp as a package manager:
MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql_upgrade in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3, ES10.2):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.4.34-24-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-------------------------------+
| Variable_name | Value |
+---------------+-------------------------------+
| version | 10.4.34-24-MariaDB-Enterprise |
+---------------+-------------------------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-------------------------------+
| VERSION() |
+-------------------------------+
| 10.4.34-24-MariaDB-Enterprise |
+-------------------------------+
© 2025 MariaDB. All rights reserved.
These instructions detail a minor release upgrade with MariaDB Enterprise Server 10.3 on a range of supported Operating Systems.
A minor release upgrade is a change from an earlier release of MariaDB Enterprise Server 10.3 to a later release in the same release series.
For example, it would be a minor release upgrade to upgrade from MariaDB Enterprise Server 10.3.38-19 to MariaDB Enterprise Server 10.3.39-20.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Enterprise Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
Before the new version can be installed, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
Update MariaDB Enterprise Server and package dependencies:
$ sudo yum update "MariaDB-*" "galera*"
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.3
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
$ sudo apt update
Update MariaDB Enterprise Server and package dependencies:
$ sudo apt install --only-upgrade "mariadb-*" "galera*"
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
Update MariaDB Enterprise Server and package dependencies:
$ sudo zypper update "MariaDB-*" "galera*"
For platforms that use YUM or ZYpp as a package manager:
MariaDB Enterprise Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mariadb-enterprise.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql_upgrade in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3, ES10.2):
$ sudo mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.3.39-20-MariaDB-Enterprise MariaDB Enterprise Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-------------------------------+
| Variable_name | Value |
+---------------+-------------------------------+
| version | 10.3.39-20-MariaDB-Enterprise |
+---------------+-------------------------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-------------------------------+
| VERSION() |
+-------------------------------+
| 10.3.39-20-MariaDB-Enterprise |
+-------------------------------+
© 2025 MariaDB. All rights reserved.
Upgrade from MariaDB Community to Enterprise Server. This section guides you through the process, ensuring a smooth transition and unlocking enhanced features & support for your critical deployments.
These instructions detail the upgrade from MariaDB Community Server to MariaDB Enterprise Server 11.4 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later.
It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin_load_add
option, then the option should also be removed.
The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
MariaDB Enterprise Server 11.4 changes the COMPRESSED
row format to read-only. Before upgrading, modify any compressed InnoDB tables to use the DYNAMIC
row format.
Use the information\_schema.INNODB\_SYS\_TABLES
to identify any InnoDB tables that use the COMPRESSED
row format:
SELECT NAME, ROW_FORMAT
FROM information_schema.INNODB_SYS_TABLES
WHERE NAME NOT LIKE 'SYS_%'
AND ROW_FORMAT = 'COMPRESSED';
Execute an ALTER TABLE statement for each table, changing its row format from COMPRESSED
to DYNAMIC
:
ALTER TABLE accounts.hq_sales
ROW_FORMAT = DYNAMIC
PAGE_COMPRESSED = 1;
When upgrading to MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Community Server, before installing MariaDB Enterprise Server. Otherwise, the package manager will refuse to install MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
Uninstall via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo yum remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo yum remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
Uninstall via APT (Debian, Ubuntu)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo apt remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera-3
:
$ sudo apt remove galera-3
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ apt list --installed | grep -i -E "mariadb|galera"
Uninstall via ZYpp (SLES)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo zypper remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo zypper remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
Install MariaDB Enterprise Server and package dependencies:
$ sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
$ sudo apt update
Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 11.4
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="11.4"
Install MariaDB Enterprise Server and package dependencies:
$ sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager:
MariaDB Community Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql\_upgrade
in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3 and earlier):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 11.4.5-3-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+------------------+
| Variable_name | Value |
+---------------+------------------+
| version | 11.4.5-3-MariaDB |
+---------------+------------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+------------------+
| VERSION() |
+------------------+
| 11.4.5-3-MariaDB |
+------------------+
© 2025 MariaDB. All rights reserved.
These instructions detail the upgrade from MariaDB Community Server to MariaDB Enterprise Server 10.6 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later.
It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin_load_add
option, then the option should also be removed.
The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
MariaDB Enterprise Server 10.6 changes the COMPRESSED
row format to read-only. Before upgrading, modify any compressed InnoDB tables to use the DYNAMIC
row format.
Use the information\_schema.INNODB\_SYS\_TABLES
to identify any InnoDB tables that use the COMPRESSED
row format:
SELECT NAME, ROW_FORMAT
FROM information_schema.INNODB_SYS_TABLES
WHERE NAME NOT LIKE 'SYS_%'
AND ROW_FORMAT = 'COMPRESSED';
Execute an ALTER TABLE statement for each table, changing its row format from COMPRESSED
to DYNAMIC
:
ALTER TABLE accounts.hq_sales
ROW_FORMAT = DYNAMIC
PAGE_COMPRESSED = 1;
When upgrading to MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Community Server, before installing MariaDB Enterprise Server. Otherwise, the package manager will refuse to install MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
Uninstall via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo yum remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo yum remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
Uninstall via APT (Debian, Ubuntu)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo apt remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera-3
:
$ sudo apt remove galera-3
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ apt list --installed | grep -i -E "mariadb|galera"
Uninstall via ZYpp (SLES)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo zypper remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo zypper remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.6
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
Install MariaDB Enterprise Server and package dependencies:
$ sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.6
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
$ sudo apt update
Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.6
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.6"
Install MariaDB Enterprise Server and package dependencies:
$ sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager:
MariaDB Community Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql\_upgrade
in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3 and earlier):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.6.21-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| version | 10.6.21-MariaDB |
+---------------+-----------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------+
| VERSION() |
+-----------------+
| 10.6.21-MariaDB |
+-----------------+
© 2025 MariaDB. All rights reserved.
These instructions detail the upgrade from MariaDB Community Server to MariaDB Enterprise Server 10.5 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later.
It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin_load_add
option, then the option should also be removed.
The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Community Server, before installing MariaDB Enterprise Server. Otherwise, the package manager will refuse to install MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
Uninstall via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo yum remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo yum remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
Uninstall via APT (Debian, Ubuntu)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo apt remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera-3
:
$ sudo apt remove galera-3
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ apt list --installed | grep -i -E "mariadb|galera"
Uninstall via ZYpp (SLES)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo zypper remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo zypper remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.5
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
Install MariaDB Enterprise Server and package dependencies:
$ sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.5
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
$ sudo apt update
Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.5
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.5"
Install MariaDB Enterprise Server and package dependencies:
$ sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager:
MariaDB Community Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql\_upgrade
in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3 and earlier):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.5.28-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| version | 10.5.28-MariaDB |
+---------------+-----------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------+
| VERSION() |
+-----------------+
| 10.5.28-MariaDB |
+-----------------+
© 2025 MariaDB. All rights reserved.
These instructions detail the upgrade from MariaDB Community Server to MariaDB Enterprise Server 10.4 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later.
It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin_load_add
option, then the option should also be removed.
The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Community Server, before installing MariaDB Enterprise Server. Otherwise, the package manager will refuse to install MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
Uninstall via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo yum remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo yum remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
Uninstall via APT (Debian, Ubuntu)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo apt remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera-3
:
$ sudo apt remove galera-3
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ apt list --installed | grep -i -E "mariadb|galera"
Uninstall via ZYpp (SLES)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo zypper remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo zypper remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
Install MariaDB Enterprise Server and package dependencies:
$ sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
$ sudo apt update
Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.4
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.4"
Install MariaDB Enterprise Server and package dependencies:
$ sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager:
MariaDB Community Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql\_upgrade
in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3 and earlier):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.4.34-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| version | 10.4.34-MariaDB |
+---------------+-----------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------+
| VERSION() |
+-----------------+
| 10.4.34-MariaDB |
+-----------------+
© 2025 MariaDB. All rights reserved.
These instructions detail the upgrade from MariaDB Community Server to MariaDB Enterprise Server 10.3 on a range of supported Operating Systems.
When MariaDB Enterprise Server is upgraded, the old version needs to be uninstalled, and the new version needs to be installed.
Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. Therefore, it is generally best to perform a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB Server database to the old version. If the upgrade finishes without issue, then the backup can be deleted.
The instructions below show how to perform a backup using MariaDB Backup. For more information about backing up and restoring the database, please see the Recovery Guide.
Take a full backup.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Community Server 10.4 and later:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
On MariaDB Community Server 10.3 and earlier:
$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
If you have the MariaDB Audit Plugin installed and if you are upgrading to MariaDB Enterprise Server 10.4 or later, then the audit plugin should be removed prior to the upgrade to prevent conflict with the MariaDB Enterprise Audit Plugin that is present in MariaDB Enterprise Server 10.4 or later.
It can be removed by using the UNINSTALL SONAME statement:
UNINSTALL SONAME 'server_audit';
And if you load the plugin in a configuration file using the plugin_load_add
option, then the option should also be removed.
The MariaDB Enterprise Audit Plugin will automatically be installed after installing MariaDB Enterprise Server 10.4 or later.
When upgrading to MariaDB Enterprise Server, it is necessary to remove the existing installation of MariaDB Community Server, before installing MariaDB Enterprise Server. Otherwise, the package manager will refuse to install MariaDB Enterprise Server.
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
Set the innodb_fast_shutdown system variable to 1
:
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
XA RECOVER;
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process:
For distributions that use systemd (most supported OSes), you can manage the Server process using the systemctl
command:
$ sudo systemctl stop mariadb
Uninstall via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo yum remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications:
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo yum remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo yum remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
Uninstall via APT (Debian, Ubuntu)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo apt-get remove "mariadb-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo apt remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera-3
:
$ sudo apt remove galera-3
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ apt list --installed | grep -i -E "mariadb|galera"
Uninstall via ZYpp (SLES)
Uninstall all of the MariaDB Community Server packages. Note that a wildcard character is used to ensure that all MariaDB Community Server packages are uninstalled:
$ sudo zypper remove "MariaDB-*"
Be sure to check that this wildcard does not unintentionally refer to any of your custom applications.
Uninstall the Galera package as well.
The name of the package depends on the specific version of MariaDB Community Server.
When upgrading from MariaDB Community Server 10.4 or later, the package is called galera-4
:
$ sudo zypper remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called galera
:
$ sudo zypper remove galera
Before proceeding, verify that all MariaDB Community Server packages are uninstalled. The following command should not return any results:
$ rpm --query --all | grep -i -E "mariadb|galera"
MariaDB Corporation provides package repositories for YUM (RHEL, AlmaLinux, CentOS, Rocky Linux), APT (Debian, Ubuntu), and ZYpp (SLES).
Install via YUM (RHEL, AlmaLinux, CentOS, Rocky Linux)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the YUM package repository. Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.3
.
To configure YUM package repositories:
$ sudo yum install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
Install MariaDB Enterprise Server and package dependencies:
$ sudo yum install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via APT (Debian, Ubuntu)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the APT package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.3
.
To configure APT package repositories:
$ sudo apt install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
$ sudo apt update
Install MariaDB Enterprise Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
Install via ZYpp (SLES)
Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for CUSTOMER_DOWNLOAD_TOKEN
in the following directions.
Configure the ZYpp package repository.
Installable versions of MariaDB Enterprise Server are 11.4
, 10.6
, 10.5
, 10.4
, and 10.3
. Pass the version to install using the --mariadb-server-version
flag to mariadb_es_repo_setup. The following directions reference 10.3
.
To configure ZYpp package repositories:
$ sudo zypper install curl
$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
$ echo "4d483b4df193831a0101d3dfa7fb3e17411dda7fc06c31be4f9e089c325403c0 mariadb_es_repo_setup" \
| sha256sum -c -
$ chmod +x mariadb_es_repo_setup
$ sudo ./mariadb_es_repo_setup --token="CUSTOMER_DOWNLOAD_TOKEN" --apply \
--mariadb-server-version="10.3"
Install MariaDB Enterprise Server and package dependencies:
$ sudo zypper install MariaDB-server MariaDB-backup
Installation of additional packages may be required for some plugins.
Configure MariaDB.
Installation only loads MariaDB Enterprise Server to the system. MariaDB Enterprise Server requires configuration before the database server is ready for use.
For platforms that use YUM or ZYpp as a package manager:
MariaDB Community Server's packages bundle several configuration files:
/etc/my.cnf
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mysql-clients.cnf
/etc/my.cnf.d/server.cnf
If your version of any of these configuration files contained any custom edits, then the package manager may save your edited version with the .rpmsave
extension during the upgrade process. If you want to continue using your version with the custom edits, then you may need to move it back. For example, to move server.cnf
back in place:
$ sudo mv /etc/my.cnf.d/server.cnf /etc/my.cnf.d/server.cnf.original
$ sudo mv /etc/my.cnf.d/server.cnf.rpmsave /etc/my.cnf.d/server.cnf
MariaDB Enterprise Server includes configuration to start, stop, restart, enable/disable on boot, and check the status of the Server using the operating system default process management system.
For distributions that use systemd, you can manage the Server process using the systemctl
command:
Operation
Command
Start
sudo systemctl start mariadb
Stop
sudo systemctl stop mariadb
Restart
sudo systemctl restart mariadb
Enable during startup
sudo systemctl enable mariadb
Disable during startup
sudo systemctl disable mariadb
Status
sudo systemctl status mariadb
MariaDB Enterprise Server ships with a utility that can be used to identify and correct compatibility issues in the new version. After you upgrade your Server and start the server process, run this utility to upgrade the data directory.
The utility is called mariadb-upgrade in MariaDB Enterprise Server 10.4 and later:
$ sudo mariadb-upgrade
And the utility is called mysql\_upgrade
in MariaDB Enterprise Server 10.3 and 10.2:
$ sudo mysql_upgrade
When MariaDB Enterprise Server is up and running on your system, you should test that it is working and there weren't any issues during startup.
Connect to the server using MariaDB Client using the root@localhost
user account.
MariaDB Client is called mariadb (ES10.4 and later) or mysql
(ES10.3 and earlier):
$ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.3.39-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
You can also verify the server version by checking the value of the version system variable with the SHOW GLOBAL STATUS statement:
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| version | 10.3.39-MariaDB |
+---------------+-----------------+
You can also verify the server version by calling the VERSION() function:
SELECT VERSION();
+-----------------+
| VERSION() |
+-----------------+
| 10.3.39-MariaDB |
+-----------------+
© 2025 MariaDB. All rights reserved.
Navigate upgrading MariaDB Server between specific versions. This section provides precise guidance and considerations for ensuring a successful and compatible transition across different releases.
This page includes details for upgrading from MariaDB 11.4 to the subsequent long-term maintenance version, MariaDB 11.8.
For Windows, see Upgrading MariaDB on Windows.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.8. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 11.4 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
Deprecated in MariaDB 10.4, defaults to OFF.
Old
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.
This page is licensed: CC BY-SA / Gnu FDL
This page includes details for upgrading from MariaDB 11.3 to MariaDB 11.4. Note that MariaDB 11.3 is a rolling release, and MariaDB 11.4 is a long-term maintenance release. After MariaDB 11.4.2, one can continue to the next rolling release, 11.5.2, 11.6.2 and so on, or remain on the long-term series, MariaDB 11.4.3. MariaDB 11.4.4 etc.
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.6 to MariaDB 10.7 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
The following options should be removed if you use them in your option files:
Unused code.
This page is licensed: CC BY-SA / Gnu FDL
This page includes details for upgrading from MariaDB 10.11 to the subsequent long-term maintenance version, MariaDB 11.4.
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 11.4 to MariaDB 11.4 with Galera Cluster.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.11 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
Unused code.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
The following options should be removed or renamed if you use them in your option files:
Superceded by alter_algorithm.
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.
The motivation for introducing this in MySQL seems to have been to avoid stalls due to freeing undo log pages or truncating undo log tablespaces. In MariaDB, innodb_undo_log_truncate=ON should be a much lighter operation because it will not involve any log checkpoint, hence this is deprecated and ignored
Replaced with transaction_isolation to align the option and system variable.
Replaced with transaction_read_only to align the option and system variable.
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.6 to MariaDB 10.11 with Galera Cluster.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.11. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.6 should be painless. However, there are some things that have changed which could affect an upgrade:
If a non-zlib compression algorithm was used in InnoDB or Mroonga before upgrading to 10.11, those tables will be unreadable until the appropriate compression library is installed. See Compression Plugins#Upgrading.
The following options should be removed or renamed if you use them in your option files:
On Linux and Windows, the physical block size of the underlying storage is instead detected and used.
Redundant
Use wsrep_mode instead.
Use wsrep_mode instead.
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.
MariaDB now deletes orphan files, so this setting should never be necessary.
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.5 to MariaDB 10.6 with Galera Cluster.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.6. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.5 should be painless. However, there are some things that have changed which could affect an upgrade:
The bahaviour of sorting non-deterministic variables in a Select query can be changed , see (MDEV-27745)
New reserved word: OFFSET. This can no longer be used as an identifier without being quoted.
From MariaDB 10.6.0 until MariaDB 10.6.5, tables that are of the COMPRESSED
row format are read-only by default. This was intended to be the first step towards removing write support and deprecating the feature.
This plan has been scrapped, and from MariaDB 10.6.6, COMPRESSED
tables are no longer read-only by default.
From MariaDB 10.6.0 to MariaDB 10.6.5, set the innodb_read_only_compressed variable to OFF
to make the tables writable.
From MariaDB 10.6, the utf8
character set (and related collations) is by default an alias for utf8mb3
rather than the other way around. It can be set to imply utf8mb4
by changing the value of the old_mode system variable.
The following options should be removed or renamed if you use them in your option files:
The variable is still present, but the *innodb and *none options have been removed as the crc32 algorithm only is supported from MariaDB 10.6.
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.
Use wsrep_mode instead.
Use wsrep_mode instead.
See also System Variables Added in MariaDB 10.6.
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows instead.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.4 to MariaDB 10.5 with Galera Cluster.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.5. 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.
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
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.
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 .
On most servers upgrading from 10.4 should be painless. However, there are some things that have changed which could affect an upgrade:
All binaries previously beginning with mysql now begin with mariadb, with symlinks for the corresponding mysql command.
Usually that shouldn't cause any changed behavior, but when starting the MariaDB server via systemd, or via the mysqld_safe script symlink, the server process will now always be started as mariadbd
, not mysqld
.
So anything looking for the mysqld
name in the system process list, like e.g. monitoring solutions, now needs for mariadbd
instead when the server / service is not started directly, but via mysqld_safe
or as a system service.
A number of statements changed the privileges that they require. The old privileges were historically inappropriately chosen in the upstream. 10.5.2 fixes this problem. Note, these changes are incompatible to previous versions. A number of GRANT commands might be needed after upgrade.
SHOW BINLOG EVENTS
now requires the BINLOG MONITOR
privilege (requred REPLICATION SLAVE
prior to 10.5.2).
SHOW SLAVE HOSTS
now requires the REPLICATION MASTER ADMIN
privilege (required REPLICATION SLAVE
prior to 10.5.2).
SHOW SLAVE STATUS
now requires the REPLICATION SLAVE ADMIN
or the SUPER
privilege (required REPLICATION CLIENT
or SUPER
prior to 10.5.2).
SHOW RELAYLOG EVENTS
now requires the REPLICATION SLAVE ADMIN
privilege (required REPLICATION SLAVE
prior to 10.5.2).
The following options should be removed or renamed if you use them in your option files:
Deprecated and functionality replaced by innodb_checksum_algorithms in MariaDB 10.0.
Has had no effect since merging InnoDB 5.7 from mysql-5.7.9 (MariaDB 10.2.2).
Deprecated in MariaDB 10.0. Use READ COMMITTED transaction isolation level instead.
Deprecated and replaced by innodb_undo_logs in MariaDB 10.0.
Deprecated in MariaDB 10.0. Use innodb_stats_transient_sample_pages instead.
Deprecated and replaced by max_allowed_packet in MariaDB 5.5.
Deprecated and has had no effect since MariaDB 5.3.
Deprecated and has had no effect since MariaDB 5.5.
Deprecated and has had no effect since MariaDB 5.5.
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.
No need for thread throttling any more.
Problematic ‘background scrubbing’ code removed.
Problematic ‘background scrubbing’ code removed.
Problematic ‘background scrubbing’ code removed.
Problematic ‘background scrubbing’ code removed.
Having more than one buffer pool is no longer necessary.
No need for thread throttling any more.
No need for thread throttling any more.
Redo log was unnecessarily split into multiple files. Limited to 1 from MariaDB 10.5.
Prohibited optimizations.
Having more than one page cleaner task no longer necessary.
No need for thread throttling any more.
Never really worked as intended, redo log format is being redone.
Never really worked as intended, redo log format is being redone.
No need for thread throttling any more.
No need for thread throttling any more.
It always makes sense to use the maximum number of rollback segments.
Unused since multiple page size support was added.
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.
ColumnStore columnar storage engine.
See also System Variables Added in MariaDB 10.5.
This page is licensed: CC BY-SA / Gnu FDL
Learn about upgrading to unmaintained MariaDB Server releases. This section provides information on potential risks and considerations when working with older, unsupported versions.
This page includes details for upgrading from MariaDB 11.2 to MariaDB 11.3. Note that MariaDB 11.2 is a short-term release, only maintained for one year. MariaDB 11.3 is a rolling release, after 11.3.2 one should upgrade to 11.4.2.
For Windows, see Upgrading MariaDB on Windows.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.3. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 11.2 should be painless. However, there are some things that have changed which could affect an upgrade:
autocommit, character_set_client, character_set_connection, character_set_results, time_zone
autocommit, character_set_client, character_set_connection, character_set_results, redirect_url, time_zone
The following options should be removed or renamed if you use them in your option files:
This page is licensed: CC BY-SA / Gnu FDL
This page includes details for upgrading from MariaDB 11.1 to MariaDB 11.2. Note that MariaDB 11.1 and MariaDB 11.2 are both short-term releases, only maintained for one year.
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.6 to MariaDB 10.7 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.2. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 11.1 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
Superceded by alter_algorithm.
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.
The motivation for introducing this in MySQL seems to have been to avoid stalls due to freeing undo log pages or truncating undo log tablespaces. In MariaDB, innodb_undo_log_truncate=ON should be a much lighter operation because it will not involve any log checkpoint, hence this is deprecated and ignored
This page is licensed: CC BY-SA / Gnu FDL
This page includes details for upgrading from MariaDB 11.0 to MariaDB 11.1. Note that MariaDB 11.0 and MariaDB 11.1 are both short-term releases, only maintained for one year.
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.6 to MariaDB 10.7 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.1. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.11 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
Defragmenting InnoDB Tablespaces in this manner no longer supported.
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.
The motivation for introducing this in MySQL seems to have been to avoid stalls due to freeing undo log pages or truncating undo log tablespaces. In MariaDB, innodb_undo_log_truncate=ON should be a much lighter operation because it will not involve any log checkpoint, hence this is deprecated and ignored
Replaced with transaction_isolation to align the option and system variable.
Replaced with transaction_read_only to align the option and system variable.
This page is licensed: CC BY-SA / Gnu FDL
This page includes details for upgrading from MariaDB 10.11 to MariaDB 11.0. It is currently incomplete. Note that MariaDB 10.11 is maintained for five years, while MariaDB 11.0 is a short-term maintenance release, only maintained for one year.
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.6 to MariaDB 10.7 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 11.0. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.11 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
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.
InnoDB Defragmentation is not particularly useful and causes a maintenance burden.
Has been set for many releases. Unsetting (the original InnoDB default) is no longer useful
Mapped it to 4 new boolean parameters that can be changed while the server is running
Use log_slow_filter without admin
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows.
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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.8. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.7 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
On Linux and Windows, the physical block size of the underlying storage is instead detected and used.
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.
MariaDB now deletes orphan files, so this setting should never be necessary.
You might consider using the following major new features in MariaDB 10.8:
Stored procedures already have support for the IN, OUT and INOUT parameter qualifiers. Added as well for stored functions and (IN only) cursors (MDEV-10654).
Individual columns in the index can now be explicitly sorted in the ascending or descending order. This can be useful for optimizing certain ORDER BY cases (MDEV-13756, MDEV-26938, MDEV-26939, MDEV-26996).
See also System Variables Added in MariaDB 10.8.
This page is licensed: CC BY-SA / Gnu FDL
Note that MariaDB 10.7 is only maintained for one year. MariaDB 10.6 is currently the latest long-term maintenance release.
For Windows, see Upgrading MariaDB on Windows.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.6 to MariaDB 10.7 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.7. 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.
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
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.
Run mariadb-upgrade.
mariadb-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 .
On most servers upgrading from 10.6 should be painless. However, there are some things that have changed which could affect an upgrade:
ROW_NUMBER is now a reserved word.
If a non-zlib compression algorithm was used in InnoDB or Mroonga before upgrading to 10.7, those tables will be unreadable until the appropriate compression library is installed. See Compression Plugins#Upgrading.
The following options should be removed or renamed if you use them in your option files:
Use wsrep_mode instead.
Use wsrep_mode instead.
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows instead.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.3 to MariaDB 10.4 with Galera Cluster 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 mariadb-backup.
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.
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
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.
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 .
On most servers upgrading from 10.3 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
See Authentication from MariaDB 10.4 for an overview of the changes.
The unix_socket authentication plugin is now default on Unix-like systems.
TLSv1.0 is disabled by default in MariaDB 10.4. See tls_version and TLS Protocol Versions.
You might consider using the following major new features in MariaDB 10.4:
System-versioning extended with support for application-time periods.
See also System Variables Added in MariaDB 10.4.
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows instead.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.2 to MariaDB 10.3 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.3. 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. The server should be cleanly shut down, with no incomplete transactions remaining. innodb_fast_shutdown must be set to 0
or 1
and innodb_force_recovery must be less than 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
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.
Run mysql_upgrade.
mysql_upgrade
does two things:
Ensures that the system tables in the [mysq](../../../../reference/sql-statements-and-structure/sql-statements/administrative-sql-statements/system-tables/the-mysql-database-tables/README.md)l
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 .
On most servers upgrading from 10.2 should be painless. However, there are some things that have changed which could affect an upgrade:
The following options should be removed or renamed if you use them in your option files:
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
The InnoDB file format is now Barracuda, and the old Antelope file format is no longer supported.
No longer necessary as the Antelope InnoDB file format is no longer supported.
No longer necessary as the Antelope InnoDB file format is no longer supported.
Used in XtraDB-only
Used in XtraDB-only
Large index key prefixes were made default from MariaDB 10.2, and limiting tables to small prefixes is no longer permitted in MariaDB 10.3.
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
Translated to innodb_log_checksums (NONE to OFF, everything else to ON); only existed to allow easier upgrade from earlier XtraDB versions.
Replaced by the innodb_page_cleaners system variable.
Used in XtraDB-only
Used in XtraDB-only
Used in XtraDB-only
XA transactions are always supported.
Used in XtraDB-only
Replaced by the innodb_page_cleaners system variable.
Used in XtraDB-only
New reserved words: EXCEPT and INTERSECT. These can no longer be used as identifiers without being quoted.
MariaDB 10.3 has introduced major new Oracle compatibility features. If you upgrade and are using this setting, please check the changes carefully.
As a result of implementing Table Value Constructors, the VALUES function has been renamed to VALUE().
Functions that used to only return 64-bit now can return 32-bit results (MDEV-12619). This could cause incompatibilities with strongly-typed clients.
mysqldump in MariaDB 10.3 includes logic to cater for the mysql.transaction_registry table. mysqldump
from an earlier MariaDB release cannot be used on MariaDB 10.3 and beyond.
Percona XtraBackup is not compatible with MariaDB 10.3. Installations currently using XtraBackup should upgrade to MariaDB Backup before upgrading to MariaDB 10.3.
If a user has the SUPER privilege but not the DELETE HISTORY
privilege, running mysql_upgrade will grant DELETE HISTORY
as well.
You might consider using the following major new features in MariaDB 10.3:
See also System Variables Added in MariaDB 10.3.
This page is licensed: CC BY-SA / Gnu FDL
For Windows, see Upgrading MariaDB on Windows instead.
For MariaDB Galera Cluster, see Upgrading from MariaDB 10.1 to MariaDB 10.2 with Galera Cluster 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 mariadb-backup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.2. 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.
Set innodb_fast_shutdown to 0
. It can be changed dynamically with SET GLOBAL. For example:SET GLOBAL innodb_fast_shutdown=0;
This step is not necessary when upgrading to MariaDB 10.2.5 or later. Omitting it can make the upgrade process far faster. See MDEV-12289 for more information.
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
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.
Run mysql_upgrade.
mysql_upgrade
does two things:
Ensures that the system tables in the [mysq](../../../../reference/sql-statements-and-structure/sql-statements/administrative-sql-statements/system-tables/the-mysql-database-tables/README.md)l
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 .
On most servers upgrading from 10.1 should be painless. However, there are some things that have changed which could affect an upgrade:
MariaDB 10.2 uses InnoDB as the default storage engine, rather than XtraDB, used in MariaDB 10.1 and before. See Why does MariaDB 10.2 use InnoDB instead of XtraDB? In most cases this should have minimal effect as the latest InnoDB has incorporated most of the improvements made in earlier versions of XtraDB. Note that certain XtraDB system variables are now ignored (although they still exist so as to permit easy upgrading).
In particular, take note of the changes to innodb_strict_mode, sql_mode, binlog_format, binlog_checksum and innodb_checksum_algorithm.
NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
STRICT_TRANS_TABLES, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
The following options should be removed or renamed if you use them in your option files:
aria_recover
Renamed to aria_recover_options to match myisam_recover_options.
Deprecated in MariaDB 10.0.
Memcache never implemented in MariaDB.
Memcache never implemented in MariaDB.
Memcache never implemented in MariaDB.
Memcache never implemented in MariaDB.
[
innodb_api_trx_level](../../../../reference/storage-engines/innodb/innodb-system-variables.md)
Deprecated in MariaDB 10.0.
New reserved words: OVER, RECURSIVE and ROWS. These can no longer be used as identifiers without being quoted.
TokuDB has been split into a separate package, mariadb-plugin-tokudb.
Replication from legacy MySQL servers may require setting binlog_checksum to NONE.
SQL_MODE has been changed; in particular, NOT NULL fields with no default will no longer fall back to a dummy value for inserts which do not specify a value for that field.
Auto_increment columns are no longer permitted in CHECK constraints, DEFAULT value expressions and virtual columns. They were permitted in earlier versions, but did not work correctly.
Starting with MariaDB 10.2, when the user specifies the --ssl
option with a client or utility, the client or utility will not verify the server certificate by default. In order to verify the server certificate, the user must specify the --ssl-verify-server-cert
option to the client or utility. For more information, see the list of options for the mysql client.
You might consider using the following major new features in MariaDB 10.2:
mysqlbinlog now supports continuous binary log backups
See also System Variables Added in MariaDB 10.2.
This page is licensed: CC BY-SA / Gnu FDL
There are no changes in table or index formats between MariaDB 10.0 and MariaDB 10.1, so on most servers the upgrade should be painless.
For Windows, see Upgrading MariaDB on Windows instead.
For MariaDB Galera Cluster, see Upgrading from MariaDB Galera Cluster 10.0 to MariaDB 10.1 with Galera Cluster 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 Percona XtraBackup.
The suggested upgrade procedure is:
Modify the repository configuration, so the system's package manager installs MariaDB 10.1. 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.
Set innodb_fast_shutdown to 0
. It can be changed dynamically with SET GLOBAL. For example:SET GLOBAL innodb_fast_shutdown=0;
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
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.
Run mysql_upgrade.
mysql_upgrade
does two things:
Ensures that the system tables in the [mysq](../../../../reference/sql-statements-and-structure/sql-statements/administrative-sql-statements/system-tables/the-mysql-database-tables/README.md)l
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 .
As mentioned previously, on most servers upgrading from 10.0 should be painless. However, there are some things that have changed which could affect an upgrade:
The ARCHIVE storage engine is no longer enabled by default, and the plugin needs to be specifically enabled.
The BLACKHOLE storage engine is no longer enabled by default, and the plugin needs to be specifically enabled.
MariaDB 10.1 introduces new, standards-compliant behavior for dealing with primary keys over nullable columns. In certain edge cases this could cause replication issues when replicating from a MariaDB 10.0 master to a MariaDB 10.1 slave using statement-based replication. See MDEV-12248.
Most of the following options have increased in value to give better performance.
The following options should be removed or renamed if you use them in your config files:
Unused in 10.0
Note that explicit or implicit casts from MAX(string) to INT, DOUBLE or DECIMAL now produce warnings (MDEV-8852).
You might consider using the following major new features in MariaDB 10.1:
Galera Cluster is now included by default.
This page is licensed: CC BY-SA / Gnu FDL
There are no changes in table or index formats between MariaDB 5.3 and MariaDB 5.5, so on most servers the upgrade should be painless.
The suggested upgrade procedure is:
For Windows, see Upgrading MariaDB on Windows instead.
Shutdown MariaDB 5.3
Take a backup (this is the perfect time to take a backup of your databases)
Uninstall MariaDB 5.3
Install MariaDB 5.5 [1]
Run mysql_upgrade
Ubuntu and Debian packages do this automatically when they are installed; Red Hat, CentOS, and Fedora packages do not
mysql_upgrade
does two things:
Upgrades the permission tables in the mysql
database with some new fields
Does a very quick check of all tables and marks them as compatible with MariaDB 5.5
In most cases this should be a fast operation (depending of course on the number of tables)
Add new options to my.cnf to enable features
If you change my.cnf
then you need to restart mysqld
As mentioned previously, on most servers upgrading from 5.5 should be painless. However, there are some things that have changed which could affect an upgrade:
Percona, the provider of XtraDB, does not provide all earlier XtraDB features in the 5.5 code base. Because of that, MariaDB 5.5 can't provide them either. The following options are not supported by XtraDB 5.5. If you are using them in any of your my.cnf files, you should remove them before upgrading to 5.5.
innodb_adaptive_checkpoint; Use innodb_adaptive_flushing_method instead.
innodb_auto_lru_dump; Use innodb_buffer_pool_restore_at_startup instead (and innodb_buffer_pool_load_at_startup in MariaDB 10.0).
innodb_expand_import; Use innodb_import_table_from_xtrabackup instead.
innodb_extra_rsegments; Use innodb_rollback_segments instead.
innodb_pass_corrupt_table; Use innodb_corrupt_table_action instead.
↑ If using a MariaDB apt
or yum
repository, it is often enough to replace instances of '5.3' with '5.5' and then run an update/upgrade. For example, in Ubuntu/Debian update the MariaDB sources.list
entry from something that looks similar to this:
deb http://ftp.osuosl.org/pub/mariadb/repo/5.3/ubuntu trusty main
To something like this:
deb http://ftp.osuosl.org/pub/mariadb/repo/5.5/ubuntu trusty main
And then run
apt-get update && apt-get upgrade
And in Red Hat, CentOS, and Fedora, change the baseurl
line from something that looks like this:
baseurl = http://yum.mariadb.org/5.3/centos6-amd64
To something that looks like this:
baseurl = http://yum.mariadb.org/5.5/centos6-amd64
And then run
yum update
This page is licensed: CC BY-SA / Gnu FDL