无法使用 express 连接到 postgreSQL 数据库
Posted
技术标签:
【中文标题】无法使用 express 连接到 postgreSQL 数据库【英文标题】:can't connect to postgreSQL database with express 【发布时间】:2018-12-24 15:30:38 【问题描述】:我在我的 Windows 机器上下载并安装了 postgreSQL,我还下载了用户界面的 pgAdmin 4。我正在开发一个 node-js 项目但我无法连接到我的数据库。我正在使用 knex,这是我的代码
const PORT = 3001;
const bcrypt = require('bcrypt');
const saltRounds = 10;
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const app = express();
const knex = require('knex');
const db = knex(
client: 'pg',
connection:
host : 'localhost',
user : '',
password : '',
database : 'SmartBrain'
);
db.select('*').from('users').then(resp => console.log(resp));
我收到了这个错误:
应用程序正在端口 3001 上运行 未处理的拒绝错误:不允许角色“MostfaWindows”登录 在 Connection.parseE (C:\Users\MostfaWindows\Desktop\faceRecogniti onApi\node_modules\pg\lib\connection.js:553:11) 在 Connection.parseMessage (C:\Users\MostfaWindows\Desktop\faceRec ognitionApi\node_modules\pg\lib\connection.js:378:19) 在套接字。 (C:\Users\MostfaWindows\Desktop\faceRecognitionApi\node_modules\pg\lib\connection.js:119:22) 在 emitOne (events.js:116:13) 在 Socket.emit (events.js:211:7) 在 addChunk (_stream_readable.js:263:12) 在 readableAddChunk (_stream_readable.js:250:11) 在 Socket.Readable.push (_stream_readable.js:208:10) 在 TCP.onread (net.js:594:20)
“MostfaWindows”是我的计算机名称。 任何帮助将不胜感激,谢谢。
【问题讨论】:
您连接 Postgres 的配置不正确。检查 localhost、数据库端口、数据库用户和数据库密码的值。 在我的 pgAdmin 我有这个 URL,我应该把它而不是 localhost? "127.0.0.1:65480/browser" 你的 PG 数据库的用户是什么? 【参考方案1】:我通过简单地创建一个用户、授予它选择权限并将用户名放在连接的用户字段中解决了这个问题。
【讨论】:
以上是关于无法使用 express 连接到 postgreSQL 数据库的主要内容,如果未能解决你的问题,请参考以下文章
无法通过 python 通过 SSH 连接到 postgres 服务器
无法使用 docker 连接到 ipv6 中的 postgres
节点服务器无法通过 Docker 连接到 Postgres,使用 TypeORM
设置 PostgreSQL,无法连接到数据库 postgres