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

NestJS中配置TypeORM连接Azure SQL出现ECONNRESET错误如何解决?

问题原因

你当前的配置核心错误是仍使用MySQL的适配逻辑连接Azure SQL(Azure SQL属于SQL Server生态),MySQL驱动的握手协议无法被SQL Server识别,服务端直接断开连接,就会抛出ECONNRESET错误。

解决方案
  • 修正数据库类型配置:将type字段值从mysql改为mssql
  • 安装SQL Server适配依赖:执行命令npm install mssql tedious安装TypeORM连接SQL Server所需的底层依赖
  • 补全Azure SQL专属配置:Azure SQL要求加密连接,且用户名需要拼接服务器后缀,格式为用户名@SQL服务器名,额外配置中补充SQL Server专属的加密校验规则
修正后配置示例
import { TypeOrmModuleOptions } from '@nestjs/typeorm';

import { UserEntity } from '../user/user.entity';

export const typeOrmConfig: TypeOrmModuleOptions = {
  type: 'mssql', // 核心改动:替换为mssql类型
  host: process.env.DB_HOST,
  port: Number(process.env.DB_PORT) || 1433, // Azure SQL默认端口为1433
  username: process.env.DB_USERNAME, // 注意格式为 你的用户名@AzureSQL服务器名
  password: process.env.DB_PASSWORD,
  database: process.env.DB_NAME,
  entities: [UserEntity],
  extra: {
    encrypt: true,
    trustServerCertificate: false, // 适配Azure的证书校验规则
  },
};

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 17:45:03