Upgrading MariaDB from 10.0 to 10.1 to 10.2 on Ubuntu 16.04 / 17.10

For those still running Ubuntu 16.04 LTS and 17.10 with MariaDB 10.0 or 10.1 installed and hoping to upgrade to Ubuntu 18.04, they may want to upgrade MariaDB database server to version 10.2. as it’s the default database version that comes with Ubuntu 18.04 and fully supported.

This brief tutorial is going to show students and new users how to upgrade MariaDB from 10.0 to 10.1 to 10.2 on Ubuntu server to the latest version. 10.2. with every subsequent release, new features and functions are added to the newer versions. if you need to take advantage of these features, you will need to upgrade.

If you do decide the upgrade, the steps below should be a great place to starts.

Step 1: Prepare MariaDB for Upgrade

Before upgrading MariaDB, the command below may be necessary. the commands below set innodb_fast_shutdown to 0. If you don’t do that, you may run into trouble where the upgrade hangs and may not go as planned.

To prepare MariaDB for Upgrade, logon to the database server as root with the root password and run the commands below

sudo mysql -u root -p

Then run the commands below to set innodb_fast_shutdown to 0

mysql> SET GLOBAL innodb_fast_shutdown = 0;

Step 2: Backup Your Databases

Now that you’ve prepare MariaDB to upgrade properly, continue below. It’s always important to backup your databases before attempting to upgrade. on Linux systems, the mysqldump command can be used to backup MariaDB databases. To backup, run the commands below against each database you wish to backup.

sudo mysqldump -u root -p database_name > backup_database.sql

Replace database_name with the actual database you wish to backup. Do that on all your databases.

Step 3: Uninstall MariaDB 10.0 or 10.1

Now that you’ave taken a backup of your databases, you can now proceed to uninstall the older version of MariaDB. to do that, run the commands below.

First, stop the database and uninstall.

On Ubuntu 16.04, run the commands below.

sudo systemctl stop mysql.service

On Ubuntu 17.10 and up, run the commands below:

sudo systemctl stop mariadb.service

Then run the commands below to uninstall MariaDB.

sudo apt remove mariadb-server

Step 4: Install MariaDB Newer Versions

After uninstalling the older version, you can install MariaDB newer versions by using the repository below.

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

For MariaDB 10.1, add the repository below:

sudo sh -c "echo 'deb [arch=amd64,i386] https://mirrors.evowise.com/mariadb/repo/10.1/ubuntu '$(lsb_release -cs)' main' > /etc/apt/sources.list.d/MariaDB-10.1.list"

For MariaDB 10.2, add the repository below:

sudo sh -c "echo 'deb [arch=amd64,i386] https://mirrors.evowise.com/mariadb/repo/10.2/ubuntu '$(lsb_release -cs)' main' > /etc/apt/sources.list.d/MariaDB-10.2.list"

After adding the package repositories, run the commands below to install the newer version of MariaDB based on the repository you added to your systems..

sudo apt-get update
sudo apt-get install mariadb-server mariadb-client

Next, run the commands below to upgrade

sudo mysql_upgrade

If everything is right, your server should be upgraded to the newer version.


You  may also like the post below:


  1. Thank you! Needed this for a quick prod db upgrade. Only hangup was that the install process asked to created a root password, and if you do, the `upgrade_mysql` command will fail unless you have that in your `my.cnf` file. I ended up removing the root pw just to get the upgrade done!

  2. This article uses a non-standard repo from “evowise.com” and you should always be very cautious about using a non-standard repo, unless you really trust the source. Because you’re basically giving them the keys to the kingdom by running their software as root. And you may not even realize it. Official repositories can be found here: https://downloads.mariadb.org/mariadb/repositories

    1. apt will check the signatures in its default. you have to add their key and “their” means mariadbs.
      this will secure integrity of the files.

  3. Thank you, worked like a charm.
    Last step with mysql_upgrade is optional, but if it complains for the password just run it with -p like this: ‘mysql_upgrade -p’ then enter the root password

  4. Hi, it just raises this issue “skipping acquire of configured file ‘main/binary-i386/Packages’ as repository ‘https://mirrors.evowise.com/mariadb/repo/10.4/ubuntu bionic InRelease doesn’t support architecture ‘i386′”

    Don’t know why – the servers architecture is amd64.

Leave a Comment

Your email address will not be published.