These instructions detail the upgrade from a previous version of MariaDB Community Server to MariaDB Community Server 10.5 on Debian 9.
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:
--user=mariabackup_user \ --password=mariabackup_passwd \ --target-dir=/backup/preupgrade_backup
Confirm successful completion of the backup operation.
The backup must be prepared:
$ 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.
Uninstall the Old Version
When upgrading to a new major release of MariaDB Community Server, it is necessary to remove the existing installation of MariaDB Community Server, before installing the new version of MariaDB Community Server. Otherwise, the package manager will refuse to install the new version of MariaDB Community Server.
Stop the MariaDB Server Process
Before the old version can be uninstalled, we first need to stop the current MariaDB Server process.
- Stop the server process using the
$ sudo systemctl stop mariadb
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 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, the package is called
$ sudo apt remove galera-4
When upgrading from MariaDB Community Server 10.3 or earlier, the package is called
$ sudo apt remove galera
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"
Install the New Version
MariaDB Corporation provides a APT package repository for Debian 9
Install via APT (Debian/Ubuntu)
To configure APT package repositories:
$ sudo apt install wget $ wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup $ echo "2de6253842f230bc554d3f5ab0c0dbf717caffbf45ae6893740707961c8407b7 mariadb_repo_setup" \ | sha256sum -c - $ chmod +x mariadb_repo_setup $ sudo ./mariadb_repo_setup \ --mariadb-server-version="mariadb-10.5" $ sudo apt update
Install MariaDB Community Server and package dependencies:
$ sudo apt install mariadb-server mariadb-backup
Installation only loads MariaDB Community Server to the system. MariaDB Community Server requires configuration before the database server is ready for use.
Upgrading the Data Directory
MariaDB Community Server 10.5 ships with the mariadb-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 mariadb-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:
$ sudo mariadb Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 9 Server version: 10.5.4-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.
- howto upgrade mariadb 10.x to 10.3.x on Centos 7
- How to install phpMyAdmin with nginx on Debian 11
- how to export mysql database from docker container
- How to replace MySQL with Percona Server on Debian or Ubuntu
- how to find size of the database via mysql console