我想为我的MongoDB实例设置用户名和密码验证,以便任何远程访问都会要求输入用户名和密码.我尝试了MongoDB网站上的教程并做了以下事情:
use admin
db.addUser('theadmin', '12345');
db.auth('theadmin','12345');
Run Code Online (Sandbox Code Playgroud)
在那之后,我退出并再次运行mongo.而且我不需要密码来访问它.即使我远程连接到数据库,也不会提示我输入用户名和密码.
更新这是我最终使用的解决方案
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
Run Code Online (Sandbox Code Playgroud)
用户名和密码将以相同的方式用于mongodump和mongoexport.
我想将名为file_path的环境变量传递给js文件.我使用以下语法 mongo --eval"var file_path ='$ file_path'"<aggregation.js
输出:MongoDB shell版本:3.2.9-rc0连接到:test
注意:它不执行aggregation.js文件.只有它通过了论证.