Import an Existing Odoo Backup
If you are migrating from another Odoo host or from a local instance, you can upload an existing backup and restore it directly into one of your branches. For the complete migration path, from inventory to domain cut-over, see Migrate from Another Odoo Host.
Importing a backup requires the Admin role on the project.
Supported format
The import accepts a .zip archive in the standard Odoo backup format, the same file you get from Odoo's built-in Database Manager → Backup (/web/database/manager), or from another Skysize deployment's Download button.
An Odoo backup zip contains:
dump.sql: the PostgreSQL database dump- a
filestore/folder, uploaded files and attachments manifest.json: version and module metadata
Because this is Odoo's native format, backups exported from a standard Odoo instance can be imported without any conversion.
The import accepts a single .zip archive. Other archive formats (for example .tar.gz, or a bare .sql file) are not supported by the import flow, re-export from Odoo as a zip first.
:::note Dumps made without --no-owner --no-privileges
The restore runs as a single database role that does not know the roles from your old server. Ownership and privilege statements in the dump (ALTER ... OWNER TO, GRANT, REVOKE, ALTER DEFAULT PRIVILEGES) are removed automatically during the import, so a backup made by Odoo's Database Manager, by another host, or by a plain pg_dump imports as-is, even when extra PostgreSQL users such as a BI reader had access to the old database. If you build the zip yourself, this produces a dump without them in the first place:
pg_dump --no-owner --no-privileges --format=p your_database > dump.sql
:::
Import the backup
- Open your project and go to the Backups tab.
- Click Import Backup.
- In the Import Backup modal, select the Target branch to restore into.
- Choose your
.zipbackup file. - Click Upload & Restore.
Skysize uploads the file, registers it as a backup, and immediately queues a restore on the target branch. You can follow the progress on the deployment (click View Logs). When it finishes, the branch restarts on the restored database.
Importing replaces the entire database of the target branch. If you want to keep its current data, create a manual backup of that branch first.
:::note Upload size limit The import uploads through your browser and is limited to 2 GB per file on managed hosting. The file streams straight through to the server that runs your deployment; it is never stored on the platform. For larger databases, exclude the filestore from the export to reduce the size, or contact support for help with large migrations. Imports into BYOS projects have no platform-imposed size limit, since the upload lands on your own server. :::
Things to check before importing
- Odoo version: the upload reads the version from the backup's
manifest.jsonbefore anything is restored. Backups from an Odoo version the platform does not offer are refused with a clear error, and when the version differs from the branch's configured version, the branch is aligned to the backup so the restored database runs on the Odoo it was made with. Backups without a readable manifest are accepted as-is; for those, make sure the branch's version matches the dump yourself. - Edition: if the backup comes from an Odoo Enterprise database, make sure the target branch is also set to Enterprise so the enterprise modules are available.
- Custom modules: if the database uses custom modules, make sure those modules are present in the branch's repository before you restore, otherwise Odoo may report missing modules on start-up.