Skip to main content

Backups

Overview

On Pro and Business plans, Prisma Postgres automatically creates snapshots of your database to support recovery and backup workflows. Navigate to the Backups tab of your Prisma Postgres instance in the to view and re-instantiate your available backups.

Snapshots are created daily, but only on days when the database has activity. Depending on your plan, you will see a different number of available snapshots:

PlanSnapshot retention
ProLast 7 days
BusinessLast 30 days

Please note that any database changes or events that occurred after the most recent snapshot may not be restored.

For more details about backup availability and plan-specific features, visit our pricing page.

note

In the future, Prisma Postgres will provide more fine-grained backup mechanisms based on user specific configurations and with point-in-time restore functionality.

Manually creating a backup file via pg_dump

If you would like to create a backup file of your database, you can use pg_dump and use a direct connection. This is useful for migrating data between databases or creating a local copy of your database.

Prerequisites

Before you begin, make sure you have:

  • Node.js installed (version 16 or higher).
  • PostgreSQL CLI Tools (pg_dump) for creating backups. Use Postgres version 17 as Prisma Postgres is based on this version.
  • A direct connection string for your Prisma Postgres database.

1. Install PostgreSQL command-line tools

To create backups, ensure you have the PostgreSQL command-line tools installed. Run the following commands based on your operating system:

brew install postgresql@17
which pg_dump
which pg_restore
tip

If you installed PostgreSQL but still see a “command not found” error for pg_dump or pg_restore, ensure your installation directory is in your system’s PATH environment variable.

2. Creating the Backup with pg_dump

Get your direct connection string for Prisma Postgres by following the instructions here.

You can now dump the database by running the following command and using your own connection string:

pg_dump --dbname="postgres://USER:PASSWORD@postgres.prisma-data.net:5432/?sslmode=require" > ./mydatabase.bak

This will create your backup file named mydatabase.bak in the current directory.