Navicat访问mongo时密码转义字符问题
最近在查问题时,需要连接mongo数据库,但是项目是从别人那接手的,所以很多配置需要看配置文件,所以这次我也直接从配置文件中复制了密码,在Navicat中新建连接,但是点测试连接时提示“Authentication failed”
第一反应肯定是密码错了,但是这个是线上的配置,正在运行的服务也都是用的这个密码,理论上是不会错的,所以又试了下uri配置的方式,果然是可以连接上的,至此问题变得诡异,为什么同样的密码,URI的形式可以连接,但是可视化的方式不行?
这时关注到密码里面有个%字符,程序员的直觉告诉我就是它的问题,搜了一下,果然是这样,这个是转义字符,URI的密码是转义之后的,可视化的界面输入的是未转义的,所以我这里应该使用未转义前的字符才行。
参考文献:
Java编程,配置mongoUri连接mongodb时,需对特殊字符进行转义_mongodb 密码 特殊字符-CSDN博客
连接mongo使用URI 有特殊字符( 如‘@‘ 、“:“)怎么办?_spring.data.mongodb.uri 特殊字符-CSDN博客