2013-06-28 64 views
2

我已經在ec2實例上部署了我的rails應用程序,使用的數據庫是Mongo並託管在單獨的實例上。 mongoid.yml中的數據庫和主機已相應更改,並指向數據庫服務器。該應用程序正在生產模式下運行,工作正常。當我在生產模式下訪問導軌控制檯時,從rails控制檯連接到不同服務器上的mongodb

  $rails c RAILS_ENV=production 

並嘗試訪問模型User.last。它給錯誤

Loading RAILS_ENV=production environment (Rails 3.2.11) 
    1.9.3p327 :001 > User.last 
    Mongoid::Errors::NoSessionsConfig: 
    Problem: 
     No sessions configuration provided. 
    Summary: 
     Mongoid's configuration requires that you provide details about each session that can be connected to, and requires in the sessions config at least 1 default session to exist. 
    Resolution: 
     Double check your mongoid.yml to make sure that you have a top-level sessions key with at least 1 default session configuration for it. You can regenerate a new mongoid.yml for assistance via `rails g mongoid:config`. 

    Example: 
      development: 
        sessions: 
          default: 
            database: mongoid_dev 
            hosts: 
              - localhost:27017 


     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/sessions/factory.rb:61:in `create_session' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/sessions/factory.rb:43:in `default' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/sessions.rb:109:in `default' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/sessions.rb:378:in `__session__' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/sessions.rb:213:in `mongo_session' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/sessions.rb:157:in `collection' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/contextual/mongo.rb:216:in `initialize' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/contextual.rb:47:in `new' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/contextual.rb:47:in `create_context' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/contextual.rb:30:in `context' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/contextual.rb:18:in `last' 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/mongoid-3.0.14/lib/mongoid/finders.rb:129:in `last' 
     from (irb):1 
     from /home/ubuntu/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.11/lib/rails/commands/console.rb:47:in `start' 

Mongoid.yml

默認:&默認 主機:本地主機

 development: 
      # Configure available database sessions. (required) 
      sessions: 
      # Defines the default session. (required) 
      default: 
       # Defines the name of the default database that Mongoid can connect to. 
       # (required). 
       database: app_db 
       # Provides the hosts the default session can connect to. Must be an array 
       # of host:port pairs. (required) 
       hosts: 
      - localhost:27017 
       options: 

      options: 

     test: 
      sessions: 
      default: 
       database: app_db 
       hosts: 
      - localhost:27017 
       options: 
      consistency: :strong 
      # In the test environment we lower the retries and retry interval to 
      # low amounts for fast failures. 
      max_retries: 1 
      retry_interval: 0 


     production: 
      # Configure available database sessions. (required) 
      sessions: 
      # Defines the default session. (required) 
      default: 
       # Defines the name of the default database that Mongoid can connect to. 
       # (required). 
       database: app_db  
       # Provides the hosts the default session can connect to. Must be an array 
       # of host:port pairs. (required) 
       hosts: 
      - ec2-**-***-***-*.ap-southeast-1.compute.amazonaws.com:27017 
       options: 

     options: 
+2

的環境中軌c的製備 – Rubyman

+0

您可以發佈您mongoid.yml?我猜可能有某種錯誤配置.. –

+0

@JuLiu PLZ檢查更新 – Bijendra

回答

1

與嘗試

RAILS_ENV=production rails c 

或@Rubyman建議

rails c production 

在命令中的問題是,mongoid正在尋找所謂的RAILS_ENV=production

相關問題