Appearance
Moving your store to the newest setup
Each Magento version runs on specific underlying software — PHP, the database and search. When you create a store, it gets the setup of the Magento version you chose, and an in-place upgrade keeps that setup. So a store created a while ago keeps running on the setup it was created with, even after you upgrade Magento.
Sometimes a Magento version runs on both an older setup and a newer one. Magento 2.4.9 is an example: it runs on PHP 8.4 with the older database version, and on PHP 8.5 with the newest database version. That gives you a self-service way to move an existing store onto the newest setup, using only features you already have:
- Upgrade your store in place to the version that runs on both setups.
- Export your store.
- Create a new store on that version — new stores get the newest setup.
- Import your export into the new store.
- Move your domain to the new store, then close the old one.
Your current store keeps running until you switch, and every step can be undone.
1. Upgrade in place
On your store's Maintenance tab, use Update Magento. Updates come one step at a time: if a security update is waiting for your current release, it's offered first, and the new release after it. For example, a store on 2.4.8-p4 takes:
- 2.4.8-p4 → 2.4.8-p5 — a security update; and then
- 2.4.8-p5 → 2.4.9 — a new release, which asks you to tick an acknowledgement.
Each runs in your maintenance window, after an automatic backup. See Upgrading your Magento store for what to check before and after. Check your store works on the new version before you go on — this is where custom extensions and theme work show whether they need updates.
2. Export your store
On the Settings tab, export the database, the code and the images. The database copy carries your encryption key, so the new store can read your saved settings (payment credentials and similar). See Exporting and importing your store data.
On a Mac, upload the files later exactly as they downloaded — see the note in that guide.
3. Create a new store on the same version
Create a new store and choose the same Magento version your store now runs (2.4.9 in the example). A new store gets the newest setup for that version. It comes with its own temporary address, so you can test it without touching your live store.
4. Import into the new store
On the new store's Settings tab, under Import data, use Code + database together — the safer way: pick your code and database files and import them in one go. Then import your images.
- The code is checked first — that it's a Magento version the new store supports and that it runs on the new store's PHP (every package your code uses must allow it). If a check fails — for example a custom extension that doesn't support the newer PHP yet — the import stops and nothing is changed; the message names what failed, so you can update that extension on your current store and export again.
- If a step fails part-way, the new store stays in maintenance mode — restore the backup taken just before the import from its Backups tab, fix what the message names, and try again.
The new store then waits in maintenance mode. On its Maintenance tab, use Change who can see it… to let yourself in, then test it on its temporary address: browse, search, add to cart, check out, log in to the admin. Bring it online when it checks out. Scheduled tasks (cron) stay off after an import until you turn them back on from the Maintenance tab — turn them on once you've checked the store.
5. Switch over
- Freeze your live store shortly before switching — put it into maintenance mode from its Maintenance tab — so no new orders arrive that the copy won't have.
- Export the database again and import it into the new store, if orders or changes came in since your first export (the code and images from before are fine if nothing changed there).
- Move your domain: remove it from the old store and add it to the new one — see Putting your store on your own domain.
- When the new store is serving on your domain, close the old store.
You pay for both stores while both exist, so plan the switch for soon after your tests pass.
Good to know
- Why not just upgrade in place? An in-place upgrade never changes your store's setup — that is what makes it safe to run in your maintenance window. Moving to a newer setup means new underlying software, so it's done as a move to a new store, which you can test before switching and keep your current store running meanwhile.
- Your old store is your fallback. Until you close it, you can switch your domain back.
- Only when a version runs on both setups. If the version you want isn't offered for your current store's setup, it can't be reached by upgrading in place — contact support to plan it.