Skip to content

Commit 8c37eb1

Browse files
Crispy1975ivasilovpcncMildTomato
authored
docs: restore to new project docs (supabase#30525)
* docs: restore to new project docs and blog * Add Paul C to the authors. * chore: update blog text and make paul and engineer * docs: minor updates to r2np blog text * docs: a few more refinedments for the r2np blog entry * chore: update positions * chore: partially revert * docs: updates to r2np docs and blog * docs: last updates to r2np blog entry * image update * docs: minor update to blog wording for r2np --------- Co-authored-by: Ivan Vasilov <[email protected]> Co-authored-by: Paul Cioanca <[email protected]> Co-authored-by: Jonathan Summers-Muir <[email protected]>
1 parent dc14a6d commit 8c37eb1

File tree

5 files changed

+108
-1
lines changed

5 files changed

+108
-1
lines changed

apps/docs/content/guides/platform/backups.mdx

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,41 @@ A date and time picker will be provided upon pressing the `Start a restore` butt
135135

136136
After locking in the desired point in time to recover to, The Dashboard will then prompt for a review and confirmation before proceeding with the restoration. The project will be inaccessible following this. As such, do ensure to allot for downtime beforehand. This is dependent on the size of the database. The larger it is, the longer the downtime will be. Once the confirmation has been given, the latest physical backup available is downloaded to the project and the database is partially restored. WAL files generated after this physical backup up to the specified point-in-time are then downloaded. The underlying records of transactions in these files are replayed against the database to complete the restoration. The Dashboard will display a notification once the restoration completes.
137137

138+
## Restore to a new project
139+
140+
Supabase provides a convenient way to restore data from an existing project into a completely new one. Whether you're using physical backups or Point-in-Time recovery (PITR), this feature allows you to duplicate project data with ease, perform testing safely, or recover data for analysis. Access to this feature is exclusive to users on paid plans and requires that physical backups are enabled for the source project.
141+
142+
<Admonition type="note">
143+
144+
PITR is an additional add-on available for organizations on a paid plan with physical backups enabled.
145+
146+
</Admonition>
147+
148+
To begin, switch to the source project—the project containing the data you wish to restore—and go to the [database backups](https://supabase.com/dashboard/project/_/database/backups/restore-to-new-project) page. Select the **Restore to a New Project** tab.
149+
150+
A list of available backups is displayed. Select the backup you want to use and click the "Restore" button. For projects with PITR enabled, use the date and time selector to specify the exact point in time from which you wish to restore data.
151+
152+
Once you’ve made your choice, Supabase takes care of the rest. A new project is automatically created, replicating key configurations from the original, including the compute instance size, disk attributes, SSL enforcement settings, and network restrictions. The data will remain in the same region as the source project to ensure compliance with data residency requirements. The entire process is fully automated.
153+
154+
<Admonition type="note">
155+
156+
The time required to complete the restoration can vary depending largely on the volume of data involved. If you have a large amount of data you can opt for higher performing disk attributes on the source project _before_ starting a clone operation. These disk attributes will be replicated to the new project. This incurs additional costs which will be displayed before starting.
157+
158+
</Admonition>
159+
160+
There are a few important restrictions to be aware of with the "Restore to a New Project" process:
161+
162+
- Projects that are created through the restoration process cannot themselves be used as a source for further clones at this time.
163+
- The feature is only accessible to paid plan users with physical backups enabled, ensuring that the necessary resources and infrastructure are available for the restore process.
164+
165+
Before starting the restoration, you’ll be presented with an overview of the costs associated with creating the new project. The new project will incur additional monthly expenses based on the mirrored resources from the source project. It’s important to review these costs carefully before proceeding.
166+
167+
Once the restoration is complete, the new project will be available in your dashboard and will include all data, tables, schemas, and selected settings from the chosen backup source. It is recommended to thoroughly review the new project and perform any necessary tests to ensure everything has been restored as expected.
168+
169+
New projects are completely independent of their source, and as such can be modified and used as desired.
170+
171+
Restoring to a new project is an excellent way to manage environments more effectively. You can use this feature to create staging environments for testing, experiment with changes without risk to production data, or swiftly recover from unexpected data loss scenarios.
172+
138173
## Troubleshooting
139174

140175
### Logical backups
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
title: 'Restore to a New Project'
3+
description: Effortlessly Clone Data into a New Supabase Project
4+
author: crispy1975
5+
image: launch-week-13/restore-to-a-new-project/og.jpg
6+
thumb: launch-week-13/restore-to-a-new-project/thumb.jpg
7+
categories:
8+
- developers
9+
- postgres
10+
tags:
11+
- cloning
12+
- postgres
13+
date: '2024-12-06T00:00:01'
14+
toc_depth: 3
15+
launchweek: '13'
16+
---
17+
18+
Today we’re adding [Restore to a New Project](https://supabase.com/docs/guides/platform/backups#restore-to-a-new-project).
19+
20+
You can use this new tool to copy data easily from an existing Supabase project to a new one. **Restore to a New Project** integrates seamlessly with daily physical backups and Point-in-Time Recovery (PITR) to provide flexible restoration options.
21+
22+
<Admonition>
23+
24+
Restore to a New Project requires physical backups to be enabled. It is available to all customers on a paid plan.
25+
26+
</Admonition>
27+
28+
## How it Works
29+
30+
When physical backups are enabled, Supabase triggers daily backups of project data. You can use this backup to restore to a new Supabase project. The new project should match the original project attributes:
31+
32+
- Size of compute instance.
33+
- Disk settings; volume type, size, IOPS, and throughput.
34+
- SSL enforcement configuration.
35+
- Network restrictions.
36+
- Cloud region.
37+
38+
After launching your restored project, the rest of the process is automated. The length of time for a new project to provision will depend on the size of the source dataset.
39+
40+
The new project will be available in the Supabase Dashboard as soon as the copy process has completed. This project will behave as any other Supabase project and is completely independent of the source.
41+
42+
### Point-in-Time Recovery
43+
44+
In addition to daily backups it is possible to restore from a project with PITR enabled. This allows for very fine granularity when selecting the desired point to restore from. The process is very similar as with daily backup with the exception of being asked to select a specific time.
45+
46+
## Unlimited Cloning from a Source Project
47+
48+
To ensure maximum flexibility a source project can be _copied_ as many times as required, making the tool perfect for testing, development environments etc. However, please note that cloning from an already cloned project is not currently supported (this is in the works).
49+
50+
<Admonition>
51+
52+
New projects created with this process, as with any new Supabase project, will incur the usual compute and disk costs. These costs are displayed ahead of time to ensure there are no surprises.
53+
54+
</Admonition>
55+
56+
## Accessing Restore to a New Project
57+
58+
The Restore to a New Project feature can be found on the Supabase dashboard under [database backups](https://supabase.com/dashboard/project/_/database/backups/restore-to-new-project).
59+
60+
<Admonition>
61+
62+
Please be aware that Restore to a New Project is currently in Private Alpha. You can reach out to [Supabase support](https://supabase.help) to get early access and report any issues.
63+
64+
</Admonition>

apps/www/lib/authors.json

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -586,8 +586,16 @@
586586
"author_id": "pcnc",
587587
"author": "Paul Cioanca",
588588
"username": "pcnc",
589-
"position": "Product",
589+
"position": "Engineering",
590590
"author_url": "https://github.com/pcnc",
591591
"author_image_url": "https://github.com/pcnc.png"
592+
},
593+
{
594+
"author_id": "crispy1975",
595+
"author": "Paul Caselton",
596+
"username": "crispy1975",
597+
"position": "Engineering",
598+
"author_url": "https://github.com/crispy1975",
599+
"author_image_url": "https://github.com/crispy1975.png"
592600
}
593601
]
49 KB
Loading
26.8 KB
Loading

0 commit comments

Comments
 (0)