加油
努力

阿里云轻量服务器Ubuntu环境怎么配置MySQL服务?

在阿里云轻量应用服务器(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/320.0.0.0/0(谨慎使用)

✅ 第七步:测试远程连接

使用客户端工具(如 MySQL Workbench、Navicat、DBeaver)通过公网 IP 和端口 3306 连接。

格式:

主机: 你的轻量服务器公网IP
端口: 3306
用户名: remoteuser(或其他创建的用户)
密码: 对应密码

✅ 其他建议

  1. 定期备份数据库

    mysqldump -u root -p --all-databases > backup.sql
  2. 修改默认端口(可选,增加安全性)
    编辑配置文件,修改 port = ...,但需同步修改防火墙和客户端连接。

  3. 使用 SSL 加密连接(生产环境推荐)


❌ 常见问题排查

问题 解决方法
连接被拒绝 检查 bind-address、MySQL 是否运行、防火墙是否开放 3306
权限错误 使用 GRANT 正确授权,执行 FLUSH PRIVILEGES
无法远程登录 root 不建议远程 root 登录,创建新用户替代

✅ 完成!你现在已经在阿里云轻量服务器的 Ubuntu 环境中成功配置了 MySQL 服务。

如有更多需求(如 PHP 连接、Nginx + MySQL 搭建网站),欢迎继续提问!

云服务器