Dumpling

Guides / When something already went wrong

You deleted a Railway volume, or a redeploy lost your Postgres data.

On Railway a database's data lives on a volume attached to the service. Delete the service or the volume, or deploy the database image without one, and the tables are gone from the app's point of view. There is a short window in which that is still recoverable.

What happened

When a volume is deleted, Railway queues it for deletion and permanently deletes it within 48 hours. During that window the volume can still be restored; after it, deletion is permanent and the volume cannot be brought back.

Railway's own guidance on backups is direct about the limits: volume backups are for recovering from bad deploys or data mistakes, and wiping a volume deletes all of its backups. Backups protect against data mistakes, not against deleting the volume itself. In Railway's words, only off-site logical dumps survive that.

What to do right now

So it does not happen again

Keep the volume backups if your plan has them, and add the layer Railway itself recommends: a logical dump stored outside the project. Dumpling connects to the database's public TCP proxy address on a schedule, runs pg_dump or mysqldump, verifies the output, and streams it into a bucket you own. It works the same for Railway MySQL.

# restoring into a new Railway Postgres service
createdb -h <proxy host> -p <proxy port> -U postgres restored_db
pg_restore --no-owner --no-acl -h <proxy host> -p <proxy port> -U postgres -d restored_db railway.dump
Keep a copy that survives the platform

Scheduled, verified dumps into a bucket you own. One database with daily backups is free, no card.

Sources

Provider facts checked on 2026-09-18. Policies change; the pages below are the authority.

Other situations