Mongoose: 如何切换数据库

创建于 2012-09-24  ·  10评论  ·  资料来源: Automattic/mongoose

mongo shell中,我可以这样做:

use admin
db.auth('user','pass')
use test
db.find()

这意味着我通过了授权然后我可以做任何事情。

我的问题是如何在猫鼬中做同样的工作,如何在猫鼬中切换数据库?

因为我必须进入 ADMIN db 进行授权,然后更改到其他 db 以我自己的操作

最有用的评论

其他可能的方法是在 url 中使用查询参数

 mongodb://root:pass<strong i="6">@localhost</strong>:27017/mydb?authSource=admin

看这里 ->支持 AuthSource

所有10条评论

要授权您的连接,请在您的连接字符串或传递给连接的参数中包含您的 uname + 密码:

在这里查看示例: http ://mongoosejs.com/docs/api.html#index_Mongoose -createConnection

谢谢你的答复!
是的,我知道如何授权。 但是授权后,如何切换数据库,就像 mongo shell 中的“使用 OTHER_DB”一样。

猫鼬不支持它。 需要新的连接。

2012 年 9 月 24 日晚上 8:57,Rex Huang [email protected]写道:

谢谢你的答复!
是的,我知道如何授权。 但是授权后,如何切换数据库,就像 mongo shell 中的“使用 OTHER_DB”一样。

\
直接回复此邮件或在 GitHub 上查看。

连接到 mongodb 时遇到问题 - 因为身份验证会将我带到特定的数据库,例如“admin”(标准)。 但是猫鼬怎么办? 仅在 auth 选项中设置 authSource ....

var db = mongoose.createConnection(
  "localhost", 
  "myCostumDB", 
  "27010", 
  {
    user: "root",
    pass: "mypass",
    auth: {
      authSource: "admin" //<-- That is the Point.....
    }
  }
);

天哪,我无法相信找到这个有多难。 感谢@MNeundorf为我节省了更多的头发拉扯。

其他可能的方法是在 url 中使用查询参数

 mongodb://root:pass<strong i="6">@localhost</strong>:27017/mydb?authSource=admin

看这里 ->支持 AuthSource

@Naxmeify你救了我的命......! 谢谢!

@Naxmeify你也救了我的命……! 谢谢!

@naxmefy你也救了我的命! 谢谢!

如何在同一页面上将用户登录门户更改为管理员登录门户?

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

bendytree picture bendytree  ·  53评论

aartiles picture aartiles  ·  47评论

cosminn777 picture cosminn777  ·  158评论

floatingLomas picture floatingLomas  ·  61评论

xpepermint picture xpepermint  ·  115评论