How to Install and Secure MariaDB 10 in CentOS 7

MariaDB is a free and open source fork of well known MySQL database management server software, developed by the brains behind MySQL, it’s envisioned to remain free/open source.

In this tutorial, we will show you how to install MariaDB 10.1 stable version in the most widely used versions of RHEL/CentOS and Fedora distributions.

For your information, Red Hat Enterprise Linux/CentOS 7.0 switched from supporting MySQL to MariaDB as the default database management system.

Note that in this tutorial, we’ll assume your working on the server as root, otherwise, use the sudo command to run all the commands.

Step 1: Add MariaDB Yum Repository

1. Start by adding the MariaDB YUM repository file MariaDB.repo for RHEL/CentOS and Fedora systems.

# vi /etc/yum.repos.d/MariaDB.repo

Now add the following lines to your respective Linux distribution version as shown.

On CentOS 7

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.9/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

On RHEL 7

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.9/rhel7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Add MariaDB Yum Repo
Add MariaDB Yum Repo

Step 2: Install MariaDB in CentOS 7

2. Once MariaDB repository has been added, you can easily install it with just one single command.

# yum install MariaDB-server MariaDB-client -y
Install MariaDB in CentOS 7
Install MariaDB in CentOS 7

3. As soon as the installation of MariaDB packages completes, start the database server daemon for the time being, and also enable it to start automatically at the next boot like so:

# systemctl start mariadb
# systemctl enable mariadb
# systemctl status mariadb
Start MariaDB Service in CentOS 7
Start MariaDB Service in CentOS 7

Step 3: Secure MariaDB in CentOS 7

4. Now its time to secure your MariaDB by setting root password, disabling remote root login, removing the test database as well as anonymous users and finally reload privileges as shown in the screen shot below:

# mysql_secure_installation
Secure MySQL in CentOS 7
Secure MySQL in CentOS 7

5. After securing the database server, you may want to check certain MariaDB features such as: installed version, default program argument list, and also login to the MariaDB command shell as follows:

# mysql -V
# mysqld --print-defaults
# mysql -u root -p
Verify MySQL Version
Verify MySQL Version

Step 4: Learn MariaDB Administration

If you are new to MySQL/MariaDB, start off by going through these guides:

  1. Learn MySQL / MariaDB for Beginners – Part 1
  2. Learn MySQL / MariaDB for Beginners – Part 2
  3. MySQL Basic Database Administration Commands – Part III
  4. 20 MySQL (Mysqladmin) Commands for Database Administration – Part IV

Also check out these following articles to fine tune your MySQL/MariaDB performance and use the tools to monitor the activity of your databases.

  1. 15 Tips to Tune and Optimize Your MySQL/MariaDB Performance
  2. 4 Useful Tools to Monitor MySQL/MariaDB Database Activities

That’s it for now! In this simple tutorial, we showed you how to install MariaDB 10.1 stable version in various RHEL/CentOS and Fedora. Use the feedback form below to send us any questions or any thoughts concerning this guide.

Two small things before you go

If something didn’t work on your setup, leave a comment and tell me which distro and version you’re on. I read every one, and most of these articles got better because a reader pointed out what was missing.

And if it did work, share it. TecMint has stayed free for 14 years because people pass these articles around, and that traffic is what pays for writing the next one.

Leave a comment
Get two free Linux courses

Learn the Linux basics with two free courses and join 34,000+ readers getting practical TecMint tutorials and selected Pro TecMint articles every week.

Pro TecMint
Get lifetime access for $99

If you want to go beyond the free tutorials, Pro gives you 18 courses, 5 ebooks, and every future course I add. One payment, lifetime access, no renewals.

Aaron Kili
Aaron Kili
Contributor
About the author

Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

3 Comments

Leave a Reply
  1. hello, I see you said, “n” (no) to not change the password for root in that case what would be the password of the user root? maybe the password of the user root of the operating system?

    Reply

Got Something to Say? Join the Discussion...

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.