3
我有两个数据库,我必须在我的应用程序中使用。我在我的mongoid.yml如下:连接到两个数据库Mongoid
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: db_development
username: myusername
password: mypassword
# Provides the hosts the default session can connect to. Must be an array
# of host:port pairs. (required)
hosts:
- myserverip:27017
databases:
secondary:
database: db2_development
username: myusername
password: mypassword
# Provides the hosts the default session can connect to. Must be an array
# of host:port pairs. (required)
hosts:
- myserverip:27018
在我的模型文件:
class MyModel
include Mongoid::Document
store_in database: "secondary"
field :name, type: String
field :age, type: Integer
end
我有数据为MyModel。当我尝试查询时,出现以下错误:
Moped::Errors::QueryFailure (The operation: #<Moped::Protocol::Query
@length=96
@request_id=5
@response_to=0
@op_code=2004
@flags=[:slave_ok]
@full_collection_name="secondary.mymodel"
@skip=0
@limit=0
@selector={"name"=>"Tom"}
@fields=nil>
failed with error 10057: "unauthorized db:secondary ns:secondary.mymodel lock type:0 client:10.100.55.40"
我试过在线搜索,但无法获得任何解决方案。任何帮助,将不胜感激。提前致谢。
它的作品就像一个魅力。谢谢。 +1! – senthil 2013-05-07 06:45:01
感谢您的回答 我说的“localhost:27017”,而不是“myserverip:27017” 和“store_in数据库:‘db2_name’”,而不是“在会话存储:‘写’” 和它的工作对我来说 – 2017-09-16 08:47:36