从零开始,给云服务器部署mysql

55 阅读2分钟

1. 检查系统环境

确保你的系统已经更新,并且有权限安装软件。

sudo yum update -y

2. 安装 MySQL 官方 Yum 仓库

默认情况下,CentOS 的官方仓库中提供的是 MariaDB。如果你需要安装 MySQL,需要先添加 MySQL 官方 Yum 仓库。

下载并安装 MySQL 官方仓库包:

sudo yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

验证仓库是否添加成功:

yum repolist all | grep mysql

你应该能看到包含 MySQL 的仓库列表。

3. 安装 MySQL

安装 MySQL Server:

sudo yum install -y mysql-community-server

4. 启动 MySQL 服务

安装完成后,启动 MySQL 服务并设置开机启动。

启动 MySQL:

sudo systemctl start mysqld

设置 MySQL 开机启动:

sudo systemctl enable mysqld

检查 MySQL 服务状态:

sudo systemctl status mysqld

1732885578641.jpg

5. 获取临时密码

MySQL 在首次启动时会为 root 用户生成一个临时密码。你可以在以下文件中找到它:

sudo grep 'temporary password' /var/log/mysqld.log

输出示例:

image.png

记住此临时密码,稍后登录时会用到。

6. 运行安全配置脚本

为保证安全性,运行 MySQL 的安全配置脚本:

sudo mysql_secure_installation

脚本将引导你完成以下操作:

  • 设置 root 用户的新密码。
  • 删除匿名用户。
  • 禁止远程以 root 登录。
  • 删除测试数据库。
  • 重新加载权限表。

7. 登录 MySQL

使用新密码登录 MySQL:

mysql -u root -p

输入密码后即可进入 MySQL 控制台。

8. (可选)允许远程连接

如果需要允许远程连接,修改配置文件并设置权限。

修改 MySQL 配置文件:

编辑 /etc/my.cnf 或 /etc/mysql/my.cnf 文件:

sudo vim /etc/my.cnf

找到 bind-address,将其改为 0.0.0.0,或注释掉该行。 如果没找到,自己在下面补充一行

image.png

添加远程访问权限:

进入 MySQL 控制台: 版本在MySQL在5.7以下:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;

不过大概率安装的是8.0版本的,8.0版本的命令

ALTER USER 'root'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

重启 MySQL 服务:

sudo systemctl restart mysqld

开放 MySQL 端口(3306):

通过防火墙开放端口:

sudo firewall-cmd --permanent --add-service=mysql
sudo firewall-cmd --reload

9. 验证 MySQL 安装

确认 MySQL 已经成功安装并运行:

mysql -V

image.png

最后试下远程连接

image.png 没问题 image.png

最后补充一下,如果是云服务器,记得登录到云服务里安全组里将端口打开,否则无法连接上:

image.png