You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac浏览器运行Python脚本连接DigitalOcean MySQL 8数据库时出现2003 (HY000)连接错误

Mac浏览器运行Python脚本连接DigitalOcean MySQL 8数据库时出现2003 (HY000)连接错误

看起来你遇到的是典型的「不同环境下网络访问权限不匹配」问题,先帮你拆解核心误区和解决步骤:

一、先理清核心混淆点:别把两个MySQL服务搞混了

你提到修改了Droplet上的/etc/my.cnf等配置文件,但你要连接的是独立的DigitalOcean托管MySQL数据库(地址是db-mysql-......ondigitalocean.com:25060),这俩是完全独立的服务:

  • Droplet上的MySQL是你自行安装的,监听3306端口(你的nmap结果也证实了这一点)
  • DO托管的MySQL是DO官方运维的独立服务,25060是它的对外端口,和Droplet上的MySQL配置毫无关系

所以你之前修改Droplet上的MySQL配置(比如bind-address、port)完全不会影响连接DO托管数据库的结果,这是你走的第一个弯路,先把这个点捋清楚。

二、分析「浏览器运行脚本出错」的具体场景

你已经验证了Mac终端、Droplet控制台都能正常连库,唯独浏览器环境不行,先明确场景:

场景1:浏览器访问Droplet上的Web应用(比如Flask/Django),应用内Python代码连库

这种情况下,数据库请求是从Droplet的IP发出的,虽然你说已添加Droplet IP到可信源,但要确认:

  1. 你加的是Droplet的公网IP吗?Droplet可能有内网IP(比如eth1接口的IP),无VPC情况下内网IP无法访问托管数据库,必须加公网IP
  2. 测试Droplet能否正常访问托管库的25060端口:
    # 用telnet测试连通性
    telnet db-mysql-......ondigitalocean.com 25060
    # 或者用nc工具
    nc -zv db-mysql-......ondigitalocean.com 25060
    
    如果能连通,说明网络层面没问题;如果连不通,要么是Droplet出站流量被限制,要么是可信源配置有误。

场景2:浏览器直接运行本地Python脚本(比如通过本地Web服务器、浏览器插件)

这种情况下,数据库请求是从Mac的IP发出的,虽然终端能连,但浏览器可能有代理导致出口IP变化:

  • 检查浏览器的代理设置,关闭代理后重试
  • 用浏览器访问IP查询工具,确认浏览器的出口IP是否在DO托管数据库的可信源列表里

三、重新核对DO托管数据库的可信源配置

不管哪种场景,再仔细检查一遍:

  1. 登录DigitalOcean控制台,找到你的托管MySQL数据库
  2. 进入「Settings」→「Trusted Sources」
  3. 确认:
    • Mac的公网IP(含浏览器出口IP)已添加
    • Droplet的公网IP已添加
    • 无VPC时不要添加内网IP,因为此时内网无法访问托管数据库

四、额外排查:Python脚本的连接参数

确认Web环境下的脚本连接参数和终端完全一致:

  • 主机域名有没有打错
  • 端口是否确实是25060
  • 用户名、密码是否正确
  • 是否开启了SSL?DO托管MySQL默认要求SSL,终端脚本可能已配置,但Web环境下的脚本遗漏了这一项(以MySQL Connector/Python为例,需要指定ssl_mode="REQUIRED")

示例正确的连接代码:

import mysql.connector

db_config = {
  'user': '你的数据库用户名',
  'password': '你的数据库密码',
  'host': 'db-mysql-......ondigitalocean.com',
  'port': 25060,
  'database': '你的数据库名',
  'ssl_mode': 'REQUIRED'
}

try:
    conn = mysql.connector.connect(**db_config)
    print("连接成功")
except mysql.connector.Error as err:
    print(f"错误: {err}")

备注:内容来源于stack exchange,提问作者erdomester

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 12:14:50