Mongodb 连接到mongo shell中的副本集
我正在尝试编写一个MongoShell脚本,它连接到两个数据库,在其中一个数据库中搜索一些文档,然后将找到的文档插入到另一个数据库中。有点像这样:Mongodb 连接到mongo shell中的副本集,mongodb,shell,connection-string,replicaset,Mongodb,Shell,Connection String,Replicaset,我正在尝试编写一个MongoShell脚本,它连接到两个数据库,在其中一个数据库中搜索一些文档,然后将找到的文档插入到另一个数据库中。有点像这样: #!/bin/sh mongo --shell --nodb <<EOF var db1 = new Mongo( '...' ); var db2 = new Mongo( '...' ); db1.collection.findOne( {...} ).forEach( function( r ) { db2.collectio
#!/bin/sh
mongo --shell --nodb <<EOF
var db1 = new Mongo( '...' );
var db2 = new Mongo( '...' );
db1.collection.findOne( {...} ).forEach( function( r ) {
db2.collection.save( r )
});
#/垃圾箱/垃圾箱
mongo--shell--nodb我没有一个副本集来测试它,但我认为可以像这样使用mongo()构造函数
conn=Mongo(“replicasetname/host:port”)
从那里开始,我认为您需要使用
db=conn.getDB(“myDatabase”)
然后进行身份验证
db.auth(用户,通过)
这也可能取决于您使用的shell版本。我没有看到任何关于在最新版本中使用副本集连接的文档,因此我不知道它是否已被弃用或只是不再被提及。希望这有帮助 很高兴它起作用了。你可能也想试试Mongo(“主机:端口/?复制集=名称”)
这似乎是现在记录的连接到副本的方法。