【发布时间】:2021-12-28 19:21:29
【问题描述】:
我有一个 Prisma 客户端连接到 Express 服务器内的本地 MySQL 数据库。 服务器和数据库起初工作正常,打字也正确。但是:
运行npx prisma migrate dev 或npx prisma generate 后,没有任何效果。
在执行任何请求时它总是抛出connect ECONNREFUSED ::1:50898
这种工作的唯一解决方法是再次创建相同的确切架构,但在另一个节点项目上,执行prisma generate,然后将生成的“.prisma”文件夹复制到我的 node_modules 中。
错误出现在我的本地 MySQL 数据库上,但在连接到 PrismaCloud Postgres 数据库时也会出现。
这对我来说真的很烦人,因为我真的很喜欢 Prisma,但是在这个问题上我不能真正有效地使用它。
我正在为我的服务器使用全局 prisma 客户端,如下所示:
import { PrismaClient } from '@prisma/client';
const prisma = new PrismaClient();
export default prisma;
./prisma/schema.prisma 下的架构如下所示:
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
email String @unique
password String
}
我的 DATABASE_URL 如下所示:DATABASE_URL="mysql://root:password@127.0.0.1:3306/merkurier?schema=public"
一个失败的查询示例如下所示:
const user = await prisma.user.findFirst({
where: {
email,
},
});
我使用的是 M1 mac 而不是 docker(也许我应该使用 Docker)
【问题讨论】:
-
嗨,这里是 Prisma 团队的 Tasin。您是否能够在任何其他设备上复制它,或者您认为它只发生在您的 M1 Mac 上?有人遇到麻烦with the Prisma Client on an M1,我不确定这些是否相关。如果它是类似的东西,请你检查那个问题?如果不是,我会要求您创建一个bug report,最好带有用于复制的步骤/说明。这真的会帮助我们调查这个问题。
标签: mysql node.js express prisma econnrefused