在linux下面用脚本的形式调用命令db.createUser添加用户之后,用spring boot死活连接不上,于是直接取出admin库的system.users表查看具体内容:
左边是Mongo2.4使用了MONGODB-CR认证方式,右面是Mongo3.2,使用了SCRAM-SHA-1认证方式,所以spring 连不上了。
存放认证方式的位置:admin数据库的system.version中,如下:
上图 mongo2.x使用的3.0也就是CR
上图 mongo3.x使用的5也就是SCRAM-SHA-1
修改方法:
sql="use admin;
db.system.version.remove({});
db.system.version.insert({'_id':'authSchema','currentVersion':3});"
echo "$sql" | /usr/local/mongodb/bin/mongo
就行了