How to Install MySQL 8 on CentOS Stream 8: A Step-by-Step Tutorial

In this comprehensive step-by-step tutorial, we’ll guide you through the process of installing MySQL 8 on CentOS Stream 8.

Posted on

MySQL is a robust and widely-used relational database management system known for its performance and scalability. CentOS Stream 8, a rolling-release Linux distribution, provides a flexible platform for hosting MySQL databases. In this comprehensive step-by-step tutorial, we’ll guide you through the process of installing MySQL 8 on CentOS Stream 8. We’ll also provide an example of creating a database and table once MySQL is installed. By combining MySQL with CentOS Stream 8, you can create a reliable environment for various database-driven applications and web services.

Prerequisites

Before we proceed with the installation, ensure you have the following prerequisites in place:

  1. Access to a CentOS Stream 8 Server: You should have SSH access to a CentOS Stream 8 server. If you don’t have one yet, consider setting up a virtual machine or using a cloud server.

  2. Root or Sudo Access: You need root or sudo privileges on the server to install and configure MySQL.

  3. Update Your System: Ensure your CentOS Stream 8 system is up to date by running the following command:

    sudo dnf update
    

Step 1: Adding the MySQL Yum Repository

MySQL provides official Yum repositories that simplify the installation process. Follow these steps to add the repository:

  1. Download the MySQL Yum Repository configuration RPM:

    sudo dnf install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
    
  2. Once the RPM is downloaded, enable the MySQL repository:

    sudo dnf config-manager --enable mysql80-community
    

Step 2: Installing MySQL Server

With the repository added, you can now proceed with the MySQL installation:

  1. Install MySQL Server and the client using this command:

    sudo dnf install mysql-server
    
  2. Start the MySQL service and set it to start on boot:

    sudo systemctl start mysqld
    sudo systemctl enable mysqld
    
  3. Retrieve the initial MySQL root password using the following command:

    sudo grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}'
    

    Make a note of this password; you will need it to log in to MySQL in the next step.

  4. Secure your MySQL installation by running the MySQL secure installation script:

    sudo mysql_secure_installation
    

    Follow the prompts to configure your MySQL installation’s security settings, including changing the root password if desired.

Step 3: Accessing MySQL

You can access the MySQL shell using the following command:

mysql -u root -p

You will be prompted to enter the root password you obtained in the previous step.

Step 4: Creating a Database and Table

Let’s create a sample database and table within MySQL:

  1. After logging in to MySQL, create a new database called test_db:

    CREATE DATABASE test_db;
    
  2. Switch to the newly created database:

    USE test_db;
    
  3. Create a sample table, for instance, a simple “users” table:

    CREATE TABLE users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        username VARCHAR(50) NOT NULL,
        email VARCHAR(100) NOT NULL
    );
    
  4. You can then verify the table creation using:

    SHOW TABLES;
    

Conclusion

Congratulations! You’ve successfully installed MySQL 8 on your CentOS Stream 8 server, obtained the initial root password, and created a sample database and table. MySQL is a powerful database management system that you can now use to develop applications and manage data effectively. Remember to maintain your MySQL installation by applying updates and adhering to best practices for database security.

If you want to learn more about MySQL, please use our MySQL tutorials and MySQL Reference.