-
起因
1,今天在将服务查询db从mysql迁移至mongodb的时候,发现报错如下:{"level":"error","time":"2019-06-27T16:54:31.710+0800","caller":"***.go:151","msg":"auth error: sasl conversation error: unable to authenticate using mechanism \"SCRAM-SHA-256\": (AuthenticationFailed) Authentication failed.","app":"***,"version":1}
重点报错信息如下:auth error: sasl conversation error
-
解决方案
1,首先尝试了在Google进行搜索,Stack Overflow上给出的答案是检查我们用户名,账号以及账号和密码(未解决)
2,在GitHub发现哥们遇到和我一样的问题,如下图:
定位原因:报错可能是因为密码中含有特殊字符所致
3,寻找解决方案,发现在golang的官方连接mongodb的选项中并没有一个选项可以对特殊字符进行处理
4,最后解决方案如下 -
将密码中的特殊字符直接替换成URI编码后的字符,避免golang在构建mongodb连接的时候被特殊字符所干扰
-
替换表格如连接url替换表格-来源CSDN
更多推荐
mongodb-golang 权限验证报错:SASL authentication step: Authentication failed
发布评论