Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb Robomongo:无法连接到副本集。设置';s的主服务器无法访问_Mongodb_Heroku_Mlab_Mongodb Atlas_Robo3t - Fatal编程技术网

Mongodb Robomongo:无法连接到副本集。设置';s的主服务器无法访问

Mongodb Robomongo:无法连接到副本集。设置';s的主服务器无法访问,mongodb,heroku,mlab,mongodb-atlas,robo3t,Mongodb,Heroku,Mlab,Mongodb Atlas,Robo3t,我正在将mLab从Heroku迁移到MongoDB Atlas。作为步骤之一,我想检查是否有到新创建的集群的连接。我(以前是Robomongo)用于Heroku mLab实例。但它不适用于Atlas。从URL创建连接时出现以下错误: Cannot connect to replica set "SampleProject"[cluster-abcd12ef-shard-00-00.a0b1c.mongodb.net:27017]. Set's primary is unre

我正在将mLab从Heroku迁移到MongoDB Atlas。作为步骤之一,我想检查是否有到新创建的集群的连接。我(以前是Robomongo)用于Heroku mLab实例。但它不适用于Atlas。从URL创建连接时出现以下错误:

Cannot connect to replica set "SampleProject"[cluster-abcd12ef-shard-00-00.a0b1c.mongodb.net:27017]. 
Set's primary is unreachable.

Reason:
Failed to initialize MongoWorker. Reason: connect failed
尝试调整设置,但看起来一切正常,就像Heroku一样,唯一的主机和端口不同


也看了又看,但没有任何帮助。

首先,检查您是否正在使用最新的Robo3T。MongoDB Atlas使用的是
MongoDB+srv://
协议,这在以前是不受支持的

之后,请按照以下检查表进行检查:

  • 通过从MongoDB Atlas复制粘贴URL,从SRV使用导入
    
    
  • MongoDB Atlas甚至为免费沙盒(Atlas M0)帐户使用副本集。因此,在创建过程中,请确保使用该类型
  • 填写或检查所有集群成员
  • 应设置集合名称
重要区别在“身份验证”选项卡上:

  • 数据库
    应该是
    管理员
    而不是数据库名称(用于Heroku)
  • Auth机制
    应为
    SCRAM-SHA-1
  • 选中
    手动指定可见数据库
    并在那里键入
    admin,
在TLS选项卡上:

  • 检查
    使用TLS协议
  • 认证方法
    -
    自签名证书
现在应该可以了

p.S.之前,我在Heroku上使用相同的数据库时也遇到了问题,数据库名和用户名都相同,我还认为身份验证机制应该是MONGODB-CR。但这不起作用


p.p.S.如果您没有看到
手动指定可见数据库
-那么请检查您是否有刚刚在Mac和Windows上下载的最新版本(1.4.+)的Robo3T(以前称为Robomongo)

。Mac工作,Windoes不工作。确认所有输入/表单字段与“答案”匹配。Windows版本是Robo3T1.4.3(版本48f7dfde-3/2021)。有时我会收到原始线程中所述的错误,但有时应用程序意外崩溃。@Greg,在1.4.1上为我工作。我看到了以后的版本。您也可以尝试使用1.4.1。顺便说一句,你的MongoDB在哪里托管?