Upgrade von 12.0.5 auf 16.0.1

Hallo liebe Nextcloud-Community,

ich betreibe seit einigen Jahren einen Nextcloud-Server (früher war der sogar mal eine Owncluod…) nur leider hat bis heute das Upgrade ausschließlich manuell funktioniert, weswegen ich immer hinterherhinke. Nun zu meinem Problem:

Ich habe eine nextcloud, die auf 12.0.5 stabil läuft. Basis ist ein CentOS 7 mit Apache und MariaDB. Ich würde nun gerne ein Upgrade auf 16.0.1 machen. Mussi ich jetzt wirklich erst manuell die 13, dann die 14, dann die 15 und dann erst die 16 einspielen? Gibt es da Erfahrungswerte? Offiziell heißt es ja immer, dass Major-Upgrade-Releases auszulassen nicht unterstütz wird…

Ich habe jetzt vom /data Verzeichnis und von der Datenbank eine Kopie… Habt Ihr irgendwelche Tipps? Kann das klappen? Ich habe glesen, in der 13.0 wurde einiges erneuert… kann die 16.0 die Datenbank migrieren?

Ich wäre äußerst dankbar, wenn Ihr mir mit Eueren Erfahrungswerten und Eurer Expertise ein bisschen helfen könntet. Da mein /data Verzeichnis rund 200GB hat, wäre ein kompletter Upgrade-Pfad über alle Versionen sicher 1 Woche Arbeit, die ich mir gerne sparen würde.

Vielen Dank für Eure Hilfe im Voraus!

CU
Abraxas2009

Ich würde mir den Stress nicht antun sondern einen Neuanfang machen. Also neu installieren und nicht migrieren.

Liegt das Datenverzeichnis außerhalb des Nextcloud-Verzeichnisses?
Beim manuellen Upgrade wird dann das Datenverzeichnis überhaupt nicht angerührt.
Für meine Nextcloud-Instanzen habe ich ein Skript geschrieben, das ein manuelles Upgrade durchführt. Vielleicht hilft dir das. Vor dem Upgrade erstellt das Skript automatisch ein Backup - das Datenverzeichnis kannst du mit der Option -ea vom Backup ausschließen, da es wie gesagt eh nicht angerührt wird (und du ja schon eine Sicherung davon erstellt hast). Falls etwas schiefgehen sollte, kannst du das Backup mithilfe des Skriptes wieder zurück spielen.
Du kannst es dir ja mal anschauen (bei Fragen zu den Optionen kann ich gerne helfen):

Hallo Bernie_O und Hallo Sanook!

Vielen Dank für Eure Antworten. Das Script sieht echt cool aus, das werde ich mal ausprobieren. Nur eine Frage an Euch Beide:

Ich glaube, was ich vorhabe ist das, was man eine Neuinstallatin nenen könnte. Ich habe das /data -Verzeichnis in einen neuen Ordner kopiet und dort lieg nun auch die 16.0.1 - nur was mache ich mit der Datenbank? (/config und /templates kopiere ich auch noch…) Kann ich die Datenbank der 12er einfach in die neue Installation der 16er Version einbidnen? Stimmen da die Tables usw. noch?

@Sanook: Wie würdest Du das machen mit der Neuinstallation und wie würdest Du die Daten (sind hauptsächlich Files, ein Kalender und ein Adressbuch) in die neue Installation reinkriegen?

@Bernie_O: Macht Dein Script genau das? Ich schaue mir das Script mal genauer an und versuche zu verstehen, was es tut. Ich glaube, das ist wirklich die beste Upgrade-Möglichkeit für mich. Und das sollte auch von 12 auf 16 funktionieren?

Übrigens: Das /data Verzeichnis liegt nicht außerhalb der nextcloud. Sollte ich das so machen? Ist das für das Update-Script notwendig?

Vielen Dank Euch und viele Grüße
Abraxas2009

Kalender und Kontakte exportieren und in die neue Instanz importieren. Dateien erneut synchronisieren.

Ist sicherlich der geringste Aufwand.

Mein Skript würde deine Nextcloud Instanz bei jedem Aufruf auf die nächste Major-Version hiefen. Da das Datenverzeichnis allerdings im Nextcloud-Verzeichnis liegt, würde es jedesmal mitgesichert. Da brauchst du viel Platz fürs Backup und es dauert entsprechend lange. Wenn du mein Skript benutzen möchtest, würde ich dir empfehlen zuerst das Datenverzeichnis aus dem Nextcloud-Verzeichnis rauszuschieben: HowTo: Change / Move data directory after installation

Daher hat Sanook vermutlich Recht, dass eine Neuinstallation den geringsten Aufwand bedeutet. Außer du hast viele Shares (Dateien/Kalender/Adressbücher geteilt).

Zum Exportieren von Kalendern und Adressbüchern habe ich auch ein Skript geschrieben: calcardbackup
Du kannst aber natürlich auch über das Webfrontend die Kalender/Adressbücher sichern.