How to Install and Use MariaDB on Ubuntu 22.04
MariaDB is a free, open-source, and powerful database management system used to store application data. It is a stable and relational database management system, and fork of the popular MySQL database system. It is specially designed for scalability and mission-critical deployments. At the time of writing this tutorial, the latest version of MariaDB is 10.6.7. Every major release will be maintained for at least 5 years. So MariaDB 10.6.7 will be supported until 2026.
In this tutorial, we will show you how to install MariaDB 10.6 on Ubuntu 22.04 server.
- A server running Ubuntu 22.04.
- A root password is configured on the server.
Install and Configure MariaDB
First, update all the system packages with the following command:
apt update -y
Once all the packages are updated, install the latest version of the MariaDB server and client with the following command:
apt-get install mariadb-server mariadb-client -y
After successful installation, start the MariaDB service and enable it to start at system reboot:
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
You should see the following output:
? mariadb.service - MariaDB 10.6.7 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-06-25 14:34:47 UTC; 39s ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Process: 3174 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS) Process: 3175 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 3177 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $?> Process: 3218 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 3220 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS) Main PID: 3206 (mariadbd) Status: "Taking your SQL requests now..." Tasks: 13 (limit: 4579) Memory: 57.2M CPU: 582ms CGroup: /system.slice/mariadb.service ??3206 /usr/sbin/mariadbd Jun 25 14:34:47 ubuntu2204 mariadbd: 2022-06-25 14:34:47 0 [Note] /usr/sbin/mariadbd: ready for connections. Jun 25 14:34:47 ubuntu2204 mariadbd: Version: '10.6.7-MariaDB-2ubuntu1' socket: '/run/mysqld/mysqld.sock' port: 3306 Ubuntu 22.04 Jun 25 14:34:47 ubuntu2204 systemd: Started MariaDB 10.6.7 database server. Jun 25 14:34:47 ubuntu2204 /etc/mysql/debian-start: Upgrading MySQL tables if necessary.
Next, you will need to secure the MariaDB installation and set the MariaDB root password. You can do it by running the following script:
You will be asked to provide your current root password as shown below:
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):
Just press Enter. You will be asked to switch to unix_socket authentication as shown below:
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 authorization. You already have your root account protected, so you can safely answer 'n'. Switch to unix_socket authentication [Y/n] Y
Type Y and hit Enter. You will be asked to change the root password as shown below:
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
Type Y and hit Enter to change the root password.
New password: Re-enter new password:
Provide your secure password and hit Enter. You should see the following output:
Password updated successfully! Reloading privilege tables.. ... Success! Next, you will be asked to remove anonymous users as shown below: 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
Type Y and hit Enter to remove the anonymous users. You will be asked to disallow remote root login as shown below:
... 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
Type Y and hit Enter. You will be asked to remove a test database as shown below:
... 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
Type Y and hit Enter to remove the test database. You will be asked to reload the privileges tables as shown below:
- 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
Type Y and hit Enter, you should see the following output:
... 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!
Verify MariaDB Version
At this point, MariaDB is installed and secured. Next, you will need to verify the installed version of MariaDB.
First, log in to the MariaDB shell with the following command:
mysql -u root -p
Provide your MariaDB root password and hit Enter. Once log in, you should see the following output:
Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 41 Server version: 10.6.7-MariaDB-2ubuntu1 Ubuntu 22.04 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)]>
Run the following command to verify the MariaDB version:
MariaDB [(none)]> SELECT VERSION();
You should get the following output:
+-------------------------+ | VERSION() | +-------------------------+ | 10.6.7-MariaDB-2ubuntu1 | +-------------------------+ 1 row in set (0.000 sec)
Congratulations! you have successfully installed and secured MariaDB 10.6 on Ubuntu 22.04 server. You can now create a new database, and user and connect it with your application.