MongoDB server returned error on SASL authentication step: BSON field 'saslCo

      最近,一个客户遇到一个问题,MongoDB数据库服务器上mongod版本是5.0.1,而mongodump版本是4.0.1,在使用mongodump备份时异常报错无法备份。在排除备份命令问题后,将mongodump版本更新到100.5.4之后,使用该版本mongodump可以对5.0.1正常备份。

      一、问题现象

      mongod版本

      mongodump版本

      使用4.0.9r版本mongodump对5.0.1的mongod进行备份时提示报错

      二、问题分析

      查看发起备份的用户,是root权限,认证数据库是admin,尝试使用用户名密码能够成功登录mongo,说明用户名密码没问题。在测试环境中,使用4.0.1 mongodump对4.0.1的mongod进行备份能够正常执行;同时,100.5.4版本的mongdump也能对5.0.1版本的mongod进行备份。猜测:可能是跨大版本的4.0.1版本的mongodump不能对5.0.1版本的mongod进行备份。在对4.0.1的mongodump升级之后,再次发起备份,发现能够正常备份。

      三、问题处理

      对4.0.1版本的mongodump进行升级,升级后的版本是100.5.4,并进行备份测试。

      4.0.1版本mongodump升级之前对5.0.1版本mongod的备份报错

       4.0.1版本mongodump升级之后,400.5.4对5.0.1版本mongod的备份成功完成

     四、总结

     可以看得出来,mongodb跨大版本之间改动比较大,在mongodb日常维护中,例如:升级、备份、迁移,要考虑mongod和对应工具的版本是否匹配,起码要求大版本要保持一致。


      

请使用浏览器的分享功能分享到微信等