Fehlermeldungen in Nextcloud 17
Nach dem Upgrade auf die Nextcloud 17 hatte ich wieder eine unerwartete Fehlermeldung. Höchstwahrscheinlich kam diese sogar schon mit der vorherigen Version 16, was ich zu dieser Zeit nicht bemerkt hatte.

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. FÜR WEITERE DETAILS LESEN BITTE DIE DOKUMENTATIONSSEITE HIERZU.
Der Lösungsansatz hängt hierbei ganz stark vom System ab, auf dem die Nextcloud installiert wurde. In meinem Fall ist das ein Ubuntu 18.04 mit MariaDB 10.1.
Hierzu öffnet man die Konfiguration zu MariDB
# nano /etc/mysql/my.cnf
und erweitert diese um folgenden Eintrag.
[mysqld]
innodb_large_prefix=true
innodb_file_format=barracuda
innodb_file_per_table=1
Der MariDB-Service muss neu gestartet werden.
# service mariadb restart
Nun kann die Datenbank für zukünftige Einträge vorbereitet werden.
# sudo mysql -u root -p
> ALTER DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
> quit
Jetzt wechselt man in das Hauptverzeichnis der Nextcloud.
# cd /var/www/html/nextcloud
Die Konfiguration wird auf mysql.utf8mb4 geändert.
# sudo -u www-data php occ config:system:set mysql.utf8mb4 --type boolean --value="true"
Alle existierenden Tabellen werden nun auf die 4-Byte-Unterstützung abgeglichen.
# sudo -u www-data php occ maintenance:repair
Unsere Cloud dankt die Änderungen am System mit „Alle Überprüfungen bestanden“.
Diese Anleitung ist übrigens auch für das aktuelle Raspian Stretch 1:1 übertragbar.
Vergesst bitte vorher nicht ein Backup des Systems anzulegen!