2013-04-11 2 views
0

에 난 내 DB 설정이있는 우분투에서/opt 디렉토리에 test.yaml 파일을 가지고 mongoid 지금 클래스 인스턴스 YAML 파일

require File.expand_path('../application', __FILE__) 
class Settings 
raw_config = File.read("/opt/test.yml") 
erb_config = ERB.new(raw_config).result 
settings = YAML.load(erb_config)[::Rails.env] 
if settings 
    settings.each do |name, value| 
    puts "checking array" , name, value 
    instance_variable_set("@#{name}", value) 
    self.class.class_eval { attr_reader name.intern } 
end 
end 
end 

을 같이 나는 environment.rb에있는 해당 파일을 얻을. 코드

development: 
sessions: 
    default: 
    hosts: 
    -Settings.sessions["default"]["hosts"] 
    username: ve 
    password: "123456" 
    database: weather 

그러나이 오토바이 :: 오류와 같은 점점 오류와 같이 YML 파일 내가 그 클래스를 사용하려면 : ConnectionFailure은 (복제 세트]>에 대한 보조 또는 기본 노드에 연결할 수 없습니다) :

나는 새로운 사람이고 거기에 머물렀다. 아무 도움도 크게 감사 할 것이다. 감사

답변

0

이론 :

그들은 키가 mongod.lock 파일을 삭제하고 다시 MongoDB를 서비스를 시작하는 것입니다. 우분투의 잠금 파일은 /var/lib/mongod.lock입니다.

세부 사항 :

나는 우분투에서 같은 오류가 발생했다

이 내가 무슨 짓을 :

방랑의 @의 lucid32 : ~ $ sudo는 서비스가
다시 시작 다시 시작 MongoDB를 알 수없는 인스턴스를 :

방랑의 @의 lucid32 : ~ $ sudo는 RM은 /var/lib/mongod.lock

방랑의 @의 lucid32 : ~ $ sudo는 서비스 프로세스,
실행/시작 MongoDB를 시작 MongoDB를 2340

방랑의 @의 lucid32 : ~ $ sudo는 서비스 프로세스,
실행/시작 MongoDB를 다시 시작 MongoDB를 2368