我想设置用户名&我的MongoDB实例的密码验证,因此任何远程访问都会要求输入用户名&暗语我try 了MongoDB网站上的教程,并做了以下工作:

use admin
db.addUser('theadmin', '12345');
db.auth('theadmin','12345');

之后,我退出并再次运行mongo.我不需要密码就可以访问它.即使我远程连接到数据库,也不会提示我输入用户名&暗语


UPDATE这是我最终使用的解决方案

1) At the mongo command line, set the administrator:

    use admin;
    db.addUser('admin','123456');

2) Shutdown the server and exit

    db.shutdownServer();
    exit

3) Restart mongod with --auth

  $ sudo ./mongodb/bin/mongod --auth --dbpath /mnt/db/

4) Run mongo again in 2 ways:

   i) run mongo first then login:

        $ ./mongodb/bin/mongo localhost:27017
        use admin
        db.auth('admin','123456');

  ii) run & login to mongo in command line.

        $ ./mongodb/bin/mongo localhost:27017/admin -u admin -p 123456

用户名&对于mongodumpmongoexport,密码将以相同的方式工作.

推荐答案

设置用户后,您需要以--auth选项开始mongod.

从MongoDB网站:

运行数据库(mongod进程),并启用--auth选项

MongoDB Authentication

Mongodb相关问答推荐

从两个相连的文件中获取电话和邮箱的渠道是什么?

如何在MongoDB中查找和过滤嵌套数组

如何在Mongo中制作全覆盖索引

如何在Mongodb Mongoose Nodejs中提取不等于一组值的字段

从MongoDB迁移到PostgreSQL:为PostgreSQL编写聚合管道查询

如何在 mongodb 中将一个方面的结果合并到一个有条件的列表中?

Mongodb 按数组元素聚合组

定期自动轮换 MongoDb 集合

在亚马逊 EC2 上托管 nodeJS/mongoose Web 应用程序

为什么 MongoDB 配置服务器必须只有一个或三个?

如何在 MongoDb 中进行类似于嵌套 Sql Select 查询的嵌套查询

如何在mongo中插入带有日期的文档?

启动mongodb和express的正确方法?

如何在 Mongoose 中更新数组值

如何在 Node.js 中格式化 Mongoose 的日期?

MongoDb:如何将附加对象插入对象集合?

如何在 MongoDB 聚合查询中使用 $hint?

如何为 node.js 中的 MongoDB 索引指定 javascript 对象中的属性顺序?

Mongoose 版本控制:when is it safe to disable it?

如何从集合中删除除 MongoDB 中的文档之外的所有文档