삼분공부/기타

[Supabase] 테이블 구조만 새 프로젝트로 복사하는 방법 - Copy Table Schema

케이쓰리 2025. 5. 29. 09:46

 

 

수파베이스를 사용해서 간단한 토이 프로젝트를 만드려고 하다가 수파베이스 키가 포함된 코드를 깃헙에 올려버렸다. 

 

 

괜히 불안해서 프로젝트 새로 따고 테이블을 복사해보려고 한다. 

 

 

1️⃣ pg_dump 설치하기

Mac:

brew install postgresql

 

Windows: 이 링크에서 PostgreSQL 설치하고 환경변수에 bin 경로 추가

 

( 사실 여기서 하기 싫어졌다. 윈도우면 뭘 설치하라고? 벌써 귀찮다.

나는 프로젝트 초반이라 테이블이 두 개뿐이라 다른 방법으로 했다. 그건 맨 밑에서... )

2️⃣ 기존 프로젝트 DB URL 확인

  1. Supabase Studio 들어가기
  2. Settings > Database 메뉴로 이동
  3. PostgreSQL Connection string 복사 (예: postgres://user:pw@host:port/db)

3️⃣ 테이블 구조만 덤프 하기

pg_dump --schema-only --no-owner --no-privileges \
  -d "postgres://user:pw@host:port/db" \
  > schema.sql

이렇게 하면 컬럼, 제약조건, 인덱스 등 구조만 저장된 schema.sql 파일이 생김.

4️⃣ 새 프로젝트 DB URL 확인

위에서 했던 것처럼 새 프로젝트에서도 PostgreSQL Connection string 복사해 두자.

5️⃣ 새 프로젝트에 테이블 구조 적용하기

psql "postgres://user:pw@host:port/db" < schema.sql

이 명령어 한 줄이면, 기존 테이블 구조가 새 프로젝트에 그대로 복사돼!

💡 팁

  • 데이터까지 같이 옮기고 싶으면 --data-only 옵션 사용
  • 특정 테이블만 옮기고 싶으면 -t 테이블명 옵션 추가
  • 제약조건, 트리거, 함수까지 옮기고 싶다면 pg_restore를 쓰는 것도 좋다.

 

 


 

 

❤❤ 테이블 스키마만 간단하게 복사하는 방법 ❤❤

 

 

저 Copy Table Schema를 누른 후 

 

옮길 프로젝트로 들어가 SQL Editor > 붙여 넣기 > Run 눌러주면 생성된다. 

복사할 테이블이 적다면 이게 훨씬 빠른 방법 같다.