Rails异常Could not connect to a primary node for replica set #<Moped::Cluster: @seeds=[<Moped::Node resolved_address=nil>]>

Rails连接远程mongo数据库报错:

"Could not connect to a primary node for replica set #<Moped::Cluster:27191916 @seeds=[<Moped::Node resolved_address=nil>]>"

配置文件内容如下:

development:
  sessions:
    default:
      database: spider
      hosts:
        - db.***.com:10001
      options:
  options:
test:
  sessions:
    default:
      database: spider_admin_test
      hosts:
        - localhost:27017
      options:
        read: primary
        max_retries: 1
        retry_interval: 0

上stackoverflow.com找解决方案

原文地址:http://stackoverflow.com/questions/21128597/mongoid-with-rails-4-could-not-connect-to-a-primary-node-resolved-address

大致是说把域名的形式改成IP形式,于是我尝试将域名改成具体IP后,程序恢复正常,修改后如下:

development:
  sessions:
    default:
      database: spider
      hosts:
        - 0.0.0.0:10001  # 需更换成你的程序所使用的mongo服务器具体IP地址
      options:
  options:
test:
  sessions:
    default:
      database: spider_admin_test
      hosts:
        - localhost:27017
      options:
        read: primary
        max_retries: 1
        retry_interval: 0
时间: 2024-10-11 04:19:26

Rails异常Could not connect to a primary node for replica set #<Moped::Cluster: @seeds=[<Moped::Node resolved_address=nil>]>的相关文章

SELinux导致PHP连接MySQL异常Can&#39;t connect to MySQL server的解决方法

今天上班遇到的问题,新配的Linux服务器,php.Apache和一系列扩展插件装好后,在本地好好的程序移上去就一直抱数据库连接错误,而用sql命令却能连接上去, 做了一个简单的判断数据库连接页面还是不行,证明不是程序问题,而是php的哪里问题了,就在网上查了大半天 有些方法都不合情况后面偶然发现SELinux这个东西 查了下这个有限制httpd对外访问的权限:具体如下 输入命令:getsebool -a|grep -i httpd 里面会有一个 httpd_can_network_connec

Android 异常: failed to connect to localhost/127.0.0.1

连接本地web服务器,在模拟器不能连接到127.0.0.1. Android把127.0.0.1当作模拟器本机,而把计算机本地IP设为10.0.2.2,需要把需连接本地计算机web服务地址改为:http://10.0.2.2

腾讯云:MySQL数据库的高可用性分析

MySQL数据库是目前开源应用最大的关系型数据库,有海量的应用将数据存储在MySQL数据库中.存储数据的安全性和可靠性是生产数据库的关注重点.本文分析了目前采用较多的保障MySQL可用性方案. MySQL Replication MySQL Replication是MySQL官方提供的主从同步方案,用于将一个MySQL实例的数据,同步到另一个实例中.Replication为保证数据安全做了重要的保证,也是现在运用最广的MySQL容灾方案.Replication用两个或以上的实例搭建了MySQL主

腾讯云数据库团队:MySQL数据库的高可用性分析

作者介绍:易固武,腾讯高级工程师,参与腾讯账号安全建设,腾讯数据仓库(TDW)优化改造,腾讯云数据库等项目,对大规模分布式存储和计算系统有浓厚的兴趣和经历 MySQL数据库是目前开源应用最大的关系型数据库,有海量的应用将数据存储在MySQL数据库中.存储数据的安全性和可靠性是生产数据库的关注重点.本文分析了目前采用较多的保障MySQL可用性方案. MySQL Replication MySQL Replication是MySQL官方提供的主从同步方案,用于将一个MySQL实例的数据,同步到另一个

SQL Server 2014 Always on ON Microsoft Azure New Portal(1)

以前假如需要在Azure IaaS 创建的SQL Server AlwaysOn 需要参考以下的步骤 From the MVPs: SQL Server High Availability in Windows Azure Iaas 在Microsoft Azure 新的门户中,现在开始可以直接创建SQL Server 2014 Always on 如何切换到New Portal Microsoft Azure Preview portal 以及Preview Features介绍 Automa

MySQL 数据库的高可用性分析

前言 MySQL数据库是目前开源应用最大的关系型数据库,有海量的应用将数据存储在MySQL数据库中.存储数据的安全性和可靠性是生产数据库的关注重点.本文分析了目前采用较多的保障MySQL可用性方案. MySQL Replication MySQL Replication是MySQL官方提供的主从同步方案,用于将一个MySQL实例的数据,同步到另一个实例中.Replication为保证数据安全做了重要的保证,也是现在运用最广的MySQL容灾方案.Replication用两个或以上的实例搭建了MyS

写了一个分布式名字服务JCM

之前在公司里维护了一个名字服务,这个名字服务日常管理了近4000台机器,有4000个左右的客户端连接上来获取机器信息,由于其基本是一个单点服务,所以某些模块接近瓶颈.后来倒是有重构计划,详细设计做了,代码都写了一部分,结果由于某些原因重构就被终止了. JCM是我业余时间用Java重写的一个版本,功能上目前只实现了基础功能.由于它是个完全分布式的架构,所以理论上可以横向扩展,大大增强系统的服务能力. 名字服务 在分布式系统中,某个服务为了提升整体服务能力,通常部署了很多实例.这里我把这些提供相同服

12.横向扩容 、提升容错性

主要知识点: 横向扩容后shard的自动分配及自动负载均衡 扩容极限及超过扩容极限后的处理 不同情况下的容错. 1.横向扩容 当扩容时,es会自动进行负载均衡,也就是会自动的分配primary shard 和replica shard 到新增加的node中.从而保证:每个node上有大致相同的shard数量(primary shard 和replica shard 一定是要存放在不同的node中的)此时,每个node有更少的shard,因此每个shard 可以占用这个node更多的资源(IO/C

Elasticsearch基础分布式架构

写在前面的话:读书破万卷,编码如有神-------------------------------------------------------------------- 参考内容: <Elasticsearch顶尖高手系列-快速入门篇>,中华石杉 -------------------------------------------------------------------- 主要内容包括: Elasticsearch对复杂分布式机制的透明隐藏特性 Elasticsearch的垂直扩