Nextcloud – Enabling MySQL 4-byte support

Die Aktivierung des 4byte Supports in meiner MariaDB hat ein kleines Problem aufgeworfen.

Zuerst habe ich die offizielle Nextcloud-Anleitung befolgt, welche auch bis zum Repair-Befehl wunderbar funktioniert hat.
https://docs.nextcloud.com/server/16/admin_manual/configuration_database/mysql_4byte_support.html

Aber anstatt die erforderlichen Änderungen in der Datenbank vorzunehmen wurden mir die folgenden Fehler ausgegeben:

In AbstractMySQLDriver.php line 125:

An exception occurred while executing ‚ALTER TABLE `oc_addressbooks` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;‘:

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

In PDOStatement.php line 143:

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

In PDOStatement.php line 141:

SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

MariaDB - 4-byte support
MariaDB – 4-byte support

Nach ein wenig Suchen bin ich auf die folgende kurze Anleitung gestoßen, die bei mir geholfen hat:

$ sudo mysql -u root -p
MariaDB [(none)]> use nextcloud;
MariaDB [nextcloud]> set global innodb_large_prefix=on;
MariaDB [nextcloud]> set global innodb_file_format=Barracuda;
$ sudo -u www-data php occ maintenance:repair

https://help.nextcloud.com/t/solved-syntax-error-or-access-violation-1071-specified-key-was-too-long-max-key-length-is-767-bytes/34740/small>

Leider hing meine Nextcloud-Instanz nach der Anpassung im Maintenance-Mode fest:

Maintenance Mode
Maintenance Mode

Den Maintenance Mode kann man jedoch ganz einfach beenden, um Nextcloud wie gewohnt zu nutzen.

Zuerst einmal geht man in das Installationsverzeichnis von Nextcloud, z.B.

cd /var/www/html/nextcloud

dann beendet man den Maintenance Mode mit dem Befehl:

sudo -u www-data php occ maintenance:mode --off

Die vollständige Dokumentation der occ-Befehle gibt es hier:
https://docs.nextcloud.com/server/16/admin_manual/configuration_server/occ_command.html#

Nach der Umstellung der Datenbank auf 4byte-Support ist unbedingt die Datensicherung eurer Nextcloud-Instanz zu prüfen. Im offiziellen Nextcloud Manual gibt es einen entsprechenden Hinweis dazu.
https://docs.nextcloud.com/server/15/admin_manual/configuration_database/mysql_4byte_support.html

Bildquelle: raspberrypi.org

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.