Docs 菜单
Docs 主页
/
MongoDB Atlas
/ / /

实时迁移(提取)故障排除

在此页面上

  • 常见的实时迁移(提取)验证错误
  • 常见验证后错误

实时迁移(拉取)进程开始之前, Atlas会执行验证检查,确保所有必要的表单字段和参数都能正常使用且正确无误。 如果任何参数无效, Atlas将返回错误信息,并且不会继续进行实时迁移。

本节介绍常见的实时迁移(提取)验证错误, 并就遇到这些错误时应检查的内容提出建议。

错误
修复
无法到达指定源
  • 确保添加了正确的子网范围到源集群的 IP 访问列表中。 您可以 在实时迁移模式窗口中找到所需的四个子网范围。

  • 确认指定的主机名已解析到公共 IP 地址。 在命令提示符下,使用以下命令之一:

    nslookup <hostname>
    ping <hostname>
  • 确保您没有使用VPC 对等互连,这与实时迁移不兼容。如果 VPC 对等互连是您的唯一选择,请改用mongomirror

无法解析主机名
未找到指定主机名的 IP 地址。确认 给定主机名正确且可公开访问。
提供的 SSL 选项无效

如果您使用的是 SSL:

  • 确认 SSL 证书已完成, 并正确复制到实时迁移(提取)模式窗口。

  • 确认 Is encryption in transit enabled?切换开关位于 Yes位置。

如果您不使用 SSL:

  • 检查连接字符串并确认ssl查询参数不存在。 如果连接字符串中包含--ssl ,则集群需要 SSL 连接。

  • 确认Is encryption in transit enabled?切换开关位于No位置。

用户名或密码不正确

使用以下命令在 mongosh中确认您的档案:

use admin
db.getUser("<username>");

如果问题仍然存在,请更新MongoDB 用户的密码。

用户无权执行命令
要运行实时迁移(提取)过程,MongoDB 用户必须具有足够的系统权限。 要了解更多信息,请参阅源集群安全性。
磁盘存储信息不可用
要运行实时迁移(提取)过程,MongoDB 用户必须拥有源集群 MongoDB 实例的权限。 要了解更多信息,请参阅源集群安全性。
源磁盘使用量对于目标来说太大
不同的 Atlas 层级有不同的可用磁盘空间。确保您的 Atlas 集群有足够的磁盘空间来容纳源集群上的所有数据。 要了解有关集群大小的更多信息,请参阅创建新集群。
来源似乎是一个独立运行的实例
您的源部署必须是 MongoDB副本集。 如果源部署当前是独立节点,请在运行实时迁移(拉取)之前将其转换为单节点副本集。
无法处理提供的 CA 文件
确认 CA 文件已完成, 并正确粘贴到实时迁移(拉动)模式窗口中。
错误
修复
无法从源集群检索到最新的 oplog 条目: 未找到
无法确定——主机是否为副本集: 连接数据库服务器时出错:没有可连接的服务器
  • 确保您已将实时迁移(提取)服务所需的每个 IP 地址添加到源集群的IP 访问列表中。

  • 确认您提供的 IP 地址或 DNS 主机名 解析到一个可公开访问的 IP 地址。

在初始同步期间应用 oplog 条目时出错:在初始同步期间遇到 renameCollection 命令。 请重新启动mongomirror

在实时迁移(提取)过程中 重新命名源集群上的集合可能会触发此错误。

  • 确保在进行实时迁移(提取)时, 用户或应用程序不会重命名任何集合。

  • 使用$out 的聚合操作可能会trigger此错误。 确保在实时迁移(提取)过程中不进行$out操作。

不支持的索引错误
MongoDB 早期版本中允许使用的 某些索引类型和配置在最新版本中已不再受支持。 检查 目标集群上 MongoDB 版本的发行说明, 以确定是否存在冲突。如有必要,请删除 任何导致错误的索引,然后在实时迁移过程完成后予以重建。
追踪源集群上的 oplog 时出错: oplog 中没有检查点

实时迁移(拉取)使用源oplog来同步拉取实时迁移过程中源集群上发生的操作。 如果源集群的 oplog 太小,它可能无法记录同步期间源集群上发生的所有操作,并且实时迁移(拉取)会严重滞后。

如果看到此错误:

  • 使用 rs.printReplicationInfo() 命令检查源集群 oplog 的大小。托管mongomirror的服务器必须有足够的可用磁盘空间,以容纳迁移过程中生成的 oplog 数据。

  • 如有必要,增加源 oplog 的大小,以支持足够长的复制窗口来完成实时迁移过程。

  • 如果在直接运行mongomirror时发生错误,请在迁移期间使用--oplogPathoplog数据缓冲到磁盘来重新启动mongomirror