在阿里云轻量应用服务器(Ubuntu 系统)上配置 MySQL 服务,可以按照以下步骤进行。本文以安装 MySQL 8.0 为例(推荐版本),适用于 Ubuntu 20.04 或 Ubuntu 22.04。
✅ 第一步:更新系统包列表
sudo apt update
sudo apt upgrade -y
✅ 第二步:安装 MySQL 服务器
sudo apt install mysql-server -y
这会安装 MySQL 服务端及其依赖。
✅ 第三步:启动并设置 MySQL 开机自启
sudo systemctl start mysql
sudo systemctl enable mysql
检查状态:
sudo systemctl status mysql
如果看到 active (running),说明服务已正常运行。
✅ 第四步:运行安全初始化脚本(推荐)
MySQL 安装后建议运行安全脚本,设置 root 密码、移除匿名用户等。
sudo mysql_secure_installation
根据提示操作:
- 设置 root 用户密码(选择强密码)
- 移除匿名用户
- 禁止 root 远程登录
- 删除测试数据库
- 重新加载权限表
⚠️ 注意:如果你需要远程连接 MySQL,请在后续步骤中配置用户权限和防火墙。
✅ 第五步:登录 MySQL 并验证
sudo mysql -u root -p
输入你设置的 root 密码,进入 MySQL 命令行。
你可以执行:
SELECT USER(), DATABASE();
SHOW DATABASES;
确认能正常访问。
✅ 第六步(可选):允许远程访问 MySQL
默认情况下,MySQL 只监听本地(127.0.0.1),如需从外部连接(例如本地电脑用 Navicat 连接),需做以下配置:
1. 修改 MySQL 配置文件
编辑 MySQL 的配置文件(路径可能因版本略有不同):
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到这一行:
bind-address = 127.0.0.1
改为:
bind-address = 0.0.0.0
或者注释掉这行(效果相同):
# bind-address = 127.0.0.1
保存并退出(Ctrl+O → 回车 → Ctrl+X)。
2. 重启 MySQL 服务
sudo systemctl restart mysql
3. 创建允许远程连接的用户(推荐)
在 MySQL 中执行:
CREATE USER 'remoteuser'@'%' IDENTIFIED BY '你的强密码';
GRANT ALL PRIVILEGES ON *.* TO 'remoteuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
🔐 建议不要使用 root 用户远程登录,创建专用用户更安全。
4. 配置阿里云安全组规则
登录 阿里云控制台:
- 找到你的轻量服务器实例
- 进入“防火墙”或“安全组”设置
- 添加规则:开放 3306 端口,来源 IP 可设为
0.0.0.0/0(不推荐生产环境)或你的固定 IP
示例规则:
- 协议类型:TCP
- 端口范围:3306
- 授权对象:
你的IP/32或0.0.0.0/0(谨慎使用)
✅ 第七步:测试远程连接
使用客户端工具(如 MySQL Workbench、Navicat、DBeaver)通过公网 IP 和端口 3306 连接。
格式:
主机: 你的轻量服务器公网IP
端口: 3306
用户名: remoteuser(或其他创建的用户)
密码: 对应密码
✅ 其他建议
-
定期备份数据库
mysqldump -u root -p --all-databases > backup.sql -
修改默认端口(可选,增加安全性)
编辑配置文件,修改port = ...,但需同步修改防火墙和客户端连接。 -
使用 SSL 加密连接(生产环境推荐)
❌ 常见问题排查
| 问题 | 解决方法 |
|---|---|
| 连接被拒绝 | 检查 bind-address、MySQL 是否运行、防火墙是否开放 3306 |
| 权限错误 | 使用 GRANT 正确授权,执行 FLUSH PRIVILEGES |
| 无法远程登录 root | 不建议远程 root 登录,创建新用户替代 |
✅ 完成!你现在已经在阿里云轻量服务器的 Ubuntu 环境中成功配置了 MySQL 服务。
如有更多需求(如 PHP 连接、Nginx + MySQL 搭建网站),欢迎继续提问!
云小栈