Upgrade MariaDB Community Server from 10.3.X to 10.3.Y on Ubuntu 20.04 LTS
These instructions detail a minor release upgrade with MariaDB Community Server 10.3 on Ubuntu 20.04 LTS.
A minor release upgrade is a change from an earlier release of MariaDB Community 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 Community Server 10.3.28 to MariaDB Community Server 10.3.31.
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.
Take a full backup:
$ sudo mariabackup --backup \ --user=mariabackup_user \ --password=mariabackup_passwd \ --target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared:
$ sudo mariabackup --prepare \ --target-dir=/data/backup/preupgrade_backup
Confirm successful completion of the prepare operation.
Backups should be tested before they are trusted.
Stop the MariaDB Server Process
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
SET GLOBAL innodb_fast_shutdown = 1;
Use XA RECOVER to confirm that there are no external XA transactions in a prepared state:
Commit or rollback any open XA transactions before stopping the node for upgrade.
Stop the server process using the
$ sudo systemctl stop mariadb
Install the New Version
MariaDB Corporation provides a APT package repository for Ubuntu 20.04 LTS.
Install via APT (Debian/Ubuntu)
Configure the APT package repository.
To configure APT package repositories:
$ sudo apt install wget $ wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup $ echo "fd3f41eefff54ce144c932100f9e0f9b1d181e0edd86a6f6b8f2a0212100c32c mariadb_repo_setup" \ | sha256sum -c - $ chmod +x mariadb_repo_setup $ sudo ./mariadb_repo_setup \ --mariadb-server-version="mariadb-10.3" $ sudo apt update
Update MariaDB Community Server and package dependencies:
$ sudo apt install --only-upgrade "mariadb-*" "galera*"
Starting the Server
MariaDB Community 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.
Ubuntu 20.04 LTS uses systemd. You can manage the Server process using the
Enable during startup
Disable during startup
Upgrading the Data Directory
MariaDB Community Server 10.3 ships with the mysql_upgrade utility which 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:
$ sudo mysql_upgrade
When MariaDB Community 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
$ sudo mysql Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 9 Server version: 10.3.31-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)]>
The version of the server can be verified by checking the client's initial output.
SHOW GLOBAL VARIABLES LIKE 'version';
+---------------+-----------------+ | Variable_name | Value | +---------------+-----------------+ | version | 10.3.31-MariaDB | +---------------+-----------------+
You can also verify the server version by calling the VERSION() function:
+-----------------+ | VERSION() | +-----------------+ | 10.3.31-MariaDB | +-----------------+