mongodump -h 127.0.0.1:27017 -d dbName -o . -u user -p password
不加-p的话,以交互式方式输入密码(当密码因含有特殊字符,无法直接写在shell中时,如带小括号的密码,可以采用这种方式)
mongodump -h 127.0.0.1:27017 -d dbName -o . -u user
mongodump -h 127.0.0.1:27017 -d dbName -c collectionName -o . -u user -p password
不加-p同上
mongorestore -h 127.0.0.1:27017 -d dbName --drop dumpFolder -u user -p password
当用户名和密码不是当前库的用户名密码时(比如admin里面的root账号),需要加上authenticationDatabase,否则会auth fail
mongorestore -h 127.0.0.1:27017 -d dbName --drop dumpFolder -u user -p password --authenticationDatabase admin
注意,roles中的db只说明有哪些db的权限而已,但是在账号密码登录的时候,还是需要在创建用户时的db下
db.createUser(
{
user: "user",
pwd: "password",
roles: [ { role: "readWrite", db: "dbName" } ]
}
)
db.system.users.find().pretty()
...
原文:https://www.cnblogs.com/CSunShine/p/11759371.html