Technologieführer

MySQL 5.7 auf CentOS 7 und Ubuntu 16.04 installieren und konfigurieren

6 min read Datenbanken Aktualisiert 07 Oct 2025
MySQL 5.7 auf CentOS 7 & Ubuntu 16.04
MySQL 5.7 auf CentOS 7 & Ubuntu 16.04

Einleitung

MySQL ist ein Open-Source relationales Datenbankverwaltungssystem, das von Oracle entwickelt wird. Der Quellcode steht unter der GNU General Public License; für proprietäre Einsatzzwecke gibt es kostenpflichtige Editionen mit erweiterten Funktionen. MySQL ist ein zentraler Bestandteil der klassischen LAMP- und LEMP-Stacks und wird von vielen Webanwendungen als Datenbank verwendet.

Dieses Tutorial führt Sie durch die Installation und Grundkonfiguration von MySQL 5.7 auf CentOS 7 und Ubuntu 16.04. Dabei behandeln wir:

  • Ein neues MySQL-Repository hinzufügen
  • MySQL 5.7 installieren
  • MySQL beim Systemstart aktivieren
  • Das MySQL-Root-Passwort zurücksetzen bzw. setzen
  • Einen Testbenutzer und eine Testdatenbank anlegen und prüfen

Wichtige Begriffe in einem Satz:

  • Repository: Paketquelle für Ihre Distribution.
  • systemctl: Systemd-Befehl zur Dienstverwaltung.
  • mysqld/mysql: Dienstname für MySQL auf CentOS/Ubuntu.

Voraussetzungen

  • Root- oder sudo-Rechte auf dem Server
  • Netzwerkzugang zum Internet, um Pakete aus dem MySQL-Repository herunterzuladen
  • CentOS 7 oder Ubuntu 16.04 mit aktuellem Paketindex

Fakten auf einen Blick:

  • MySQL-Version: 5.7 (stabil laut Repository)
  • Standardport: 3306
  • Paketname: mysql-community-server
  • Service-Namen: mysqld (CentOS), mysql (Ubuntu)

Wichtiger Hinweis

Bevor Sie produktive Systeme aktualisieren: Erstellen Sie ein vollständiges Backup Ihrer Datenbankdateien und Konfigurationen.

Schritt 1 - Neues Repository hinzufügen

MySQL stellt für verschiedene Linux-Distributionen Paket-Repositories bereit (RPM und DEB). Fügen Sie das entsprechende Repository hinzu, um die stabile MySQL 5.7-Version zu installieren.

Für CentOS 7 führen Sie als root oder mit sudo aus:

yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

Sie werden gefragt, ob Sie das Repository hinzufügen möchten. Tippen Sie ‘y’ und drücken Enter, um zu bestätigen.

Für Ubuntu laden Sie das DEB-Paket für die Repository-Konfiguration und installieren es mit dpkg, danach aktualisieren Sie die Paketliste:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.3-1_all.deb  
dpkg -i mysql-apt-config_0.8.3-1_all.deb  
apt-get update

Während der Installation des Repository-Pakets werden Sie nach der gewünschten MySQL-Version und zusätzlichen Tools gefragt. Die Standardeinstellung installiert MySQL 5.7; wählen Sie ‘Ok’ und drücken Enter, sofern Sie die Standardauswahl behalten wollen.

MySQL Repository-Konfiguration auf Ubuntu

Ein neues MySQL-Repository wurde dem System hinzugefügt.

Schritt 2 - MySQL 5.7 installieren

Nachdem das Repository verfügbar ist, installieren Sie das Paket mysql-community-server.

Auf CentOS:

yum -y install mysql-community-server

Auf Ubuntu:

apt-get install -y mysql-community-server

Hinweis

Auf Ubuntu werden Sie während der Installation aufgefordert, ein neues MySQL-Root-Passwort einzugeben. Verwenden Sie ein starkes Passwort und merken Sie sich dieses.

MySQL 5.7 ist nun installiert.

Schritt 3 - MySQL starten und beim Boot aktivieren

Starten Sie den Dienst und aktivieren Sie ihn so, dass er automatisch beim Systemstart ausgeführt wird.

Für CentOS verwenden Sie den Dienstnamen mysqld:

systemctl start mysqld  
systemctl enable mysqld

Für Ubuntu verwenden Sie den Dienstnamen mysql:

systemctl start mysql  
systemctl enable mysql

