You need to enable JavaScript to run this app. SailsJS下sails-mongo连MongoDB报认证失败 密码可正常连其他工具
优惠活动
大模型
产品
解决方案
定价
更多

SailsJS下sails-mongo连MongoDB报认证失败 密码可正常连其他工具

问题概述

使用SailsJS的Mongo连接器时,抛出数据库连接管理器创建失败的一致性校验报错,已完成常规连接排查仍未解决。

核心报错信息

Error: Consistency violation: Unexpected error creating db connection manager: MongoError: Authentication failed

已完成的排查验证

  • 反复核对账号、密码字段正确性
  • 其他工具连接测试正常:跨服务器可通过MongoExpress连接、本地可通过MongoCompass正常连接目标MongoDB实例
  • 逐字符比对手动复制的连接URL,完全排除拼写输入错误
  • 基础配置遵循Sails官方MongoDB接入教程的标准流程

与官方教程的配置差异

为规避Sails自动迁移流程触发的“缺少删除操作权限”类Mongo报错,没有按照教程方式拆分配置host、port、账号密码字段,而是直接将账号密码拼接进连接URL完成配置。

当前环境版本

  • MongoDB v4.4.4
  • sails-mongo 1.2.0
  • Sails v1.4.2
相关配置与初始化代码

数据存储配置(datastore.js)

default: {
    adapter: 'sails-mongo',
    url: 'mongodb://user:password@localhost:27017/mydb',
}

全局模型配置(model.js)

attributes: {
    // 适配MongoDB的时间戳与ID字段映射
    createdAt: { type: 'number', autoCreatedAt: true, },
    updatedAt: { type: 'number', autoUpdatedAt: true, },
    id: { type: 'string', columnName: '_id' },
}

MongoDB账号创建语句

use admin
db.createUser(
  {
    user: "user",
    pwd: passwordPrompt(), // 可替换为明文字符串密码
    roles: [ { role: "readWrite", db: "mydb" } ]
  }
)
诉求
  • 定位当前认证失败的根本原因
  • 给出可落地的适配解决方法

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.27 13:06:11