如何在阿里云服务器上配置MySQL数据库的远程访问?

在阿里云服务器上配置 MySQL 远程访问需要完成两个核心步骤:MySQL 权限配置阿里云安全组设置,以下是详细操作流程:

一、配置 MySQL 允许远程访问

1. 登录 MySQL 数据库

通过服务器终端登录 MySQL(以 Linux 为例):

bash


mysql -u root -p
# 输入MySQL root密码


2. 授权远程访问用户

方法 1:允许 root 用户远程访问(不推荐生产环境)

sql


-- 创建允许所有IP访问的root用户(%表示任意IP)
CREATE USER root@% IDENTIFIED BY 你的MySQL密码;
-- 授予所有权限
GRANT ALL PRIVILEGES ON *.* TO root@% WITH GRANT OPTION;
-- 刷新权限
FLUSH PRIVILEGES;


方法 2:创建专用远程用户(推荐)

sql


-- 创建新用户(例如:remote_user,仅允许特定IP访问)
CREATE USER remote_user@你的本地IP IDENTIFIED BY 自定义密码;
-- 或允许所有IP(生产环境谨慎使用)
CREATE USER remote_user@% IDENTIFIED BY 自定义密码;

-- 授予权限(例如:仅授予test数据库的所有权限)
GRANT ALL PRIVILEGES ON test.* TO remote_user@%;
-- 刷新权限
FLUSH PRIVILEGES;


3. 确认配置生效

sql


-- 查看用户权限
 user, host FROM mysql.user;




若能看到user对应的host为%或你的 IP,则配置成功。

二、修改 MySQL 配置文件(可选,针对部分版本)

部分 MySQL 版本默认绑定本地 IP(127.0.0.1),需修改配置文件允许远程连接:

1. 编辑配置文件

  • Linux(CentOS)
  • Linux(Ubuntu)
  • Windows:找到 MySQL 安装目录下的my.ini(通常在C:\ProgramData\MySQL\MySQL Server x.x\

2. 注释绑定本地 IP 的配置

找到bind-address = 127.0.0.1,在前面加#注释:

ini


# bind-address = 127.0.0.1


3. 重启 MySQL 服务

  • Linux
  • Windows:在 “服务” 中找到MySQL80(或对应服务名),右键重启。

三、配置阿里云安全组开放 3306 端口

MySQL 默认端口为 3306,需在阿里云控制台开放该端口:


  1. 登录阿里云 ECS 控制台,进入目标实例详情页。
  2. 左侧菜单找到安全组,点击实例绑定的安全组名称。
  3. 点击入方向手动添加,填写规则:
  4. 点击确定,规则立即生效。

四、测试远程连接

使用本地工具(如 Navicat、DataGrip)测试连接:


  • 主机:阿里云服务器的公网 IP
  • 端口:3306
  • 用户名:远程访问用户(如remote_userroot
  • 密码:对应用户的密码
  • 若连接失败,检查以下几点:
  1. MySQL 用户权限是否正确配置(host是否包含客户端 IP)。
  2. 安全组是否已开放 3306 端口,且授权对象包含客户端 IP。
  3. 服务器防火墙是否放行 3306 端口(Linux 可通过firewall-cmd --list-ports查看,如需开放:
  4. 通过以上步骤,即可安全地配置 MySQL 的远程访问功能。生产环境中建议限制允许访问的 IP,并避免使用 root 用户进行远程连接。






内容版权声明:除非注明,否则皆为本站原创文章。