MySQL läuft jetzt; der Standard-Port ist 3306. Prüfen Sie offene Ports (root):

netstat -plntu

Um zu prüfen, ob der Dienst beim Booten aktiviert ist, verwenden Sie:

Für CentOS:

systemctl is-enabled mysqld

Dienststatus und Aktivierung für MySQL

Für Ubuntu:

systemctl is-enabled mysql

Dienststatus und Aktivierung für MySQL auf Ubuntu

Die Ausgabe ‘enabled’ bedeutet, dass der Dienst für den Systemstart registriert ist.

Schritt 4 - Root-Passwort konfigurieren

MySQL 5.7 ist installiert und gestartet. Unter Ubuntu wird das Root-Passwort bereits während der Installation gesetzt. Unter CentOS generiert MySQL beim ersten Start ein temporäres starkes Passwort und protokolliert dieses in der mysqld.log.

Um das temporäre Passwort zu finden (CentOS):

grep 'temporary' /var/log/mysqld.log

Verbinden Sie sich mit der MySQL-Shell und dem temporären Passwort:

mysql -u root -p  
TYPE DEFAULT PASSWORD

Ändern Sie das Root-Passwort in ein starkes, dauerhaftes Passwort. Beispiel:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'Newhakase-labs123@';  
flush privileges;

Die Änderung ist sofort wirksam.

Root-Passwort in MySQL ändern

Hinweis

Sie können denselben ALTER USER-Befehl jederzeit nutzen, um das MySQL-Root-Passwort auf CentOS oder Ubuntu zurückzusetzen.

Sicherheits-Checkliste für das Root-Konto

  • Verwenden Sie ein langes, zufälliges Passwort
  • Beschränken Sie Remote-Root-Logins (root@localhost ist Standard)
  • Löschen oder schützen Sie temporäre Logs nach der Passwort-Änderung

Schritt 5 - Test: Benutzer und Datenbank anlegen

Verbinden Sie sich mit dem MySQL-Root-Konto und legen Sie eine Testdatenbank sowie einen Testbenutzer an.

Mit Root verbinden:

mysql -u root -p  
TYPE NEW PASSWORD: Newhakase-labs123@

Datenbank erstellen:

create database hakaselabs;

Benutzer anlegen (Beispielnamen und -passwörter anpassen):

create user hakase@localhost identified by 'Hakase123@';

Rechte gewähren und Rechte neu laden:

grant all privileges on hakaselabs.* to hakase@localhost identified by 'Hakase123@';  
flush privileges;

Neuen Benutzer und Datenbank in MySQL anlegen

Mit dem neuen Benutzer testen:

mysql -u hakase -p  
TYPE THE PASSWORD: Hakase123@

Datenbankliste anzeigen:

show databases;

Sie sehen die Datenbank ‘hakaselabs’ in der Liste.

Mit neuem Benutzer verbinden und Datenbank anzeigen

Herzlichen Glückwunsch: MySQL 5.7 wurde installiert, läuft automatisch beim Boot und ein Testbenutzer inklusive Testdatenbank wurde erfolgreich angelegt.

Sicherheits-Härtung und Best Practices

  • Entfernen Sie Testdatenbanken und anonyme Konten: mysql_secure_installation hilft bei mehreren Schritten.
  • Bind-Address prüfen: In /etc/mysql/my.cnf oder /etc/my.cnf prüfen, ob bind-address auf 127.0.0.1 gesetzt ist, wenn kein Remote-Zugriff erwünscht ist.
  • Verschlüsselte Verbindungen: Nutzen Sie TLS, wenn Verbindungen über Netzwerk erfolgen.
  • Rechte minimal vergeben: Geben Sie Benutzern nur die Rechte, die sie benötigen.
  • Monitoring: Logs, SLI/SLO und Backups etablieren.

Kurzbefehle (Beispiele):

  • Konfiguration prüfen: sudo cat /etc/my.cnf oder /etc/mysql/my.cnf
  • MySQL-Logs ansehen: sudo journalctl -u mysqld oder /var/log/mysqld.log

Fehlerbehebung - Häufige Probleme und Lösungen

  • Paket nicht gefunden: Prüfen Sie, ob das Repository korrekt installiert ist und apt/yum aktualisiert wurde.
  • Port 3306 belegt: Verwenden Sie netstat oder ss, um Konflikte zu identifizieren.
  • Authentifizierungsfehler: Achten Sie auf das richtige Passwort und den Host-Teil (z. B. ‘user’@’localhost’).
  • Dienst startet nicht: journalctl -xe oder /var/log/mysql.err prüfen.

