首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Linux mongosh命令行上指定数据库以及身份验证

如何在Linux mongosh命令行上指定数据库以及身份验证
EN

Stack Overflow用户
提问于 2021-10-30 09:34:47
回答 1查看 108关注 0票数 0

我有一个有点恼人的问题,应该是微不足道的,但我想不出来。我在Ubuntu Linux系统(Focal)上运行;我有一个启用了身份验证的mongo (版本5.0.3)数据库。我找不到一个命令行,可以将我放入我想要的数据库的mongo shell中。有没有人能借给我点线索?

如果我发出命令mongosh -u mongoAdmin -p '<password>' mongodb://127.0.0.1/,我就会使用测试数据库进入mongo shell。要访问我的数据库db-name,我需要发出命令use db-name

如果我发出命令mongosh -u mongoAdmin -p '<password>' mongodb://127.0.0.1/db-name,我会得到一条错误消息:

代码语言:javascript
运行
复制
Current Mongosh Log ID: 617d0f78622b00d5095d474d
Connecting to:          mongodb://127.0.0.1/db-name?directConnection=true&serverSelectionTimeoutMS=2000
MongoServerError: Authentication failed.

我在admin数据库中配置的用户:

代码语言:javascript
运行
复制
[
  {
    _id: 'admin.mongoAdmin',
    userId: UUID("6dbdd918-02c4-4000-b5e4-ff59db9f86ed"),
    user: 'mongoAdmin',
    db: 'admin',
    roles: [ { role: 'userAdminAnyDatabase', db: 'admin' } ],
    mechanisms: [ 'SCRAM-SHA-1', 'SCRAM-SHA-256' ]
  }
]
EN

Stack Overflow用户

回答已采纳

发布于 2021-11-12 02:36:09

缺少的部分是我需要在命令行上指定身份验证数据库。此命令有效:

代码语言:javascript
运行
复制
mongosh mongodb://127.0.0.1/db-name -u mongoAdmin -p '<password>' --authenticationDatabase admin
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69778370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档