Win10环境下NestJS连接PostgreSQL启动失败求助
Win10本地NestJS对接PostgreSQL数据库连接错误解决指南
问题背景
我是前端开发人员,在Win10本地测试前端应用对接NestJS后端与PostgreSQL数据库时,按以下步骤操作后启动应用出现连接错误:
- 安装PostgreSQL
- 给NestJS项目执行
npm install - 运行pgAdmin4并为应用创建数据库
- 执行
npm start启动项目
我的ormconfig配置如下:
module.exports = { "type": "postgres", "host": process.env.POSTGRES_HOST || "localhost", "port": process.env.POSTGRES_PORT || 5432, "username": process.env.POSTGRES_USER || "", // 这里试过各种可能的用户名 "password": process.env.POSTGRES_PASSWORD || "", // 这里试过各种可能的密码 "database": process.env.POSTGRES_DB || "my_database", "entities": ["dist/**/*.entity{.ts,.js}"], "synchronize": true, "logging": true }
遇到的错误:
- 一台电脑出现PostgreSQL服务器连接失败的错误
- 另一台电脑出现:
[Nest] ERROR [TypeOrmModule] Unable to connect to the database. FATAL: password authentication failed for user "postgres" (postgresql 14 with pgAdmin 4)
解决步骤
1. 确认PostgreSQL用户名和密码的正确性
- 安装PostgreSQL时会设置默认用户
postgres的密码,这是核心信息,不要留空或随意尝试,回忆安装时的设置 - 验证方法:打开命令提示符,输入
psql -U postgres,输入密码后如果能进入PostgreSQL命令行界面,说明用户名密码正确
2. 修正ormconfig配置
- 不要让用户名和密码留空,直接填入正确的信息,示例配置:
module.exports = { "type": "postgres", "host": process.env.POSTGRES_HOST || "localhost", "port": process.env.POSTGRES_PORT || 5432, "username": process.env.POSTGRES_USER || "postgres", // 填实际用户名,默认是postgres "password": process.env.POSTGRES_PASSWORD || "你的PostgreSQL密码", // 填安装时设置的密码 "database": process.env.POSTGRES_DB || "my_database", "entities": ["dist/**/*.entity{.ts,.js}"], "synchronize": true, "logging": true }
- 若使用环境变量,需确保Win10系统环境变量已正确配置,或通过
@nestjs/config包加载.env文件中的变量
3. 确认PostgreSQL服务处于运行状态
- 按下Win+R,输入
services.msc打开服务列表 - 找到名称为
postgresql-x64-14(版本号对应你的安装版本)的服务,确认状态为“正在运行”,未运行则右键启动
4. 检查目标数据库是否存在
- 打开pgAdmin4,确认你创建的
my_database确实存在,且创建该数据库的用户与你配置的用户名一致
5. 解决密码认证失败问题(针对第二台电脑的错误)
- 找到PostgreSQL的
pg_hba.conf配置文件,默认路径一般为C:\Program Files\PostgreSQL\14\data\pg_hba.conf(版本号对应你的安装版本) - 找到如下格式的行:
host all all 127.0.0.1/32 scram-sha-256
- 将
scram-sha-256修改为md5,保存文件后重启PostgreSQL服务(修改文件需管理员权限)
验证
修改完成后,重新执行npm start启动NestJS应用,若仍有问题,可通过logging: true输出的详细日志进一步定位错误。
内容的提问来源于stack exchange,提问作者blacknighttext
相关产品推荐
相关产品推荐

