Mongodb 来自远程节点的mongodump-无法使用机制进行身份验证;紧急停堆-SHA-256“;
尝试从远程节点获取转储,但出现以下错误: 失败:无法创建会话:无法连接到服务器: 连接():身份验证错误:sasl对话错误:无法 使用机制“SCRAM-SHA-256”进行身份验证(身份验证失败) 身份验证失败 尝试了两种方法从远程节点获取转储。但是在两种方法中得到了相同的错误Mongodb 来自远程节点的mongodump-无法使用机制进行身份验证;紧急停堆-SHA-256“;,mongodb,mongodump,Mongodb,Mongodump,尝试从远程节点获取转储,但出现以下错误: 失败:无法创建会话:无法连接到服务器: 连接():身份验证错误:sasl对话错误:无法 使用机制“SCRAM-SHA-256”进行身份验证(身份验证失败) 身份验证失败 尝试了两种方法从远程节点获取转储。但是在两种方法中得到了相同的错误 # Method 1 mongodump -h remoteip@port -u xxx -p xxx --db xxx --authenticationDatabase xxx # Method 2 mongodu
# Method 1
mongodump -h remoteip@port -u xxx -p xxx --db xxx --authenticationDatabase xxx
# Method 2
mongodump --uri "mongodb://username:password@remoteip:port/db?authSource=xxx"
如何解决这个问题?我也有同样的问题。在我的例子中,密码有特殊字符。它使用单引号作为密码:
-p 'my_password'
我遇到了同样的问题,并在密码中使用单引号解决了它,如下所示:
--password 'secret'
和你在同一个地方,这样解决:
mongodump --uri "mongodb+srv://username:password@yourmongodbclustersourceurl" --archive \
mongorestore --uri "mongodb+srv://username:password@yourmongodbclusterdestinationurl" --archive \
--nsExclude "admin.system.*"
不用说,你只需要更改你的用户名、密码和这个公式中的url,瞧。祝你好运。对于我(尝试在同一主机上的单个节点DB上使用mongodump),使用--authenticationDatabase admin
实现了以下目的:
mongodump-u root--密码“secret”-authenticationDatabase admin-d mongo dev-o/tmp/dump-2020-11-27.bson
(由提供)1.如果您正在为mongodump命令使用URI,
--authenticationDatabase admin
选项相当于?authSource=admin
mongodump --uri "mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]"
示例url:
mongodump --uri "mongodb+srv://username1:password1@host1/db1?authSource=admin"
错误的凭据或错误的身份验证源或用户不存在,请使用服务器日志确定它是哪个。将错误添加到问题中作为文本。您好,我也有同样的问题。我在MongoDB compass中使用相同的连接字符串,但在mongodump中失败。您是如何解决这个问题的?也许使用选项--authenticationDatabase admin可以解决您的问题。我相信这是正确的答案。您需要使用
--authenticationDatabase
指定authSource,这在Spring框架配置文件中非常有效