Update Fehler Beheben
Beschreibung:
Ab und zu hängt die Nextcloud leider beim Update.
Hier ein paar Standard Fehler die auftreten können
Stuck on update process. Step X is currently in.
(x is the Step Number)
Dazu gehen wir in das Verzeichnis Data unsere instanceid und dann in das Verzeichnis updater-oc5nyh09z8xz.
Dort gib es zwei Dateien
.step-previous-update
.step
Diese Dateien löschen.
Schon kann der Update Process von vorne beginnen
Wartungsmodus beenden
Nach einem fehlerhaften Update ist die Nextcloud immer noch im Wartungsmodus.

um diesen zu beenden, die config.php im Nectcloud Ordner /configconfig.php öffnen
und dort die Zeile
...
'maintenance' => true,
...
auf
...
'maintenance' => false,
...
stellen und speichern
MySQL wird als Datenbank verwendet, unterstützt jedoch keine 4-Byte-Zeichen. Um beispielsweise 4-Byte-Zeichen (wie Emojis) ohne Probleme mit Dateinamen oder Kommentaren verarbeiten zu können, wird empfohlen, die 4-Byte-Unterstützung in MySQL zu aktivieren.
In Plesk mit MariaDB
Dazu PHP MyAdmin öffnen und schauen ob die innodv variable auf on ist
Unter SQL Befehl können Befehler eingeben werden.
So sollte es aussehen
mysql> show variables like 'innodb_file_format';
+--------------------+-----------+
| Variable_name | Value |
+--------------------+-----------+
| innodb_file_format | Barracuda |
+--------------------+-----------+
1 row in set (0.00 sec)
Sieht das ganze aber so aus, müssen wir das anpassen, aber das machen wir im späteren step, weil wir vorher noch ne andere Variable prüfen
So sollte es aussehen
mysql> show variables like 'innodb_file_per_table';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| innodb_file_per_table | ON |
+-----------------------+-------+
1 row in set (0.00 sec)
Passt,
ansonten in der mysql conf diese Zeile hinzufügen.
nano /etc/mysql/my.cnf und dieses in die rubrik mysqld hinzufügen
...
[mysqld]
...
innodb_file_per_table=1
...
Um den ersten Fehler zu beheben fügen wir noch zwei weitere optionen zu mysqld hinzu
innodb_large_prefix=true
innodb_file_format=barracuda
innodb_file_per_table=1
Danach den mariadb server neustarten
service mariadb restart
Nun die erste abfrage nochmals durchführen. Jetzt passt es
Migrieren der Tabellen zu barracude, dazu als mysql root in der shell einloggen (ssh)
mysql -uadmin -p`cat /etc/psa/.psa.shadow`
Nun sind wir in mysql eingeloggt
elcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2175
Server version: 10.3.39-MariaDB-0+deb10u1 Debian 10
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Nun das Schema anpassen
USE INFORMATION_SCHEMA;
SELECT CONCAT("ALTER TABLE `", TABLE_SCHEMA,"`.`", TABLE_NAME, "` ROW_FORMAT=DYNAMIC;") AS MySQLCMD FROM TABLES WHERE TABLE_SCHEMA = "nextcloud";
Nun die Nextcloud DB anpassen, achte auf den DB namen
ALTER DATABASE nextcloud_5b88185e CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
Ausgabe:
MariaDB [INFORMATION_SCHEMA]> ALTER DATABASE nextcloud_5b88185e CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
Query OK, 1 row affected (0.001 sec)
Nun in den mysql cleint verlassen.
Danach den mariadb server neustarten.
Nextcloud in Maintenance mode setzen, hier ist das sudo wichtig damit es mit www rechten ausgeführt wird.
Der Benutzername ist der Plesk Benutzer des jeweiligen Domainspaces.
Kann im Fileexplorer nachgeschaut werden.
Die PHP Versionkann in Plesk unter der Subdomain nachgeschaut werden.
bevor wir Maintenace setzten aktivieren wir noch in der config
sudo -u <username> /opt/plesk/php/<php-version>/bin/php /var/www/vhosts/<domain>/<subdomain>/occ config:system:set mysql.utf8mb4 --type boolean --value="true"
sudo -u <username> /opt/plesk/php/<php-version>/bin/php /var/www/vhosts/<domain>/<subdomain>/occ maintenance:mode --on
Und die tabellen anpassen
sudo -u <username> /opt/plesk/php/<php-version>/bin/php /var/www/vhosts/<domain>/<subdomain>/occ maintenance:repair
Danach den Maintenence Mode wieder beenden
sudo -u <username> /opt/plesk/php/<php-version>/bin/php /var/www/vhosts/<domain>/<subdomain>/occ maintenance:mode --off
Nun ist der Fehler weg und Es können auch Emojies in Dateinamen Kalender Aufgaben verwednet werden.





