[英]How to get backup with mongodb
当我想备份时,我会面对这个命令
mongodump -d数据库名-u管理员-p -o / home
I encounter an error Errmsg: "auth faild",code:18}
但是有了这个用户并通过,我可以连接到数据库了,但是当我想断开身份验证时,我将获得备份
谢谢
此消息表明mongodump
无法针对mongod
身份验证。 有几种可能的原因。 查看文档,我们可以看到有关-p
选项的以下注释。
在版本3.0.0中更改:如果未为--password指定参数,则mongodump将返回错误。
在版本3.0.2中更改:如果希望mongodump提示用户输入密码,请传递--username选项而不使用--password或将空字符串指定为--password值,如--password“”所示。
在您提供的示例命令中,只有-p
表示需要密码。
此外,缺少--authenticationDatabase
选项。 在看mongodump
的文档:
指定在其中创建用户的数据库。 请参阅身份验证数据库。
如果未指定身份验证数据库,则mongodump假定指定要导出的数据库包含用户的凭据。
如果您未指定身份验证数据库或要导出的数据库,则mongodump会假定admin数据库拥有用户的凭据。
由于指定了-d
参数,因此mongodump
将尝试针对该数据库进行身份验证。 用户更有可能存在于admin
数据库中。
考虑到所有这些,请尝试以下命令:
mongodump -d <databasename> -u <user> --authenticationDatabase admin -o /home
该命令将通过stdin
提示您stdin
密码。 如果要在命令行上指定密码,命令将更改为
mongodump -d <databasename> -u <user> --authenticationDatabase admin -p <password> -o /home
请使用适合您环境的值替换<databasename>
, <user>
和<password>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.