如何在CentOS上安装MySQL

时间:2020-02-23 14:30:48  来源:igfitidea点击:

在本教程中,我们将学习在CentOS服务器上安装MySQL。

什么是MySQL?

MySQL是一个开源关系数据库管理系统(RDBMS)。

因此,让我们开始安装过程。
打开终端并以root用户身份登录到服务器。

步骤1:清理并更新yum

最佳做法是先清理并更新yum,然后执行安装。

在终端中执行以下内容清理yum。

# sudo yum clean all

现在执行更新

# sudo yum -y update

更新完成后,我们准备安装mysql。

步骤2:安装MySQL

要安装MySQL,请使用以下命令。

# sudo yum install mysql-server

步骤3:启动MySQL

安装MySQL之后,我们必须启动它。
使用以下命令。

# sudo systemctl start mysqld

注意!

要停止MySQL,请使用以下命令。

# sudo systemctl stop mysqld

要使MySQL在启动时启动,请使用以下命令。

# sudo systemctl enable mysqld

要重启MySQL,请使用以下命令

# sudo systemctl restart mysqld

步骤4:设定MySQL

通过运行以下命令来设置MySQL。
这将帮助您创建MySQL的登录密码。

# sudo mysql_secure_installation

或者,您可以使用以下内容

# sudo /usr/bin/mysql_secure_installation

提示将要求您输入当前的root密码。
由于我们刚才安装了MySQL,因此将没有root密码。
因此,您可以按Enter保留它。

现在,将询问您是否要为root用户设置密码。
始终建议设置密码。
因此,输入Y并按照给定的说明进行操作:

New password: password
Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
 ... Success!

步骤5:登录到MySQL Shell并创建数据库

使用以下命令登录到MySQL Shell。

# mysql -u root -p
Enter password: "TYPE IN ROOT USER PASSWORD"

mysql>

一旦成功登录,就可以创建数据库了。
为此,请使用以下SQL命令。

mysql> CREATE DATABASE mydb;

在上面的示例中,mydb是创建的数据库的名称。

要检查创建的数据库,请执行以下SQL命令。

mysql> SHOW DATABASES;

您将获得类似的输出。

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mydb               |
| mysql              |
+--------------------+
3 rows in set (0.00 sec)

步骤6:为数据库创建一个新用户

您可以创建一个新用户,以后您的应用程序可以使用它来访问数据库。

要创建新用户,请在以下命令中输入。

mysql> CREATE USER 'mydbuser'@'localhost' IDENTIFIED BY 'mydbuserpassword';

创建具有密码mydbuserpassword的新用户mydbuser。

步骤7:向用户授予权限

使用以下命令向在上述步骤中创建的新用户授予特权。

mysql> GRANT ALL PRIVILEGES ON mydb.* to mydbuser@localhost;

现在,使用以下命令使特权生效。

mysql> FLUSH PRIVILEGES;

注意!

使用以下命令检查用户的授予。

mysql> SHOW GRANTS FOR 'mydbuser'@'localhost';
+--------------------------------------------------------------------------------------------------------------------------------------------+
| Grants for mydbuser@localhost                                                                                                              |
+--------------------------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'mydbuser'@'localhost' IDENTIFIED BY PASSWORD '*8F767905A3234ABC20EBACD9112E4AAB2A9227C9' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'mydbuser'@'localhost' WITH GRANT OPTION                                                                           |
+--------------------------------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)

要撤消(或者收回)用户的赠款,请使用以下命令。

mysql> REVOKE ALL ON mydb.* FROM mydbuser@localhost;