You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Open-IM-Server连接MongoDB失败:SCRAM-SHA-1认证错误求助

解决Open-IM-Server连接MongoDB的SCRAM-SHA-1认证失败问题
  • 核对账号密码准确性
    确认Open-IM配置文件中填写的MongoDB账号、密码与MongoDB实例中创建的账号完全匹配,注意区分大小写、特殊字符的转义。可以先用MongoDB Shell直接测试连接验证:

    mongo "mongodb://<username>:<password>@<host>:<port>/<target_db>?authSource=admin"
    

    如果Shell连接也失败,优先排查账号密码错误。

  • 验证账号权限
    登录MongoDB的admin数据库,检查目标账号的权限配置:

    use admin
    db.getUser("<your_username>")
    

    确保该账号对Open-IM使用的数据库拥有readWrite权限,若权限不足,执行以下命令赋予:

    use <open_im_database>
    db.grantRolesToUser("<your_username>", [{ role: "readWrite", db: "<open_im_database>" }])
    
  • 检查MongoDB认证机制配置
    查看MongoDB的配置文件(如mongod.conf),确认已启用SCRAM-SHA-1认证机制:

    security:
      authorization: enabled
    setParameter:
      authenticationMechanisms: SCRAM-SHA-1,SCRAM-SHA-256
    

    若配置中缺少SCRAM-SHA-1,添加后重启MongoDB服务。

  • 修正连接字符串格式
    确保Open-IM配置里的MongoDB连接字符串正确指定了认证源(通常为admin库),示例格式:

    mongodb://<username>:<password>@<host>:<port>/<open_im_db>?authSource=admin
    

    遗漏authSource参数是常见的认证失败原因。

  • 重置账号密码
    若以上步骤均无效,尝试重置目标账号的密码:

    use admin
    db.changeUserPassword("<your_username>", "<new_secure_password>")
    

    更新Open-IM配置文件中的密码后,重启Open-IM服务测试连接。

内容的提问来源于stack exchange,提问作者l mf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 09:35:04