OBM

Restore a backup

The manual restore path: Odoo's own database manager for .zip archives, pg_restore for db-only dumps, and what to do when a proxy rejects large uploads.

OBM CE has no restore button — by design. Backups are standard Odoo artifacts, so the restore tool is Odoo itself: nothing proprietary sits between you and your data, and the restore path keeps working on a machine that has never heard of OBM.

Restore a .zip with Odoo's database manager

The .zip is the complete artifact: the PostgreSQL database plus the filestore (attachments and assets).

  1. Download the .zip from OBM — every backup on a database's page has a download.
  2. Open the target instance's database manager at https://your-odoo/web/database/manager.
  3. Click Restore Database, upload the zip, enter that instance's master password, and pick a name for the restored database.
  4. Odoo asks whether the database was moved or copied — choose copied unless you are replacing the original: it gives the restore a fresh database UUID so the two don't collide.

Large restores take a while, and the page gives little feedback while PostgreSQL does the work — be patient before assuming failure.

Large databases: the HTTP 413 problem

Uploading a multi-gigabyte zip through a reverse proxy or Cloudflare often hits an upload-size limit and dies with HTTP 413 (Cloudflare's free tier caps uploads at 100 MB). Two ways out:

Option 1 — restore on the Odoo host itself, bypassing the proxy. The database manager answers on Odoo's local port (usually 8069):

curl -F 'master_pwd=THE-MASTER-PASSWORD' \
     -F '[email protected]' \
     -F 'name=mydb_restored' \
     -F 'copy=true' \
     http://localhost:8069/web/database/restore

Option 2 — use the smaller db-only .dump and pg_restore, below.

Database-only dumps: pg_restore

The .dump artifact is a PostgreSQL custom-format dump (that's the pg_dump header OBM verifies). Restore it straight into PostgreSQL on the Odoo host:

createdb -O odoo mydb_restored
pg_restore --no-owner --role=odoo -d mydb_restored mydb-2026-07-26.dump
  • Run it as a role allowed to create databases; --no-owner --role=odoo avoids ownership mismatches when the dump was made under a different user.
  • A .dump contains no filestore — attachments and website assets aren't in it. Use the .zip when you need the complete instance.
  • If you're replacing an existing database rather than restoring under a new name, stop Odoo first: its workers and cron threads hold connections that will fight the restore.

In OBM Pro, this is one click

Pro produces the same standard artifacts but adds the conveniences: restore any backup into any of your instances straight from the dashboard, and — on Growth and up — automated restore drills that regularly restore a backup and report whether it actually came back. A backup you've never restored is a hope, not a plan. See getting started with Pro or the CE vs Pro comparison.