首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >prisma无法连接postgresql

问prisma无法连接postgresql
EN

Stack Overflow用户
提问于 2020-09-01 08:36:25
回答 2查看 6.8K关注 0票数 12

我曾多次尝试将Prisma与postgreSQL连接起来。prisma显示此错误消息:“"postgresql://postgres:password@localhost:5432/linker")".中的错误:未定义:无效端口号

-error

​

-prisma/..env

代码语言:javascript
复制
DATABASE_URL=postgresql://postgres:password@localhost:5432/linker

-schema.prisma

代码语言:javascript
复制
datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

因此,首先,我检查了端口号,看看它是否正确,5432是正确的,因为我使用默认端口号。我还检查了postgresql.conf文件,该文件设置为“listen_address=”*“,"port=5432”。

​

​

然后我进入了pgAdmin4并查看了服务器的属性。端口号为5432,如下图所示,用户名设置为"postgres“。

​

​

我不知道为什么普莉丝玛不能

我漏掉了什么吗?

EN

回答 2

Stack Overflow用户

发布于 2021-06-02 08:09:48

如果有人遇到这个问题,请看上面的评论!

从db密码中删除符号(托管在AWS RDS上)为我解决了这个问题。

票数 5
EN

Stack Overflow用户

发布于 2022-08-27 21:17:14

为了在数据库连接字符串中使用密码,您应该将密码转换为URL编码格式。

接受的答案是正确的。

但是我想展示一个编程和简单的解决方案,因为手动替换密码中的特殊字符很容易出错。

您已经在您的计算机上安装了NodeJS (显然,因为您试图使用Prisma)

打开一个终端并启动一个NodeJS进程(当前目录无关紧要):

代码语言:javascript
复制
node

然后输入这个,点击enter:

代码语言:javascript
复制
     new URLSearchParams({pass: "YOUR_PASSWORD_WITH_SPECIAL_CHARACTERS"}).toString().substring(5)

因此,您将获得打印到控制台的密码的URL编码版本:

代码语言:javascript
复制
'YOUR_PASSWORD_URL_ENCODED'

复制它(没有引号),并在数据库连接字符串中使用它作为密码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63684133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档