es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Error de Prisma ECONNREFUSED después de ejecutar prisma migrate / generate.

Tengo un cliente de Prisma conectado a una base de datos local MySQL dentro de un servidor Express.
El servidor y la base de datos funcionan bien al principio y los tipos de datos también son correctos. Pero:

Después de ejecutar npx prisma migrate dev o npx prisma generate, nada funciona más.
Siempre arroja connect ECONNREFUSED ::1:50898 al realizar cualquier solicitud.
La única solución alternativa que funciona es crear el mismo esquema exacto de nuevo, pero en otro proyecto de nodo, haciendo prisma generate y luego copiando la carpeta “.prisma” generada dentro de mis node_modules.

El error aparece en mi base de datos MySQL localhost, pero también cuando se conecta a una base de datos Postgres de PrismaCloud.
Realmente me molesta porque me gusta mucho Prisma, pero con este problema no puedo usarlo productivamente.

Estoy usando un cliente global de Prisma para mi servidor de esta manera:

import { PrismaClient } from '@prisma/client';

const prisma = new PrismaClient();

export default prisma;

Mi esquema en ./prisma/schema.prisma se ve así:

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
}

Mi DATABASE_URL se ve así: DATABASE_URL=”mysql://root:password@127.0.0.1:3306/merkurier?schema=public”

y un ejemplo de una consulta fallida se ve así:

const user = await prisma.user.findFirst({
            where: {
              email,
            },
          });

Estoy usando una Mac M1 y no estoy usando Docker (tal vez debería usar Docker).

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que tienes problemas para conectarte a tu base de datos local MySQL después de ejecutar npx prisma migrate dev o npx prisma generate. También has intentado conectarte a una base de datos PrismaCloud Postgres, pero ocurre el mismo error.

    Estás utilizando un cliente global de Prisma en tu servidor, y tu DATABASE_URL parece ser correcta. Se proporciona un ejemplo de una consulta fallida. No estás usando Docker.

    Es posible que el problema esté relacionado con la versión de MySQL que estás usando. ¿Has intentado usar una versión diferente? Además, ¿has intentado usar Docker para ver si eso resuelve el problema?

Comments are closed.