MySQL 8 sicher auf Ubuntu 16/18 für Nextcloud 21 installieren

Nextcloud 21 benötigt MySQL 8.0 oder neuer, doch Ubuntu 16.04/18.04 liefern MySQL 5.7 in ihren Standard-APT-Quellen. Um MySQL 8 sicher auf diesen Betriebssystemen zu installieren, sollten Sie:

  1. Bestehende Datenbanken sichern
  2. Das offizielle MySQL APT-Repository hinzufügen
  3. MySQL 8 installieren und absichern
  4. Eine Nextcloud‑Datenbank konfigurieren
  5. MySQL‑Einstellungen für optimale Performance anpassen

Diese Anleitung zeigt Schritt für Schritt den sicheren Installationsprozess – inklusive Backup-, Prüf- und Troubleshooting‑Beispielen.


1. Vorbereitungen und Backup

Wenn auf dem System bereits MySQL 5.7 läuft, sichern Sie unbedingt alle Datenbanken, bevor Sie Repository‑Änderungen vornehmen:

sudo mysqldump -u root -p --all-databases > /root/all_databases_5.7.sql

Prüfen Sie die Kompatibilitätshinweise zum Upgrade auf MySQL 8 in einer Staging‑Umgebung, um Ausfallzeiten und Konflikte zu vermeiden.


2. Offizielles MySQL APT‑Repository hinzufügen

Installieren Sie zunächst die Voraussetzungen und laden Sie das MySQL‑Repository‑Paket von Oracle:

sudo apt update && sudo apt install -y wget lsb-release gnupg
wget https://dev.mysql.com/get/mysql-apt-config_0.8.17-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.17-1_all.deb

Im Konfigurationsdialog wählen Sie “MySQL Server & Cluster → mysql‑8.0” und “Use Strong Password Encryption”.
Aktualisieren Sie anschließend die Paketlisten:

sudo apt update

3. MySQL 8 installieren und absichern

Installieren und aktivieren Sie den MySQL‑Server:

sudo apt install -y mysql-server
sudo systemctl enable --now mysql

Überprüfen Sie die installierte Version und den Dienststatus:

mysql --version
sudo systemctl status mysql

Führen Sie nun den Sicherheitsassistenten aus:

sudo mysql_secure_installation

Legen Sie ein starkes Root‑Passwort fest, entfernen Sie anonyme Benutzer und deaktivieren Sie den Remote‑Root‑Login.

Um Protokolle zu prüfen:

sudo journalctl -u mysql --no-pager | tail -n 50

4. Nextcloud‑Datenbank und Benutzer anlegen

Erstellen Sie eine dedizierte Datenbank mit UTF‑8‑Unterstützung (für Emoji und Sonderzeichen) und einem eigenen Benutzerkonto:

sudo mysql -u root -p
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'ncuser'@'localhost' IDENTIFIED BY 'yourStrongPassword';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'ncuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Hinweis: Nextcloud nutzt die InnoDB‑Engine für Transaktionen und utf8mb4 für vollständige Unicode‑Kompatibilität.


5. MySQL‑Konfiguration für Nextcloud optimieren

Fügen Sie eine eigene Konfigurationsdatei an, um wichtige Performance‑Parameter zu setzen:

# /etc/mysql/mysql.conf.d/99-nextcloud.cnf
[mysqld]
default-storage-engine = InnoDB
innodb_file_per_table = 1
max_allowed_packet = 64M
innodb_buffer_pool_size = 1G

Passen Sie innodb_buffer_pool_size auf etwa 50 % des verfügbaren RAMs Ihres Datenbank‑Servers an und starten Sie den Dienst neu:

sudo systemctl restart mysql

6. Verbindung für Nextcloud testen

Melden Sie sich mit dem Nextcloud‑Benutzer an und prüfen Sie die Datenbankverbindung:

mysql -u ncuser -p nextcloud
SHOW TABLES;
EXIT;

Wenn die Verbindung funktioniert, können Sie in der Nextcloud‑Installationsmaske folgende Daten eintragen:

  • Datenbankname: nextcloud
  • Datenbankbenutzer: ncuser
  • Datenbankpasswort: yourStrongPassword
  • Host: localhost

7. Troubleshooting und häufige Fehler

Problem: Can't connect to MySQL server
→ Prüfen Sie, ob der Dienst läuft:

sudo systemctl status mysql

Problem: „Access denied for user root@localhost“
→ Passwort im Sicherungsprozess falsch gesetzt? Starten Sie MySQL im Safe‑Mode und setzen Sie das Root‑Passwort neu.

Problem: Nextcloud meldet „unsupported collation“
→ Überprüfen Sie, ob utf8mb4_general_ci korrekt gesetzt ist und Tabellen in diesem Zeichensatz erstellt wurden.


8. Weiterführende Informationen


9. Unterstützung durch Admin Intelligence

Wenn Sie Unterstützung bei Migrationen, Backups oder Performance‑Optimierung für produktive Nextcloud‑Installationen benötigen, kontaktieren Sie uns bitte direkt.
Geben Sie dabei Ihre Ubuntu‑Version, die aktuelle MySQL‑Version und die geschätzte Benutzeranzahl an – wir erstellen gerne einen individuellen Migrations‑ oder Tuning‑Plan.

Weitere Beiträge zu Nextcloud finden Sie in unserer Nextcloud‑Kategorie im Blog.