在云服务器上安装 MySQL 是一个常见的操作,适用于搭建网站、数据库服务等场景。以下是基于 Linux 系统(以 CentOS 7/8 和 Ubuntu 20.04+ 为例) 在云服务器上安装 MySQL 的完整步骤。
🧾 准备工作
-
登录你的云服务器
ssh root@your_server_ip -
更新系统软件包(可选但推荐)
- Ubuntu:
sudo apt update && sudo apt upgrade -y - CentOS:
sudo yum update -y
- Ubuntu:
✅ 安装 MySQL(以 MySQL 8.0 为例)
方式一:使用官方仓库安装(推荐)
🔹 Ubuntu 安装 MySQL
# 安装 MySQL 服务器
sudo apt install mysql-server -y
# 启动 MySQL 服务并设置开机自启
sudo systemctl start mysql
sudo systemctl enable mysql
# 查看状态
sudo systemctl status mysql
运行安全初始化(设置密码等):
sudo mysql_secure_installation
按照提示设置 root 密码、移除匿名用户、禁止远程 root 登录等。
🔹 CentOS 安装 MySQL
- 添加 MySQL 官方 Yum 仓库
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
注意:根据你的 CentOS 版本选择对应的 RPM 包(比如 el7 或 el8):
MySQL 下载页面
- 安装 MySQL 服务器
sudo yum install mysql-server -y
- 启动并启用 MySQL 服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
- 查看临时 root 密码
安装完成后会生成一个临时 root 密码:
sudo grep 'temporary password' /var/log/mysqld.log
- 运行安全初始化
sudo mysql_secure_installation
输入刚才的临时密码,然后设置新的 root 密码和其他安全选项。
🔐 配置远程访问(如需从其他机器连接)
- 编辑 MySQL 配置文件
- Ubuntu:
/etc/mysql/mysql.conf.d/mysqld.cnf - CentOS:
/etc/my.cnf
找到 bind-address 行,修改为:
bind-address = 0.0.0.0
保存退出。
- 重启 MySQL 服务
sudo systemctl restart mysql # Ubuntu
sudo systemctl restart mysqld # CentOS
- 创建允许远程访问的用户(可选)
进入 MySQL 控制台:
mysql -u root -p
执行 SQL 命令:
CREATE USER 'newuser'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
如果你只需要特定 IP 访问,请将
'newuser'@'%'改为'newuser'@'your_ip'
🔒 防火墙配置(开放 3306 端口)
- Ubuntu (UFW):
sudo ufw allow 3306/tcp
sudo ufw reload
- CentOS (firewalld):
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload
☁️ 云平台安全组设置
在云服务商控制台(如阿里云、腾讯云、AWS 等),确保:
- 安全组规则中放行 TCP 3306 端口
- 源 IP 可设置为
0.0.0.0/0(测试用)或指定 IP(更安全)
🧪 测试连接
可以使用本地客户端工具(如 Navicat、DBeaver、MySQL Workbench)尝试连接云服务器上的 MySQL 数据库。
📌 常见问题
| 问题 | 解决方案 |
|---|---|
| 连接不上 MySQL | 检查防火墙、安全组、bind-address是否正确 |
| root 密码错误 | 重置 root 密码(搜索“MySQL 忘记 root 密码”) |
| 启动失败 | 查看日志文件 /var/log/mysqld.log |
如果你告诉我你使用的具体操作系统版本和云平台(如阿里云、腾讯云、AWS 等),我可以提供更具体的指导哦!
需要我帮你写一个一键安装脚本吗?
云计算HECS