MongoDB副本集 - 带有readPreference的copyDatabase?

时间:2017-03-09 23:26:54

标签: mongodb replication database

关于Connection String URI Syntax关于副本集的文档,我们有:

  

以下连接到具有三个成员的副本集,并将读取分发到辅助节点:

mongodb://example1.com,example2.com/?replicaSet=test&readPreference=secondary

这正是我需要做的,但是我正在尝试确定readPreference命令使用的正确语法(如果甚至支持copyDatabase)。它的主机URI语法如下所示:

test/example1.com,example2.com

...例如......

db.copyDatabase('myDb', 'myDb', 'test/example1.com,example2.com')

我可以在结尾处查看?readPreference=secondary并让它按预期工作吗?我没有方便的方法在我的环境中自己测试,或者我会。希望有人在这里知道他们的头脑。

1 个答案:

答案 0 :(得分:1)

读取首选项是客户端/驱动程序端概念。服务器不知道请求的读取首选项,因此您无法验证服务器端的读取首选项。您可以通过例如mongostat验证是否将某些查询发送到辅助服务器,或者您可以在每个数据库服务器上使用db.serverStatus().opcounters比较'查询'计数预查询和后查询。对于整个数据库服务器状态列表,请使用db.serverStatus()