MySQL is one of the popular database management systems.
Currently, MySQL is no longer within the Centos repository, and MariaDB is now the default database offered by the Centos repositories.
We believe you are logged in with the root user to perform these steps to install MySQL 5.7 on Centos 7.1
1. First, let us update the Centos with the Yum update command.
Yum update
2. Install wget to download the files from the internet.
yum install wget
3. Let us proceed to install MySQL; download and add the repository first.
wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
4. Run this command to install MySQL 5.7 on your VPS –
yum -y install mysql-community-server --disablerepo=mysql80-community --enablerepo=mysql57-community
5. Start and check the status of MySQL Service.
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
6. Get a temporary password for the root user –
less /var/log/mysqld.log | grep pass
A temporary password is generated for root@localhost: o!5y,JGALQa
7. Execute a secure installation tool to reset the password.
$ sudo mysql_secure_installation
Securing the MySQL server deployment.
Enter the password for the user root:
The 'validate_password' plugin is installed on the server.
The subsequent steps will run with the existing configuration of the plugin.
Using existing password for root.
Estimated strength of the password: 100
Change the password for root? ((Press y|Y for Yes, any other key for No) : y
New password:
Re-enter new password:
Estimated strength of the password: 100
Do you wish to continue with the password provided? (Press y|Y for Yes, any other key for No) : y
By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL 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? (Press y|Y for Yes, any other key for No) : 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? (Press y|Y for Yes, any other key for No) : y
Success.
By default, MySQL 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? (Press y|Y for Yes, any other key for No) : 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? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
8. Connect MySQL server:
mysql -u root -p