ECS通过内网连接不上RDS For MySQL

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: ECS通过内网连接不上RDS For MySQL

问题原因

ECS通过内网连接不上RDS For MySQL


回答

ECS和RDS内网连接条件

  • 相同地域
  • 相同网络类型,如果是VPC,需要在相同的VPC下
  • ECS内网IP在RDS白名单中。注意,如果RDS开启了高安全白名单模式,RDS是VPC环境,需要将ECS内网IP加到RDS白名单专有网络分组,否则加到经典网络分组

1、数据库连接信息

从RDS控制台获取数据库外网连接地址端口账号,与配置的连接地址、端口、账号是否一致。另外,需要核实密码是否正确。

客户端/代码连接:可能需要核实地址和端口之间的间隔符号是否为半角冒号

命令行连接:参数(大P端口,小p密码)格式(小p和密码之间不能有空格、命令行最后不能有分号)是否正确

mysql -h地址 -P端口 -u账号 -p密码

2、RDS白名单

ECS内网IP是否在RDS白名单中,如果RDS开通了高安全白名单模式,那么专有网络RDS需要将ECS内网IP设置到白名单“专有网络”类型下,否则设置到“经典网络”类型下。如截图,

3、常见错误信息

数据库连接常见错误:

报错信息

原因

  • ERROR 2003 (HY000): Can't connect to MySQL server on 'XXX'(10038或10060或110)
  • 无法连接到数据库:XXX

网络不通,一般是链接条件不满足

  • ERROR 1045 (HY000): #28000ip not in whitelist
  • ERROR 2801 (HY000): #RDS00ip not in whitelist, client ip is XXX

白名单设置错误

  • ERROR 1045 (28000): Access denied for user ‘XXX’@’XXX’ (using password: YES或NO)

用户名或密码错误

  • ERROR 2005 (HY000): Unknown MySQL server host ‘XXX’ (110或11004)
  • SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
  • Name or service not known

DNS解析问题,将DNS修改为阿里云DNS服务器地址

223.5.5.5和223.6.6.6

4、pingtelnet

  • ping不通,大概率是被处罚了
  • telnet不通,ECS没有安装telnet、ECS防火墙\安全组有拦截、RDS端口填写错误,RDS端口不通


5、以上都没问题

  • 是否RDS的问题:DMS登录,成功的话,可以确认RDS是没有问题的。
  • 是否链路的问题:更换客户端登录,成功的话,可以确认非链路问题,应该是客户端\代码的问题。
  • 客户端\代码问题:重新安装客户端\更换客户端\检查代码配置和驱动版本等。


6、抓包
抓包进行分析
抓包步骤:

Windows(需要安装wireshark):

  1. 在Wireshark 界面中,选择 Capture -》 Interface ,选择对应连接云数据库的内网网卡后 > Option > 在 File 输入框中输入要保存的文件 1.cap,然后点击 start 开始抓包。
  2. 连接RDS,复现问题。
  3. 问题复现后,停止抓包。
  4. 分析报文。


Linux:

  1. 打开一个到ECS的ssh连接,并以root身份登录。
    在该窗口运行下列命令
    tcpdump -i any -s 0 host 实例的链接地址域名  -C 200 -W 10 -w /tmp/error_get.pcap

       #200M一个包, 一共10个包 循环,遇到异常stop

  1. 连接RDS, 复现问题。
  2. 使用 ctrl + c 终止窗口1 的 tcpdump 命令。
  3. 分析报文。
相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
存储 SQL 关系型数据库
RDS DuckDB技术解析一:当 MySQL遇见列式存储引擎
RDS MySQL DuckDB分析实例以​列式存储与向量化计算​为核心,实现​复杂分析查询性能百倍跃升​,为企业在海量数据规模场景下提供​实时分析能力​,加速企业数据驱动型决策效能。​​
|
7天前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
|
21天前
|
关系型数据库 MySQL 数据库
云时代MySQL:RDS与自建数据库的抉择
在云计算时代,选择合适的数据库部署方案至关重要。本文深入对比了AWS RDS与自建MySQL的优劣,帮助您在控制权、运维成本和业务敏捷性之间找到最佳平衡点。内容涵盖核心概念、功能特性、成本模型、安全性、性能优化、高可用方案及迁移策略,为您提供全面的决策参考。
|
1月前
|
关系型数据库 MySQL 程序员
从自建MySQL到阿里云RDS:程序员的数据库减负革命
如果你正在为自建MySQL数据库的高成本运维发愁,为凌晨三点的主从同步故障告警而崩溃,为开发团队频繁索要新测试库的要求感到窒息——是时候开启一场数据库的自我救赎了。 程序员更需构建"技术敏锐度+工程落地能力+跨域协作"的三维竞争力,通过创建技术组合形成差异化优势。企业应建立持续学习机制,提供AI沙盒环境促进技术转化。
|
4月前
|
存储 关系型数据库 MySQL
【免费动手教程上线】阿里云RDS MySQL推出大容量高性能存储:高性能本地盘(最高16TB存储空间)、高性能云盘(最高64TB存储空间)
阿里云RDS MySQL提供高性能本地盘与高性能云盘等存储方案,满足用户大容量、低延迟需求。高性能本地盘单盘最大16TB,IO延时微秒级;高性能云盘兼容ESSD特性,支持IO性能突发、BPE及16K原子写等能力。此外,阿里云还提供免费动手体验教程,帮助用户直观感受云数据库 RDS 存储性能表现。
|
22天前
|
安全 关系型数据库 MySQL
MySQL安全最佳实践:保护你的数据库
本文深入探讨了MySQL数据库的安全防护体系,涵盖认证安全、访问控制、网络安全、数据加密、审计监控、备份恢复、操作系统安全、应急响应等多个方面。通过具体配置示例,为企业提供了一套全面的安全实践方案,帮助强化数据库安全,防止数据泄露和未授权访问,保障企业数据资产安全。
|
7天前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
39 3
|
13天前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
1月前
|
存储 运维 关系型数据库
从MySQL到云数据库,数据库迁移真的有必要吗?
本文探讨了企业在业务增长背景下,是否应从 MySQL 迁移至云数据库的决策问题。分析了 MySQL 的优势与瓶颈,对比了云数据库在存储计算分离、自动化运维、多负载支持等方面的优势,并提出判断迁移必要性的五个关键问题及实施路径,帮助企业理性决策并落地迁移方案。
|
1天前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。

热门文章

最新文章

推荐镜像

更多