Skip to content

Database backups you have actually restored

Make sure your data is backed up on a schedule, kept long enough, and that a restore actually works.

  • Free, no sign-up
  • 45 to 90 minutes with an agent
  • By Devvrat Hans
  • Version 1.0, updated Oct 26, 2026

1Your site and stack

Optional. The prompt adapts as you type; leave a field blank and the agent works it out.

2Copy it into your agent

database-backups.md62 lines, about 890 tokens

Paste into any coding agent: Claude Code, Cursor, Codex, Copilot, Windsurf or Cline.

# Database backups you have actually restored

A launch brings the first real users, and their data is the one thing the production site cannot recreate. Find out exactly how the database is backed up, close the gaps, and prove a restore works, so a bad migration or a mistaken delete on launch week is a bad hour, not the end.

Site: not given. Find the production URL in the project config, or ask me.

## Ground rules

1. Read before you write. Explore the parts of the codebase this job touches and tell me what is already in place.
2. Plan, then stop. Give me a numbered plan: what you will change, in which files, and why. Wait for my approval before editing anything.
3. Fix things at their source (the shared layout, the config, the generator), not with one-off patches page by page.
4. Keep the project's conventions: its framework APIs, file layout, naming and code style. Add no new dependency without asking.
5. Where something is already done well, say so and leave it alone.

## You will not

- Edit `.env` files, secrets or API keys, or print their values.
- Deploy, push, merge or publish anything.
- Delete data, or run migrations or scripts against a production database.
- Add tracking, third-party scripts or links to any site I did not ask for.
- Change copy, design or behaviour that this job does not need.
- Restore over, drop or modify the production database.
- Change backup settings in a provider's dashboard: I do that.

## Your stack

- Framework: Work out the framework, router and build output from the project files (package.json, lockfiles, framework config) before planning, and say which you found.
- Host: Work out where the site is hosted from the config files (vercel.json, netlify.toml, wrangler config, Dockerfile, fly.toml) and say which you found.

## Steps

### 1. Find what is backed up

Identify every place data lives: the main database, file or image storage, any second database or cache that holds data you cannot rebuild. For each, find what backups the provider makes (automatic snapshots, point-in-time recovery), how often, and how long they are kept. Tell me what you cannot see from the code and must check in a dashboard.

### 2. Close the gaps

Where there is no backup or the window is short, propose the fix: turning on the provider's point-in-time recovery, a scheduled export to separate storage, or longer retention. Uploaded files need their own plan (versioning or a copy to a second bucket).

### 3. Write and test a restore

Write a step-by-step restore runbook: restore to a new, separate database, check row counts and a few records, then point the app at it. Where possible, run the restore into a scratch database yourself to prove the steps work. Never restore over the production database.

### 4. Guard migrations

Make sure database migrations are reviewed and that destructive ones (dropping columns or tables) require an explicit step. Note how to take a manual backup before a risky migration.

## Done means

- [ ] Every data store is listed with its backup frequency and retention.
- [ ] The gaps have a proposed fix, and I know which dashboard settings to change.
- [ ] A restore runbook exists, and a restore into a scratch database has been tested where possible.
- [ ] Destructive migrations need an explicit step, with a manual backup first.

## Report back

When you finish, give me:

- what you changed, file by file;
- anything you skipped, and why;
- anything I must do by hand (DNS records, dashboards, accounts, deploys);
- how to check each change on the live site.

One-line version

For agents that can read a URL. It fetches this prompt with your settings applied.

Read https://abacklaunch.com/prompts/database-backups.md and follow it for this project.

3Check the result

When the changes are live, run these free checks. Add your site URL above and each one opens already running on it.

This prompt will not

  • Edit .env files, secrets or API keys, or print their values.
  • Deploy, push, merge or publish anything.
  • Delete data, or run migrations or scripts against a production database.
  • Add tracking, third-party scripts or links to any site I did not ask for.
  • Change copy, design or behaviour that this job does not need.
  • Restore over, drop or modify the production database.
  • Change backup settings in a provider's dashboard: I do that.

It reads your code first, shows you a plan, and waits for your approval before it changes anything.

What you get

  • A list of every data store with its backup schedule and retention
  • Fixes for the gaps
  • A restore runbook, tested on a scratch database

How to use this prompt

  1. 1

    Describe your stack

    Add your site, framework and host. The prompt adapts; blank fields are left for the agent to work out.

  2. 2

    Paste it into your agent

    Open your project in Claude Code, Cursor, Codex, Copilot, Windsurf or Cline, and paste the prompt or the one-line version.

  3. 3

    Approve the plan

    The agent reads your code, shows you a plan with the files it will touch, and waits. Change anything you disagree with.

  4. 4

    Check the result

    When the changes are live, run the free checks below on your site to confirm each fix.

What the agent does

A launch brings the first real users, and their data is the one thing the production site cannot recreate. Find out exactly how the database is backed up, close the gaps, and prove a restore works, so a bad migration or a mistaken delete on launch week is a bad hour, not the end.

  1. 1. Find what is backed up

    Identify every place data lives: the main database, file or image storage, any second database or cache that holds data you cannot rebuild. For each, find what backups the provider makes (automatic snapshots, point-in-time recovery), how often, and how long they are kept. Tell me what you cannot see from the code and must check in a dashboard.

  2. 2. Close the gaps

    Where there is no backup or the window is short, propose the fix: turning on the provider's point-in-time recovery, a scheduled export to separate storage, or longer retention. Uploaded files need their own plan (versioning or a copy to a second bucket).

  3. 3. Write and test a restore

    Write a step-by-step restore runbook: restore to a new, separate database, check row counts and a few records, then point the app at it. Where possible, run the restore into a scratch database yourself to prove the steps work. Never restore over the production database.

  4. 4. Guard migrations

    Make sure database migrations are reviewed and that destructive ones (dropping columns or tables) require an explicit step. Note how to take a manual backup before a risky migration.

Done means

  • Every data store is listed with its backup frequency and retention.
  • The gaps have a proposed fix, and I know which dashboard settings to change.
  • A restore runbook exists, and a restore into a scratch database has been tested where possible.
  • Destructive migrations need an explicit step, with a manual backup first.

Questions

My provider says backups are automatic. Is that enough?

Often, but check the retention (some free tiers keep a day or none), whether point-in-time recovery is on, and that you know how to restore. An untested backup is a hope, not a plan.

Why restore to a new database instead of the existing one?

Restoring over production destroys whatever happened since the backup and cannot be undone. A separate database lets you check the data first.

Do I need to back up uploaded files?

Yes. Logos, avatars and attachments usually live in object storage, which most database backups do not cover.

Does this prompt add links to Aback Launch to my site?

No. Nothing in the prompt mentions Aback Launch or asks your agent to link to us. The only exception is an optional badge step, which stays off unless you tick it. Some prompt libraries slip their own link into your codebase by default; we think that should always be your choice.

Which coding agents does it work with?

Claude Code, Cursor, Codex, GitHub Copilot, Windsurf, Cline, and any agent that can read your project and edit files. You can copy it as a plain prompt, save it as a Claude Code skill or a Cursor rule, or add it to AGENTS.md.

Is it safe to run on my real codebase?

The prompt makes the agent read first, show a plan and wait for your approval, and it forbids touching secrets, deploying and deleting data. Still review the changes and run your tests before you deploy, as with any change.

Changelog

  • v1.0First version.

Launch your startup on Aback Launch

Get a launch page that search engines and AI assistants can read, a place in the weekly launch list, and a review by a real person. Free to join.