Install and Secure MySQL 8 on CentOS 8

In this tutorial, you will learn how to install and secure MySQL 8 on CentOS 8.

Prerequisites

  • A server running on CentOS 8.
  • A user account with administrative privileges for installing MySQL Server and configuring firewall.

Step 1 – Installing MySQL

Run the following command to install the mysql-server and its dependencies:

$ sudo dnf install mysql-server

When promoted, press y and then ENTER to confirm that you want to proceed. After few seconds, MySQL is installed without started on your server. In order to start MySQL, you need to start MySQL server with systemctl command:

$ sudo systemctl start mysqld.service

To check MySQL server is running correctly, run the following command:

$ sudo systemctl status mysqld

The output will show that the MySQL service is active if it was successfully started:

If you want to start MySQL automatically when the server boots up, run following command:

$ sudo systemctl enable mysqld

Run following command if you do not want to start MySQL when the server boots up:

$ sudo systemctl disable mysqld

Step 2 – Securing MySQL Server

After step 1, the MySQL server is now installed, running and can be auto started when server boots up. But you have to harden your database’s security.

MySQL has a security script which allows you to set configurations for your MySQL server.

  1. Set password for the root account
  2. Whether to remove anonymous users
  3. Whether to disallow root login remotely
  4. Whether to remove test database and access to it
  5. Whether to reload privilege tables now

For doing above items, run following command:

$ sudo mysql_secure_installation

Step 3 – Connect to MySQL

Use following command to connect to MySQL server:

$ mysql -u root -p

It will prompt you for the password of the root user, type the password and press ENTER.

It will show you the mysql command if connect to MySQL server successfully.

Summary

In this tutorial, you have installed and secured MySQL 8 on CentOS 8.

One Reply to “Install and Secure MySQL 8 on CentOS 8”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.