How to install MariaDB 10.5 on Ubuntu 20.04 (Focal Fossa)

The
You can download this article in PDF format to support us through the following link.

Download the guide as a PDF

turn off
The

The
The

How do I install MariaDB 10.5 on Ubuntu 20.04 (Focal Fossa) server? MariaDB is a popular alternative to MySQL database server, with more features, new storage engine and better performance. The complete list you can check MariaDB 10.5 features From the official website. The MariaDB database server is released as free and open source software in the form of a general public license version 2.

Install MariaDB 10.5 on Ubuntu 20.04 LTS

To install MariaDB 10.5 on Ubuntu 20.04, you need to add MariaDB repository on your system. Then, the installation of MariaDB 10.5 on Ubuntu 20.04 will be completed in the added APT repository without any problems.

Step 1: Update the system

Ensure that the system has been updated and install the software-properties-common software package.

sudo apt update && sudo apt upgrade
sudo apt -y install software-properties-common

Step 2: Import MariaDB gpg key:

Run the following command to add the repository key to the system:

sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'

Step 3: Add MariaDB APT repository

After importing the repository GPG key, add the APT repository by running the following command:

sudo add-apt-repository 'deb [arch=amd64] http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal main'

Command execution output:

Hit:1 http://security.ubuntu.com/ubuntu focal-security InRelease
Hit:2 http://nova.clouds.archive.ubuntu.com/ubuntu focal InRelease        
Get:3 http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal InRelease [3202 B]
Hit:4 http://nova.clouds.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:5 http://nova.clouds.archive.ubuntu.com/ubuntu focal-backports InRelease
Get:6 http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal/main amd64 Packages [7924 B]
Fetched 11.1 kB in 1s (15.6 kB/s)
Reading package lists... Done

Step 4: Install MariaDB Server on 20.04 Linux

The final step is to install MariaDB Server:

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

hit ÿ Accept the key to install MariaDB 10.5 on Ubuntu 20.04 Linux.

The following additional packages will be installed:
  galera-4 libcgi-fast-perl libcgi-pm-perl libdbd-mariadb-perl libdbi-perl libencode-locale-perl libfcgi-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-template-perl libhttp-date-perl libhttp-message-perl libio-html-perl liblwp-mediatypes-perl libmariadb3 libmysqlclient21
  libterm-readkey-perl libtimedate-perl liburi-perl mariadb-client-10.5 mariadb-client-core-10.5 mariadb-common mariadb-server-10.5
  mariadb-server-core-10.5 mysql-common socat
Suggested packages:
  libclone-perl libmldbm-perl libnet-daemon-perl libsql-statement-perl libdata-dump-perl libipc-sharedcache-perl libwww-perl mailx mariadb-test
  tinyca
The following NEW packages will be installed:
  galera-4 libcgi-fast-perl libcgi-pm-perl libdbd-mariadb-perl libdbi-perl libencode-locale-perl libfcgi-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-template-perl libhttp-date-perl libhttp-message-perl libio-html-perl liblwp-mediatypes-perl libmariadb3 libmysqlclient21
  libterm-readkey-perl libtimedate-perl liburi-perl mariadb-client mariadb-client-10.5 mariadb-client-core-10.5 mariadb-common mariadb-server
  mariadb-server-10.5 mariadb-server-core-10.5 mysql-common socat
0 upgraded, 28 newly installed, 0 to remove and 0 not upgraded.
Need to get 29.5 MB of archives.
After this operation, 229 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

Step 5: Protect MariaDB server on 20.04 Linux

You must manually run the MySQL hardening script.

$ sudo mysql_secure_installation 

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] y
Enabled successfully!
Reloading privilege tables..
 ... Success!


You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

The database service should be started automatically after installation.

$  systemctl status mysql
● mariadb.service - MariaDB 10.5.2 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
    Drop-In: /etc/systemd/system/mariadb.service.d
             └─migrated-from-my.cnf-settings.conf
     Active: active (running) since Sat 2020-04-25 23:57:39 UTC; 2min 8s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 4309 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 11 (limit: 2344)
     Memory: 82.5M
     CGroup: /system.slice/mariadb.service
             └─4309 /usr/sbin/mysqld

Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: mysql
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: performance_schema
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: Phase 6/7: Checking and upgrading tables
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: Processing databases
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: information_schema
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: performance_schema
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: OK
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[5138]: Checking for insecure root accounts.
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[5142]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

Use the following command to test the login to MariaDB Shell mysql command:

$ mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or g.
Your MariaDB connection id is 56
Server version: 10.5.2-MariaDB-1:10.5.2+maria~focal-log mariadb.org binary distribution

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)]> 

Use the following command to check the version:

MariaDB [(none)]> SELECT VERSION();
+-----------------------------------------+
| VERSION() |
+-----------------------------------------+
| 10.5.2-MariaDB-1:10.5.2+maria~focal-log |
+-----------------------------------------+
1 row in set (0.000 sec)
MariaDB [(none)]>

Step 5: Install desktop database management tools

If you are not using the MySQL command line, then consider installing a database tool to help you. Please review the guide below:

Install and configure DBeaver on Ubuntu

Good MySQL books:

  • Getting started with SQL – A hands-on approach for beginners – simple, practical and introductory reading that will involve the actual meaning of SQL. Here, the reader is briefly introduced to all the basic knowledge of the language.
  • First SQL – Your SQL knowledge – study guide;
  • SQL Cookbook: Query solutions and databases Techniques for database developers – a book contains many tips and tricks that can be used for daily database management;
  • Self-study MS SQL Server – A fairly old book that covers all aspects of SQL Server from a high level;
  • Effective SQL – An easy-to-read guide that explores SQL features. Remember, you may need some SQL knowledge to apply the ideas that have been proposed.

The
You can download this article in PDF format to support us through the following link.

Download the guide as a PDF

turn off
The

The
The

Sidebar