# Upgrade from V21 to V32

**URL:** <https://help.nextcloud.com/t/upgrade-from-v21-to-v32/237313>\
**Category:** ℹ️ Support\
**Tags:** update\_problems\
**Created:** [December 13, 2025, 2:37pm UTC](https://help.nextcloud.com/t/upgrade-from-v21-to-v32/237313 "2025-12-13T14:37:14Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![ernolf](https://help.nextcloud.com/user_avatar/help.nextcloud.com/ernolf/32/77874_2.png) [@ernolf](https://help.nextcloud.com/u/ernolf)\
**Post date:** [December 13, 2025, 2:45pm UTC](https://help.nextcloud.com/t/upgrade-from-v21-to-v32/237313/2 "2025-12-13T14:45:25Z")

</div>

> [@fdr](#):
>
> I cannot upgrade the V2 instance step by step (ie. V21→V22, then V22–\>V3, etc.).

But you will have to go that way. There is no alternative, among other things, because the database migration steps must be processed successively.

Look [→ **here** ←](https://docs.nextcloud.com/server/latest/admin_manual/maintenance/upgrade.html) for explanation. Quote:

> Nextcloud must be upgraded step by step:
> 
> - Before you can upgrade to the next major release, you need to upgrade to the latest point release of your current major version.
> - Then run the upgrade again to upgrade to the next major release’s latest point release.
> - **You cannot skip major releases.** Please re-run the upgrade until you have reached the highest available (or applicable) release.
> - Example: 18.0.5 → 18.0.11 → 19.0.5 → 20.0.2
> 
> **Wait for background migrations to finish after major upgrades**. After upgrading to a new major version, some migrations are scheduled to run as a background job. If you plan to upgrade directly to another major version (e.g. 24 → 25 → 26) you need to make sure these migrations were executed before starting the next upgrade. To do so you should run the `cron.php` file 2-3 times, for example:
> 
> ```auto
> $ sudo -E -u www-data php -f /var/www/nextcloud/cron.php
> 
> ```

* * *

> [@fdr](#):
>
> The source instance is old (debian 9) and the target instance would be on a new machine (recent OS, recent PHP, recent MariagDb, etc.)

You will need an “intermediate” debian (at least 11, bullseye, since 9, stretch, is obsolete since three years and 5 months already!)  
In that intermediate debian, you can switch the php versions successively as supported by the different nextcloud versions.

> **[Releases and PHP versions](https://github.com/nextcloud/server/wiki/Releases-and-PHP-versions)**
>
> ☁️ Nextcloud server, a safe home for all your data - nextcloud/server

You can do the php version switches with the [→ **php-updater** ← script](https://help.nextcloud.com/t/php-updater-a-script-to-upgrade-php-in-a-safe-way/180215).

But you can start directly with debian 13 (trixie), the current stable and install php8.0 (a piece of cake with the php-updater script). Then you can simply do the complete migrations steps on the future actual system.

* * *

h.t.h.

* * *

ernolf

---

_[View the full topic](https://help.nextcloud.com/t/upgrade-from-v21-to-v32/237313)._
