mongosync
定义
mongosync
二进制文件是Cluster-to-Cluster Sync中使用的主节点 (primarymongosync
node in the replica set)进程。 将数据从源集群迁移到目标集群,并使集群保持持续同步,直到您 完成同步。除了持续的数据同步之外,mongosync
还可以在集群之间执行一次性数据迁移。
有关 mongosync
进程的概述,请参阅关于 mongosync
。
要开始使用 mongosync
,请参阅快速入门指南。
常见问题解答 (常见问题解答) 页面解答用户提出的有关mongosync
的问题。
兼容性
mongosync
尚不支持与使用 MongoDB 8.0 的集群之间的迁移。有关将数据迁移到 8.0 目标集群的说明,请参阅将数据从 8.0 之前的源集群同步到 8.0 目标集群,以及在两个 8.0 集群之间同步数据。MongoDB 支持的最低服务器版本是 6.0.16 和 7.0.9。
您可以将 MongoDB 6.0 之前版本的集群(源)上的数据迁移到 Atlas 集群(目标)。从版本较低的集群迁移时,需要在版本较低的集群中进行额外的准备和配置。联系您的客户团队,咨询专业服务。
mongosync
支持副本集和分片集群。不支持独立运行的 MongoDB 实例。在使用 Cluster-to-Cluster Sync 之前,将独立运行的实例转换为副本集。
mongosync
不支持 Atlas 共享集群或无服务器实例。有关限制的完整列表,请参阅 Cluster-to-Cluster Sync 限制。
语法
下面的mongosync
命令布局已修改以进行显示。 要使用mongosync
将cluster0
连接到cluster1
,请在一行中输入以下命令:
mongosync \ --cluster0 "<cluster0_connection_string>" \ --cluster1 "<cluster1_connection_string>"
有关如何格式化连接字符串的更多信息,请参阅连接mongosync
。
命令行选项
全局选项
--acceptDisclaimer
当
mongosync
进程在没有此选项的情况下启动时,系统会提示用户接受每项免责声明。此选项允许已阅读并接受免责声明的用户接受免责声明并启动
mongosync
进程。要通过配置文件设置
--acceptDisclaimer
选项,请参阅acceptDisclaimer
设置。1.9 版本中的新功能。
--cluster0 <uri>
设置第一个集群的连接 URI。在同步过程中,第一个集群既可以作为源,也可以作为目标。在调用
start
API 端点时指定源集群和目标集群。有关连接
mongosync
的更多信息,请参阅连接。要通过配置文件设置
--cluster0
选项,请参阅cluster0
设置。警告
在某些系统上,使用
--cluster0
或--cluster1
选项在连接字符串中提供的密码,可能会被其他用户调用的系统状态程序(如ps
)探测到。可以考虑使用
--config
选项,指定一个包含密码的配置文件。
--cluster1 <uri>
设置第二个集群的连接 URI 。在同步进程中,第二个集群既可以作为源,也可以作为目标。在
start
API 端点的调用中指定源集群和目标集群。有关连接
mongosync
的更多信息,请参阅连接。要通过配置文件设置
--cluster1
选项,请参阅cluster1
设置。警告
在某些系统上,使用
--cluster0
或--cluster1
选项在连接字符串中提供的密码,可能会被其他用户调用的系统状态程序(如ps
)探测到。可以考虑使用
--config
选项,指定一个包含密码的配置文件。
--config <filename>
设置配置文件的路径。
有关更多信息,请参阅配置文件。
--disableTelemetry
版本 1.4.0 中的新增功能。
禁用收集
mongosync
遥测数据。默认情况下,
mongosync
收集匿名的汇总使用数据以改进 MongoDB 产品。当您运行mongosync
时,您可以禁用此遥测数据的收集。要通过配置文件设置
--disableTelemetry
选项,请参阅disableTelemetry
设置。有关更多信息,请参阅用户数据集合。
--id <id>
为
mongosync
实例设置标识符。在分片集群上运行多个
mongosync
实例时,使用此选项单独同步分片。此选项的标识符值必须与同步分片的分片 ID 相对应。如要查找分片 ID,请使用
listShards
命令。要通过配置文件设置
--id
选项,请参阅id
设置。
--loadLevel <level>
类型:整型
默认值:
3
设置在源集群和目标集群之间同步数据的集群工作负载级别:
4
,这是最高设置,最大限度地提高集群工作负载,数据同步的速度最快。1
,这是最低设置,最大限度地减少了集群工作负载,数据同步的速度最慢。
要通过配置文件设置
--loadLevel
选项,请参阅loadLevel
设置。警告
将
loadLevel
设置为高于默认值3
可能会对目标集群性能产生负面影响。如果源集群存在读取瓶颈或目标集群存在写入瓶颈,则减少
loadLevel
可能会提高性能。1.4 版本中的新增功能。
--logPath <directory>
设置日志目录的路径。集群到集群同步会将日志写入该目录下的文件。
有关更多信息,请参阅日志记录。
要通过配置文件设置
--logPath
选项,请参阅logPath
设置。注意
如果使用
--logPath
选项启动mongosync
,则可以向mongosync
进程发送USR1
信号以轮换其日志文件:kill -s USR1 $mongosync_pid $mongosync_pid
是mongosync
进程 ID。
--port
默认值:
27182
设置 HTTP 服务器用于集群到集群同步 HTTP API 的端口。
要通过配置文件设置
--port
选项,请参阅port
设置。
--verbosity <level>
默认值:
DEBUG
设置要在日志消息中使用的详细程度。 Cluster-to-Cluster Sync 记录指定级别的所有消息和较低级别的所有消息。
--verbosity
选项支持以下各值:TRACE
DEBUG
INFO
WARN
ERROR
FATAL
PANIC
要通过配置文件设置
--verbosity
选项,请参阅verbosity
设置。
行为
如需了解更多信息,请参阅 mongosync
行为。