在云服务器上手动安装 MySQL 数据库的步骤会因操作系统不同而略有差异。以下以 Ubuntu 20.04/22.04 和 CentOS 7/8 / Rocky Linux 为例,介绍如何手动安装 MySQL。
✅ 一、准备工作
1. 登录云服务器
使用 SSH 登录你的云服务器:
ssh username@your-server-ip
2. 更新系统包
Ubuntu:
sudo apt update && sudo apt upgrade -y
CentOS/Rocky Linux:
sudo yum update -y
# 或者对于较新版本使用 dnf
sudo dnf update -y
✅ 二、安装 MySQL(以最新稳定版为例)
方法一:使用官方 MySQL APT/YUM 仓库(推荐)
▶ Ubuntu 安装 MySQL
- 下载并添加 MySQL 官方 APT 仓库
wget https://dev.mysql.com/get/mysql-apt-config_0.8.28-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.28-1_all.deb
安装过程中会弹出配置界面,选择
MySQL Server并保持默认,按 Tab 选 OK。
- 更新软件包列表
sudo apt update
- 安装 MySQL 服务器
sudo apt install mysql-server -y
- 启动并设置开机自启
sudo systemctl start mysql
sudo systemctl enable mysql
▶ CentOS / Rocky Linux 安装 MySQL
- 添加 MySQL Yum 仓库
sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
注意:根据你的系统版本调整链接(如 el8 对应 CentOS 8)
- 验证仓库是否启用
sudo yum repolist enabled | grep mysql
- 安装 MySQL 服务器
sudo yum install mysql-server -y
# 或者用 dnf(CentOS 8+)
sudo dnf install mysql-server -y
- 启动并设置开机自启
sudo systemctl start mysqld
sudo systemctl enable mysqld
- 查看临时密码(MySQL 5.7+ 初始安装时生成)
sudo grep 'temporary password' /var/log/mysqld.log
✅ 三、安全初始化配置
运行 MySQL 自带的安全脚本,提升安全性:
sudo mysql_secure_installation
该脚本会引导你完成以下操作:
- 设置 root 用户密码
- 删除匿名用户
- 禁止 root 远程登录
- 删除 test 数据库
- 重新加载权限表
⚠️ 提示输入密码时,如果是首次运行且有临时密码,请先输入临时密码。
✅ 四、配置远程访问(可选)
若需从外部连接 MySQL:
1. 修改 MySQL 配置文件
Ubuntu 路径:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
CentOS/Rocky Linux 路径:
sudo nano /etc/my.cnf
# 或
sudo nano /etc/my.cnf.d/mysql-server.cnf
找到 bind-address 行,修改为:
bind-address = 0.0.0.0
或注释掉这一行(默认监听所有接口)
2. 重启 MySQL
sudo systemctl restart mysql # Ubuntu
sudo systemctl restart mysqld # CentOS
3. 创建允许远程连接的用户
登录 MySQL:
mysql -u root -p
执行 SQL:
CREATE USER 'admin'@'%' IDENTIFIED BY 'YourStrongPassword';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
%表示允许任何 IP 连接,生产环境建议限制为特定 IP。
✅ 五、开放防火墙端口
MySQL 默认使用 3306 端口。
Ubuntu(UFW):
sudo ufw allow 3306/tcp
CentOS(firewalld):
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload
🔥 同时确保云服务商(如阿里云、腾讯云、AWS)的安全组规则也放行了 3306 端口!
✅ 六、测试连接
本地或其他机器使用客户端测试:
mysql -h your-server-ip -u admin -p
✅ 常见问题排查
| 问题 | 解决方法 |
|---|---|
| 无法启动 MySQL | 查看日志:sudo tail /var/log/mysql/error.log 或 /var/log/mysqld.log |
| 连接被拒绝 | 检查 bind-address、防火墙、安全组 |
| 忘记 root 密码 | 进入安全模式重置密码 |
| 权限不足 | 使用 sudo 或检查用户权限 |
✅ 总结
| 步骤 | 操作 |
|---|---|
| 1 | 更新系统 |
| 2 | 添加 MySQL 官方仓库 |
| 3 | 安装 mysql-server |
| 4 | 启动服务并设置开机自启 |
| 5 | 运行 mysql_secure_installation |
| 6 | (可选)配置远程访问和用户 |
| 7 | 开放防火墙和安全组 |
✅ 安装完成后,建议定期备份数据,并避免使用弱密码。
如有具体操作系统或 MySQL 版本需求(如 5.7 vs 8.0),可进一步说明,我可以提供更精确命令。
轻量云Cloud