본문 바로가기
CS/Database

[Database] post CRUD 서버 애플리케이션 만들기(1)

by 디스코비스킷 2025. 5. 22.
반응형

npm, prisma 초기설정

1. prisma 설치

npm 초기세팅, prisma 설치

npm init -y
npm install prisma --save-dev

prisma 초기세팅

npx prisma
npx prisma init

ES module 로 진행할거라서,
package.json에서 "type": "module",로 변경한다.

supabase 연동

관련문서
https://supabase.com/partners/integrations/prisma
https://supabase.com/docs/guides/database/prisma

환경변수 추가

supabase 상단에 connection 버튼 누르면 모달창 뜸.
두번째 Transaction pooler string을 복사한다.

Transaction pooler string을 .env 파일에 DATABASE_URL로 넣어준다.

뒤에 ?pgbouncer=true&connection_limit=1 옵션을 추가해주고,
DIRECT_URL에는 DATABASE_URL를 복사한 후 뒤에 옵션을 지우고, 포트번호를 5432로 수정한다.

# Set this to the Transaction connection pooler string you copied in Step 1
DATABASE_URL="postgres://[db-user].[project-ref]:[db-password]@aws-0-[aws-region].pooler.supabase.com:6543/[db-name]?pgbouncer=true&connection_limit=1"
# Set this to the Session connection pooler string you copied in Step 1
DIRECT_URL="postgres://[db-user].[project-ref]:[db-password]@aws-0-[aws-region].pooler.supabase.com:5432/[db-name]"

schema.prisma에 db directUrl지정하기

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
  directUrl = env("DIRECT_URL")
}

prisma와 supabase 사용시 npx prisma db pull을 했을 때 한참동안 진행되는 문제 → directUrl을 추가하면 해결된다.
https://www.recodelog.com/issues/prisma/supabase

반응형

최근댓글

최근글

© Copyright 2024 ttutta