Wann diese Anleitung nicht passt

  • Für Container- oder Cloud-Images mit vorkonfigurierten MySQL-Installationen sind andere Schritte notwendig.
  • Für MySQL 8.0 oder MariaDB gelten andere Pakete und ggf. andere Default-Authentifizierungsmechanismen.

Alternative Ansätze

  • MariaDB als Drop-in-Ersatz für viele MySQL-Anwendungen (Kompatibilitätsprüfung empfohlen).
  • Installation aus offiziellen MySQL-Tarballs für benutzerdefinierte Pfade oder spezielle Systemanforderungen.

Rollenbasierte Checkliste

Systemadministrator

  • Repository hinzufügen und Paketinstallation durchführen
  • Dienst starten, aktivieren und Logs prüfen
  • Root-Passwort sicher setzen
  • Firewall prüfen und ggf. Port 3306 absichern

Anwendungsentwickler

  • Testdatenbank und -benutzer anlegen
  • Verbindung mit Anwendungskonfiguration prüfen
  • Rechte so reduzieren, dass die App nur benötigte Aktionen durchführen kann

Abnahmekriterien

  • MySQL-Dienst läuft und ist beim Boot aktiviert
  • Root-Login mit dem gesetzten Passwort funktioniert
  • Testbenutzer kann sich anmelden und auf die Testdatenbank zugreifen
  • Port 3306 ist erreichbar (oder korrekt durch Firewall eingeschränkt)

Mini-Methodik für produktive Inbetriebnahme

  1. Backup bestehender Daten
  2. Repository hinzufügen auf Testsystem
  3. Paketinstallation und Basistests
  4. Sicherheits-Härtung (Passwörter, bind-address, TLS)
  5. Migration der Daten und performante Tests
  6. Rollout auf Produktionssysteme

FAQ

Brauche ich MySQL 5.7 oder kann ich MySQL 8.0 installieren?

MySQL 8.0 bietet neue Features, jedoch können Kompatibilitätsunterschiede bestehen. Verwenden Sie 5.7, wenn Ihre Anwendung darauf abgestimmt ist.

Wie setze ich das Root-Passwort zurück, wenn ich es verloren habe?

Starten Sie den Server im Safe-Mode (skip-grant-tables), verbinden Sie sich ohne Passwort und ändern Sie das Root-Passwort mit ALTER USER, danach Normalbetrieb wiederherstellen.

Kann ich MySQL remote zugänglich machen?

Ja, ändern Sie bind-address und konfigurieren Sie Firewall-Regeln; achten Sie auf TLS und eingeschränkte Benutzerrechte.

Wo finde ich offizielle Dokumentation?

Die offizielle MySQL-Dokumentation für 5.7 ist unter https://dev.mysql.com/doc/refman/5.7/en/linux-installation.html verfügbar.

Zusammenfassung

  • MySQL 5.7 lässt sich auf CentOS 7 und Ubuntu 16.04 über das offizielle Repository installieren.
  • Wichtige Schritte: Repository hinzufügen, Paket installieren, Dienst starten/aktivieren, Root-Passwort setzen, Testbenutzer und -datenbank anlegen.
  • Ergänzen Sie die Installation durch Sicherheits-Härtung, Monitoring und regelmäßige Backups.

Schlussbemerkung

Behalten Sie Ihre MySQL-Instanz im Auge: Logs, Backups und Updates sind entscheidend für einen stabilen Betrieb.

Referenz

https://dev.mysql.com/doc/refman/5.7/en/linux-installation.html

Autor
Redaktion

Ähnliche Materialien

Programme beim Windows-Start automatisch starten
Windows Support

Programme beim Windows-Start automatisch starten

Vorinstallierte Apps entfernen auf Android & iOS
Mobile

Vorinstallierte Apps entfernen auf Android & iOS

Dev Error 6068 lösen – Warzone Fixes für Windows
Gaming

Dev Error 6068 lösen – Warzone Fixes für Windows

PowerShell‑Version in Windows prüfen
Windows

PowerShell‑Version in Windows prüfen

Erweiterungen manuell in Edge installieren
Browser

Erweiterungen manuell in Edge installieren

OsTicket auf Ubuntu 16.04 mit Nginx & PHP‑FPM
Anleitung

OsTicket auf Ubuntu 16.04 mit Nginx & PHP‑FPM