我正在尝试沿着这个React GraphQL TypeScript tutorial编写代码
该项目使用MikroOrm与PostgreSQL数据库进行通信。我在我的Ubuntu18.04上安装了PostgreSQL(12.4),创建了一个"postgres“用户,我可以登录到该用户并运行psql,没有任何问题。但是,当我开始使用像npx mikro-orm migration:create (video timestamp)这样的mikro-orm命令时,我得到以下错误:
error: password authentication failed for user "postgres"
at Parser.parseErrorMessage (/home/<username>/newstack/node_modules/pg-protocol/src/parser.ts:357:11)
at Parser.handlePacket (/home/<username>/newstack/node_modules/pg-protocol/src/parser.ts:186:21)
at Parser.parse (/home/<username>/newstack/node_modules/pg-protocol/src/parser.ts:101:30)
at Socket.<anonymous> (/home/<username>/newstack/node_modules/pg-protocol/src/index.ts:7:48)
at Socket.emit (events.js:315:20)
at Socket.EventEmitter.emit (domain.js:483:12)
at addChunk (_stream_readable.js:295:12)
at readableAddChunk (_stream_readable.js:271:9)
at Socket.Readable.push (_stream_readable.js:212:10)
at TCP.onStreamRead (internal/stream_base_commons.js:186:23) {
length: 104,
severity: 'FATAL',
code: '28P01',
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'auth.c',
line: '333',
routine: 'auth_failed'
}以下是PostgreSQL日志文件中的错误:
2020-08-28 01:45:18.218 EEST [23088] postgres@newstack FATAL: password authentication failed for user "postgres"
2020-08-28 01:45:18.218 EEST [23088] postgres@newstack DETAIL: Password does not match for user "postgres".
Connection matched pg_hba.conf line 96: "host all all 127.0.0.1/32 md5"下面是我的pg_hba.conf:
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
local all all peer
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
local replication all peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5我认为如果连接是本地的,那么就不需要密码了,但是为什么不使用本地套接字呢?如果不能更改,那么我如何给MikroOrm我的数据库凭据呢?
发布于 2020-08-29 19:20:16
将"md5“改为"trust”,如下所示:
local all all peer
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
local replication all peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5发布于 2020-08-28 17:16:34
对我来说,它是在我被添加之后工作的
clientUrl: 'http://localhost:5433'
user: 'postgres',
password: <user pasword for postgres user>在options对象中
发布于 2021-04-12 19:24:48
This解决方案对我很有效。将user和password属性添加到mikro-orm配置中:
dbName: "lireddit",
user: "<user_name>",
password: "<password>",https://stackoverflow.com/questions/63625224
复制相似问题