阿里云 RDS MySQL 数据库的数据直接在 Excel 里连接读取,但一直连接失败。这种情况大多是 连接参数、网络权限、驱动配置 这三方面的问题。
目录
[一、公网 IP 访问 RDS编辑](#一、公网 IP 访问 RDS编辑)
[1️⃣ 公网访问条件确认](#1️⃣ 公网访问条件确认)
[2️⃣ 安装 MySQL ODBC 驱动](#2️⃣ 安装 MySQL ODBC 驱动)
[3️⃣ 配置 ODBC 数据源](#3️⃣ 配置 ODBC 数据源)
[4️⃣ Excel 连接 MySQL](#4️⃣ Excel 连接 MySQL)
[5️⃣ 常见错误对照表](#5️⃣ 常见错误对照表)
[二、内网 ECS 访问阿里云 RDS MySQL](#二、内网 ECS 访问阿里云 RDS MySQL)
[1️⃣ 条件确认](#1️⃣ 条件确认)
[2️⃣ 测试内网连接](#2️⃣ 测试内网连接)
[3️⃣ 在 ECS 上安装 MySQL ODBC 驱动](#3️⃣ 在 ECS 上安装 MySQL ODBC 驱动)
[4️⃣ 配置 ODBC 数据源](#4️⃣ 配置 ODBC 数据源)
[5️⃣ Excel 连接](#5️⃣ Excel 连接)
[三、本地电脑上的 Excel 想连 ECS 内网数据库](#三、本地电脑上的 Excel 想连 ECS 内网数据库)
[1️⃣方案 1:开公网访问](#1️⃣方案 1:开公网访问)
[2️⃣方案 2:ECS 做中转(推荐)](#2️⃣方案 2:ECS 做中转(推荐))
[3️⃣ 方案 3:阿里云 VPN 网关 / 专线](#3️⃣ 方案 3:阿里云 VPN 网关 / 专线)
[四、本地电脑上的 Excel 想连 ECS 公网RDS MySQL数据库](#四、本地电脑上的 Excel 想连 ECS 公网RDS MySQL数据库)
[1️⃣ 开启 RDS 公网访问](#1️⃣ 开启 RDS 公网访问)
[2️⃣ 配置白名单](#2️⃣ 配置白名单)
[3️⃣ 本地测试连接](#3️⃣ 本地测试连接)
[4️⃣ 安装 MySQL ODBC 驱动](#4️⃣ 安装 MySQL ODBC 驱动)
[5️⃣ 配置 ODBC 数据源](#5️⃣ 配置 ODBC 数据源)
[6️⃣ 在 Excel 中连接](#6️⃣ 在 Excel 中连接)
一、公网 IP 访问 RDS
1️⃣ 公网访问条件确认
先确保你的 RDS 符合以下条件,否则 Excel 无论怎么设置都连不上:
-
已开启公网地址
-
登录阿里云 → RDS 控制台 → 找到实例 → 基本信息 里要能看到 "公网地址" 和端口(默认 3306)。
-
如果没有公网地址,需要点击 申请公网连接地址。
-
-
白名单已放行本机 IP
-
RDS 控制台 → 数据安全性 → 白名单设置
-
添加你电脑的公网 IPv4 地址(可在浏览器搜索 "我的IP" 获取),格式例如:
bash123.45.67.89
-
如果经常换 IP,可以加
0.0.0.0/0
先测试(但注意安全)。
-
-
本地能直接连通 MySQL
-
用 MySQL Workbench / DBeaver / 命令行测试:
bashmysql -h <RDS公网地址> -P 3306 -u <账号> -p
-
如果这一步失败,说明是白名单、防火墙、端口没放行的问题,不是 Excel 设置问题。
-
2️⃣ 安装 MySQL ODBC 驱动
Excel 不自带 MySQL 驱动,你需要去官方下载:
-
MySQL Connector/ODBC
-
选择版本:
-
Excel 32 位 → 安装 32 位驱动
-
Excel 64 位 → 安装 64 位驱动
-
安装后在 Windows 的 "ODBC 数据源管理器" 里会出现 MySQL 选项。
-
3️⃣ 配置 ODBC 数据源
-
打开
ODBC 数据源管理器
(搜索 ODBC)。 -
选择 系统 DSN → 添加 → 选 MySQL ODBC 8.0 Unicode Driver(或者 ANSI)。
-
在配置窗口里填写:
-
Data Source Name:AliyunRDS(自定义名字)
-
Server:RDS 公网地址(不是内网地址)
-
Port:3306(或你自定义的端口)
-
User :数据库账号(注意阿里云默认是
xxx@实例名
格式) -
Password:数据库密码
-
Database:要连接的数据库名
-
-
点击 Test 测试成功后保存。
4️⃣ Excel 连接 MySQL
-
Excel → 数据 → 获取数据 → 从其他源 → 从 ODBC。
-
选择刚刚的
AliyunRDS
数据源。 -
选择表或执行 SQL 查询,即可导入数据。
5️⃣ 常见错误对照表
错误提示 | 可能原因 | 解决办法 |
---|---|---|
Can't connect to MySQL server on... |
白名单没加、端口被拦、公网地址没开 | 检查白名单、防火墙、安全组 |
Access denied for user... |
用户名/密码错,或没加 @实例名 |
用完整用户名 user@实例名 |
SSL connection error |
ODBC 默认要 SSL,RDS 没开 | 在 ODBC 设置里勾选或取消 Use SSL 选项 |
二、内网 ECS 访问阿里云 RDS MySQL

内网 ECS 访问阿里云 RDS MySQL,那连接方式会和公网不太一样,也能绕开公网的白名单、防火墙等限制,速度和安全性都更好。
1️⃣ 条件确认
-
ECS 和 RDS 必须在同一个地域(Region)
- 比如 ECS 在 "华东 1",RDS 也要在 "华东 1"。
-
RDS 要有内网地址(默认都有)
- 登录 RDS 控制台 → 基本信息 → 内网地址(通常是
xxx.mysql.rds.aliyuncs.com
)。
- 登录 RDS 控制台 → 基本信息 → 内网地址(通常是
-
ECS 安全组放行 MySQL 端口(默认 3306)
- ECS 控制台 → 安全组规则 → 入方向规则 → 放行 3306(如果 ECS 只是访问别人提供的 RDS,可以不放)。
-
RDS 白名单加上 ECS 的内网 IP 段
-
RDS 控制台 → 数据安全性 → 白名单设置 → 添加 ECS 内网 IP 或网段,例如:
bash172.16.0.0/16
-
2️⃣ 测试内网连接
在 ECS 上执行:
bash
mysql -h <RDS内网地址> -P 3306 -u <用户名> -p
-
如果能登录成功,说明网络和权限正常,可以继续配置 Excel。
-
如果失败:
-
检查白名单(必须加 ECS 内网 IP 段)
-
检查安全组规则
-
确认两个实例同 Region 且同 VPC
-
3️⃣ 在 ECS 上安装 MySQL ODBC 驱动
如果 Excel 是直接在 ECS 的桌面环境(比如 Windows Server ECS)运行的:
-
去 MySQL 官方下载对应版本的 MySQL Connector/ODBC
-
版本匹配:
-
Excel 32 位 → ODBC 32 位驱动
-
Excel 64 位 → ODBC 64 位驱动
-
如果 Excel 在你本地 PC,而要访问 RDS 内网,那是 不行的,因为内网地址不能从外网访问,这种情况需要:
-
在 ECS 上装一个中转(如 VPN、端口转发、堡垒机)
-
或直接用公网连接(回到你之前的公网方案)
4️⃣ 配置 ODBC 数据源
跟公网连接类似,只是 Server 填 RDS 内网地址,用户名、密码、端口和数据库名保持一致。
5️⃣ Excel 连接
-
Excel → 数据 → 获取数据 → 从其他源 → 从 ODBC
-
选择你在 ECS 上配置的 ODBC 数据源
-
选择表或执行查询
三、本地电脑上的 Excel 想连 ECS 内网数据库

本地电脑上的 Excel 想连接到 ECS 内网数据库(RDS MySQL) ,默认是直接不行的 ,因为 ECS 内网和 RDS 内网都在阿里云 VPC 内,本地 PC 没法直接访问 VPC 网络 。
要实现,你需要 打通本地和阿里云 VPC 网络,常见有三种办法:
1️⃣方案 1:开公网访问
思路:把 RDS 公网打开,让本地 Excel 直接用公网 IP 连接(和你最开始那种方式一样)
-
优点:配置简单
-
缺点:安全性低(公网暴露端口)
-
做法:
-
在 RDS 控制台开启公网地址
-
白名单加上本地 IP
-
Excel 走 ODBC 公网连接
-
2️⃣方案 2:ECS 做中转(推荐)
思路:ECS 能连 RDS 内网,你本地 Excel 先连接 ECS,再由 ECS 转发流量到 RDS
-
方式:
-
SSH 端口转发
bashssh -L 3306:<RDS内网地址>:3306 user@<ECS公网IP>
然后 Excel 连接
127.0.0.1:3306
-
搭建 VPN(ECS 做 VPN Server,把你本地电脑加入 VPC)
- OpenVPN / SoftEther / StrongSwan 等
-
3️⃣ 方案 3:阿里云 VPN 网关 / 专线
思路:购买阿里云 VPN 网关,把本地电脑(或办公室网络)接入阿里云 VPC
-
优点:安全稳定,适合公司环境
-
缺点:需要付费
-
做法:
-
购买 VPN 网关
-
配置客户端接入
-
本地直连 RDS 内网地址
-
建议如果只是临时用,可以直接用 方案 2 的 SSH 端口转发,一分钟就能搞定,不改 RDS 设置,也不会暴露公网端口。
四、本地电脑上的 Excel 想连 ECS 公网RDS MySQL数据库

重点要确保 公网访问权限、白名单、驱动匹配 都设置正确
1️⃣ 开启 RDS 公网访问
-
登录阿里云 RDS 控制台 → 找到你的实例 → 基本信息
-
如果"公网地址"处显示
未开通
,点击 申请公网地址。 -
记下公网地址和端口(默认 3306)。
2️⃣ 配置白名单
-
RDS 控制台 → 数据安全性 → 白名单设置
-
添加你本地电脑的公网 IP(可在浏览器搜索 "我的IP" 获取)
bash203.0.113.25
-
如果 IP 经常变,可以临时用
0.0.0.0/0
测试(不推荐长期使用)。
3️⃣ 本地测试连接
在你本地命令行(Windows PowerShell / macOS 终端)运行:
bash
mysql -h <RDS公网地址> -P 3306 -u <用户名> -p
-
如果能登录,说明网络和权限正常,可以继续 Excel 设置
-
如果不通:
-
检查白名单
-
确认防火墙没拦 3306
-
确认 RDS 状态正常
-
4️⃣ 安装 MySQL ODBC 驱动
-
下载 MySQL 官方 MySQL Connector/ODBC
-
安装版本要和 Excel 匹配:
-
Excel 32 位 → ODBC 32 位
-
Excel 64 位 → ODBC 64 位
-
5️⃣ 配置 ODBC 数据源
-
打开 ODBC 数据源管理器(Windows 搜索"ODBC")
-
系统 DSN → 添加 → 选择
MySQL ODBC 8.0 Unicode Driver
(或 ANSI) -
填写:
-
Data Source Name:AliyunRDS
-
Server:RDS 公网地址
-
Port:3306
-
User :数据库用户名(阿里云默认是
user@实例名
) -
Password:数据库密码
-
Database:目标数据库名
-
-
点击 Test,确认连接成功后保存
6️⃣ 在 Excel 中连接
-
Excel → 数据 → 获取数据 → 从其他源 → 从 ODBC
-
选择
AliyunRDS
-
选择表或编写 SQL 查询 → 导入数据
✅ 常见问题排查
报错 | 可能原因 | 解决办法 |
---|---|---|
Can't connect to MySQL server | 白名单没加 / 防火墙拦 | 检查白名单、防火墙 |
Access denied for user | 用户名或密码错误 | 用完整用户名 user@实例名 |
SSL error | ODBC 默认要 SSL | 在 ODBC 设置里勾选或取消 Use SSL |