An upgrade guide for an older, end-of-life version of MariaDB Enterprise Server, kept for reference purposes for legacy systems.
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 . For more information about backing up and restoring the database, please see the .
Take a full backup.
On MariaDB Enterprise Server 10.4 and later:
On MariaDB Enterprise Server 10.3 and earlier:
Confirm successful completion of the backup operation.
The backup must be prepared.
On MariaDB Enterprise Server 10.4 and later:
On MariaDB Enterprise Server 10.3 and earlier:
Confirm successful completion of the prepare operation.
Before the new version can be installed, we first need to stop the current MariaDB Server process.
Set the system variable to 1:
Use to confirm that there are no external in a prepared state:
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
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 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
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
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:
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:
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 in MariaDB Enterprise Server 10.4 and later:
And the utility is called in MariaDB Enterprise Server 10.3 and 10.2:
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 (ES10.4 and later) or mysql (ES10.3, ES10.2):
You can also verify the server version by checking the value of the system variable with the statement:
You can also verify the server version by calling the function:
Backups should be tested before they are trusted.
systemctl--mariadb-server-version10.4.To configure YUM package repositories:
Checksums of the various releases of the mariadb_es_repo_setup script can be found in the Versions section at the bottom of the MariaDB Package Repository Setup and Usage page. Substitute ${checksum} in the example above with the latest checksum.
Update MariaDB Enterprise Server and package dependencies:
For users who have the Spider storage engine loaded who are upgrading from or earlier, Spider's new RPM package and dependencies must be manually installed after upgrading to or later.
In and earlier, Spider's components were installed with the server's RPM package.
Starting with , 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:
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 . The following directions reference 10.4.
To configure APT package repositories:
Checksums of the various releases of the mariadb_es_repo_setup script can be found in the section at the bottom of the page. Substitute ${checksum} in the example above with the latest checksum.
Update MariaDB Enterprise Server and package dependencies:
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 . The following directions reference 10.4.
To configure ZYpp package repositories:
Checksums of the various releases of the mariadb_es_repo_setup script can be found in the section at the bottom of the page. Substitute ${checksum} in the example above with the latest checksum.
Update MariaDB Enterprise Server and package dependencies:
For users who have the loaded who are upgrading from or earlier, Spider's new RPM package and dependencies must be manually installed after upgrading to or later.
In and earlier, Spider's components were installed with the server's RPM package.
Starting with , 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:
/etc/my.cnf.d/mysql-clients.cnf/etc/my.cnf.d/server.cnf
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
$ sudo yum update "MariaDB-*" "galera*"$ sudo yum install MariaDB-spider-engine$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup$ sudo mariadb-backup --backup \
--user=mariadb-backup_user \
--password=mariadb-backup_passwd \
--target-dir=/data/backup/preupgrade_backup$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backup$ sudo mariadb-backup --prepare \
--target-dir=/data/backup/preupgrade_backupSET GLOBAL innodb_fast_shutdown = 1;XA RECOVER;$ 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$ sudo mariadb-upgrade$ sudo mysql_upgrade$ sudo mariadbWelcome 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)]>SHOW GLOBAL VARIABLES LIKE 'version';+---------------+-------------------------------+
| Variable_name | Value |
+---------------+-------------------------------+
| version | 10.4.34-24-MariaDB-Enterprise |
+---------------+-------------------------------+SELECT VERSION();+-------------------------------+
| VERSION() |
+-------------------------------+
| 10.4.34-24-MariaDB-Enterprise |
+-------------------------------+$ sudo systemctl stop mariadb$ sudo yum install curl$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup$ echo "${checksum} 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 install curl$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup$ echo "${checksum} 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$ sudo apt install --only-upgrade "mariadb-*" "galera*"$ sudo zypper install curl$ curl -LsSO https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup$ echo "${checksum} 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 zypper update "MariaDB-*" "galera*"$ sudo zypper install MariaDB-spider-engineThis page is: Copyright © 2025 MariaDB. All rights reserved.