# Backups

Manage and restore database backups in Prisma Postgres

## Overview

On [Starter, Pro, and Business plans](/content/pricing/index.html), 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 [Prisma Console](https://console.prisma.io/?utm_source=docs&utm_medium=content&utm_content=postgres) 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:

| Plan     | Snapshot retention |
|----------|-------------------|
| Starter  | Last 7 days       |
| Pro      | Last 7 days       |
| Business  | Last 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](/content/pricing/index.html).

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` with a [direct connection](/content/docs/postgres/database/connecting-to-your-database/index.html). 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:

macOS

```
brew install postgresql@17
which pg_dump
which pg_restore
```

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 by following [Connecting to your database](/content/docs/postgres/database/connecting-to-your-database/index.html).

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

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

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