Back to Supabase

Migrate from Vercel Postgres to Supabase

apps/docs/content/guides/platform/migrating-to-supabase/vercel-postgres.mdx

1.26.043.3 KB
Original Source

This guide demonstrates how to migrate your Vercel Postgres database to Supabase to get the most out of Postgres while gaining access to all the features you need to build a project.

Retrieve your Vercel Postgres database credentials [#retrieve-credentials]

  1. Log in to your Vercel Dashboard https://vercel.com/login.
  2. Click on the Storage tab.
  3. Click on your Postgres Database.
  4. Under the Quickstart section, select psql then click Show Secret to reveal your database password.
  5. Copy the string after psql to the clipboard.

Example:

bash
psql "postgres://default:[email protected]:5432/verceldb?sslmode=require"

Copy this part to your clipboard:

bash
"postgres://default:[email protected]:5432/verceldb?sslmode=require"

Set your OLD_DB_URL environment variable

Set the OLD_DB_URL environment variable at the command line using your Vercel Postgres Database credentials.

Example:

bash
export OLD_DB_URL="postgres://default:[email protected]:5432/verceldb?sslmode=require"

Retrieve your Supabase connection string [#retrieve-supabase-connection-string]

  1. If you're new to Supabase, create a project. Make a note of your password, you will need this later. If you forget it, you can reset it here.

  2. On your project dashboard, click Connect

  3. Under the Session pooler, click the Copy button to the right of your connection string to copy it to the clipboard.

Set your NEW_DB_URL environment variable

Set the NEW_DB_URL environment variable at the command line using your Supabase connection string. You will need to replace [YOUR-PASSWORD] with your actual database password.

Example:

bash
export NEW_DB_URL="postgresql://postgres.xxxxxxxxxxxxxxxxxxxx:[YOUR-PASSWORD]@aws-0-us-west-1.pooler.supabase.com:5432/postgres"

Migrate the database

You will need the pg_dump and psql command line tools, which are included in a full Postgres installation.

  1. Export your database to a file in console

    Use pg_dump with your Postgres credentials to export your database to a file (e.g., dump.sql).

bash
pg_dump "$OLD_DB_URL" \
  --clean \
  --if-exists \
  --quote-all-identifiers \
  --no-owner \
  --no-privileges \
  > dump.sql
  1. Import the database to your Supabase project

    Use psql to import the Postgres database file to your Supabase project.

    bash
    psql -d "$NEW_DB_URL" -f dump.sql
    

Additional options

  • To only migrate a single database schema, add the --schema=PATTERN parameter to your pg_dump command.
  • To exclude a schema: --exclude-schema=PATTERN.
  • To only migrate a single table: --table=PATTERN.
  • To exclude a table: --exclude-table=PATTERN.

Run pg_dump --help for a full list of options.

<$Partial path="migration_warnings.mdx" />

Enterprise

Contact us if you need more help migrating your project.