Appearance
Exporting and importing your store data
Overview of downloading a copy of your store's data and uploading data to replace it. See encryption-key-and-configuration.md for how your encryption key is handled throughout.
You can take a full copy of your store's data at any time, and — when moving a store in or restoring your own copy — upload data to replace what's currently in your store. Data moves as three independent pieces, so you can take or replace exactly what you need.
The three pieces
| Piece | What it is |
|---|---|
| Database | Your entire store database as a re-importable SQL file — customers, orders, catalog, settings — plus your encryption key. |
| Application code | Your Magento codebase and installed extensions, ready to run. Your configuration file is included but sanitized (passwords removed). |
| Media | Your product and content images. |
They're separate because they differ in size, sensitivity, and what they affect. You rarely need all three at once — most tasks need only the database.
Exporting (taking a copy)
Prepare each copy from the Export section on your store's Settings tab. Each copy you prepare is listed with its size and time, and can be downloaded until it expires after a day — prepare a fresh one whenever you need it. Clicking Download creates a short-lived link, so start the download straight away.
- Code and media copies are prepared in the background with no impact on your live store.
- A database copy is taken with your store briefly in maintenance mode so the copy is fully consistent — visitors see a maintenance page and no new orders are accepted for the short time the copy runs, then your store comes straight back. We don't recommend exporting your live database unless you want a final copy because you're moving away. If you just want a copy without taking your store offline, take it from a sandbox instead.
- Your database copy contains your encryption key — the value that keeps sensitive settings like your payment credentials readable. It's what makes the copy fully usable elsewhere, and it's also why you should treat the file as sensitive. See encryption-key-and-configuration.md.
Importing (replacing your data)
Importing overwrites the matching part of your store with your upload, from the Import section on the Settings tab. You choose a file, then confirm with Upload & import (overwrite). It is deliberately deliberate:
- It is destructive — so we back up first. Before anything is overwritten, we take a full backup of your store. Imports you run within an hour share one backup — the one taken before the first of them — so restoring it undoes all of those imports. It appears on your Backups tab as a full backup from just before the import, and if it can't be made the import is cancelled rather than risk your data. If the result isn't what you expected, restore that backup — there's no other "undo".
- Your store enters maintenance mode while an import runs — and after a database or code import it stays there until you bring it online, so no one shops on data you haven't checked yet. On the Maintenance tab, use Change who can see it… to let yourself in, check the store, then Bring store back online. (A media import brings the store back online by itself.)
- Scheduled tasks (cron) are switched off after a database or code import, so nothing fires before you've checked the store — turn them back on from the Maintenance tab when it's ready.
- Using the Sales Assistant? Its search index isn't part of an import — only its documents and settings are, inside the database. On a store you've just moved or copied in, the assistant has nothing to answer from until that index is rebuilt, which happens by itself within a few minutes of turning Scheduled tasks (cron) back on. If the database came from a different store, set this store's own assistant key first, so the rebuild counts against the right subscription. See the Sales Assistant guide, After moving or copying your store.
- Our email sending is switched off after a database or code import, because the imported store brings its own email settings with it. To send through us again, turn it back on from the Email tab — it's set up from scratch, so it takes a few minutes before it shows as active.
- Exports and imports don't run at the same time — while one is in progress, the other becomes available again once it finishes.
- Large stores are fine. Uploads are split into chunks and resume if interrupted, and the per-file size limit is generous — not a browser or web-server upload limit.
- Moving a whole store in? Use "Code + database together" — the safer way. You pick both files and they're imported in one go: the store goes into maintenance mode once, the code is put in place, then the database, and the store comes back only when both are in and it checks out. Nothing in between ever runs your new code against your old database (or the other way round), and the database is updated by its own code, so every extension keeps its settings — such as whether its indexes update on save or on schedule. The store then waits in maintenance mode for you to check it, as with any database or code import. If a step fails, restore the backup taken before the import from the Backups tab. Then import your media.
- Importing one piece at a time? Import the code first, then the database, then media. A database imported before the code it belongs to can lose settings of extensions the current code doesn't have yet. Moving in from a different host? See migrating-in-from-another-host.md for exactly how to prepare each piece.
- Importing code? It must be a Magento version your store supports. Each Magento version runs only on certain PHP and database versions, and a store runs the ones of the version it was created with. Before anything is changed, the code import checks that your code is a version this store supports and that it runs on this store's PHP. If it isn't, the import stops and your store is left exactly as it was: create a store with the same Magento version as your code and import into that one.
- The database is your responsibility. Make sure it's from the same Magento version as the code it will run with — we can't check that for you. If an import doesn't turn out as expected, restore the backup taken just before it from the Backups tab.
- If you only want a copy of your data without touching your live store, work from a sandbox instead.
On a Mac: our copies come as a single
.tgzfile, and macOS may automatically unpack it into a.tarthe moment it finishes downloading. That's fine — upload the.taras it is, or compress it again (.tar.zip,.tar.gz); the import finds what's inside either way. If your Mac unpacked it all the way into a folder, compress that folder and upload the result.
When to use which
- Hand your store to a developer or agency → export code (and database/media as needed).
- Migrate away → export all three; the database export is self-contained (it carries your encryption key).
- Migrate a store in, or restore your own copy → import code + database together, then media. Coming from another host? Follow migrating-in-from-another-host.md.
- Just want a working copy to experiment with → use a sandbox, not an export/import against your live store.