我在mlab上安装了一个mongo db,用于在Galaxy上运行的meteor。我可以在我的Windows 8.1 64位笔记本电脑上使用mongoexport从这个数据库中成功导出。我也想连接mongo shell,但是我使用完全相同的mongo用户和密码获得“未授权”的错误消息。
更详细 - 使用mongoexport版本r3.4.7:
可以正常工作mongoexport --host ds121225.mlab.com:21225 -d quarule-db01 --collection Quarule -u xxxxx -p xxxx -q "{vocabularyName: 'qre'}" --out QRE.json
虽然失败了:
mongo ds121225.mlab.com:21225/quarule-db01 -u xxxx -p xxxxx
MongoDB shell version v3.4.7
connecting to: mongodb://ds121225.mlab.com:21225/quarule-db01
MongoDB server version: 3.4.9
rs-ds121225:PRIMARY> show dbs
2017-10-30T19:50:37.795-0700 E QUERY [thread1] Error: listDatabases failed:{
"ok" : 0,
"errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
"code" : 13,
"codeName" : "Unauthorized"
} :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
Mongo.prototype.getDBs@src/mongo/shell/mongo.js:62:1
shellHelper.show@src/mongo/shell/utils.js:769:19
shellHelper@src/mongo/shell/utils.js:659:15
我已检查并重新检查我在两个命令中以相同的方式指定用户ID和密码。
为什么导出成功而shell失败?