跳至内容

为什么我无法连接到我的 Amazon DocumentDB 集群?

2 分钟阅读
0

我在尝试连接到我的 Amazon DocumentDB(兼容 MongoDB)集群时遇到了问题。

简短描述

Amazon DocumentDB 是一项仅限虚拟私有云 (VPC) 的服务,不支持使用公共端点。要进行连接,您必须使用 Amazon Elastic Compute Cloud (Amazon EC2) 实例或与您的实例位于相同 VPC 中的其他 AWS 服务。

要从不同 VPC 或 AWS 区域中的 EC2 实例或其他 AWS 服务访问 Amazon DocumentDB,请使用 Amazon Virtual Private Cloud (Amazon VPC) 对等连接AWS Transit Gateway。如果您必须从 AWS 网络外部访问您的 Amazon DocumentDB 集群,请使用 SSH 隧道AWS Client VPN

按照以下故障排除步骤来解决连接问题。

解决方法

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

数据库实例未处于 Available(可用)状态

检查您的集群是否至少有一个实例。您的实例集群必须处于 Available(可用)状态才能接受连接。

源无权访问集群

确认您用于连接到 Amazon DocumentDB 实例的源可以访问以下位置的集群:

执行以下操作,以免阻挡来自连接到数据库实例的源的流量:

  • 如有必要,配置安全组规则以允许源流量进出数据库实例。您可以指定 IP 地址、IP 地址范围或其他 VPC 安全组。
  • 如果您在 VPC 中使用网络 ACL,请添加规则以允许进出数据库实例的入站和出站流量。有关详细信息,请参阅网络 ACL 规则
  • 对于数据库实例用于入站和出站通信的端口,配置您的网络以允许流量进出这些端口。

**注意:**当您使用 SSH 隧道连接到 VPC 外部的 Amazon DocumentDB 集群时,请检查您用作堡垒主机的 EC2 实例。确保它具有所需的网络配置,以允许进出集群的流量。

Amazon VPC 子网路由表不允许流量

与您的集群子网关联的路由表必须具有通往源的有效路由。此外,与您的源子网关联的路由表必须具有通往集群的有效路由。

如果您的源和集群属于同一 VPC,请在子网的路由表中配置本地路由。如果您使用 VPC 对等连接进行连接,请确保两个 VPC 路由表都有指向对等 VPC 或子网 CIDR 数据块的路由。有关详细信息,请参阅路由选项示例

您的主数据库实例可能会失效转移到备用副本。如果副本使用不同的路由表,则流量可能无法正确路由。为避免此问题,请确保您的集群子网和源子网使用正确的路由表。

DNS 名称或端点不正确

确认您使用正确的 DNS 名称或端点连接到集群。然后确认端点的格式是否适合用于连接到数据库实例的客户端。

要解决 DNS 和连接问题,请参阅无法连接到 Amazon DocumentDB 端点

您使用了错误的凭证连接集群

确保在您连接到集群时输入正确的用户名和密码。如果您忘记了密码,则可以修改 Amazon DocumentDB 集群以重置密码

您的应用程序不使用 TLS 加密连接

默认情况下,Amazon DocumentDB 会为所有集群启用传输中加密。如果您的应用程序不使用 TLS/SSL 连接,则可以修改 TLS 集群参数值以关闭 TLS。

您收到 "unable to get local issuer certificate" 错误消息

对于与证书颁发机构 (CA) 证书兼容的 MongoDB 驱动程序,您可能会收到 "unable to get local issuer certificate" 错误消息。如果您在启用 TLS 时连接到集群,请确保使用最新的公共证书捆绑包

重启后您无法连接到您的实例

当您重启实例时,该实例的私有 IP 地址可能会更改并导致连接问题。最佳做法是使用集群或实例端点。

多次连接后无法连接

如果无法再连接,则您的实例可能已达到其实例类的最大数据库连接配额。如需允许更多连接,请升级实例类。

最佳做法是从客户端对连接管理进行故障排除。检查您的连接池和相关的超时设置。设置必须足以让您管理与集群的连接数量。调整设置,以免达到连接配额。

您无法使用 AWS Client VPN 从本地系统进行连接

使用 VPN 时,您可能无法从本地系统连接到集群。AWS Client VPN 允许您从 VPC 连接到远程网络,并配置路由以通过连接传递流量。确保正确配置 AWS Client VPN

遇到间歇性连接问题

如果您的应用程序遇到间歇性连接问题,请检查集群上是否存在繁重的工作负载。例如,查看 Amazon CloudWatch 指标(例如 VolumeWriteIOPsVolumeReadIOPsOpcountersCommandCPUUtilizationDBLoad),了解可能由资源瓶颈引起的峰值。次优的查询计划可能会导致用户查询运行缓慢,资源争用可能会阻止用户查询。使用性能详情探查器日志来查找导致此问题的查询。

重要事项:性能详情将于 2026 年 6 月 30 日到期。您可以在 2026 年 6 月 30 日之前升级到数据库洞察的高级模式。如果您不进行升级,则使用性能详情的数据库集群将默认采用数据库洞察的标准模式。只有数据库洞察的高级模式才支持执行计划和按需分析。如果您的集群默认采用标准模式,则您可能无法在控制台上使用这些功能。要开启高级模式,请参阅开启适用于 Amazon RDS 的数据库洞察的高级模式开启适用于 Amazon Aurora 的数据库洞察的高级模式

相关信息

对连接问题进行故障排除

使用 CloudWatch 监控 Amazon DocumentDB

Amazon DocumentDB 中的安全性

AWS 官方已更新 4 个月前