MySQL auf Ubuntu 20.04 installieren und konfigurieren

MySQL ist eine weit verbreitete Open-Source-Datenbank, die Daten effizient speichert und verwaltet. Die Installation auf Ubuntu 20.04 schafft eine zuverlässige Grundlage für den Aufbau und die Absicherung datenbankgestützter Anwendungen.

Diese Anleitung zeigt, wie Sie MySQL auf Ubuntu 20.04 installieren und einrichten. Für eine vergleichbare Installation auf einem anderen System finden Sie auch unsere Anleitung zur Installation von MySQL auf Debian 12.

Voraussetzungen

Stellen Sie vor Beginn sicher, dass folgende Bedingungen erfüllt sind:

  • Ein Ubuntu 20.04 Server.
  • SSH-Zugriff auf den Server als Nicht-Root-Benutzer mit sudo-Rechten.
  • Der Server ist auf den neuesten Paketstand aktualisiert.

MySQL auf Ubuntu 20.04 installieren

MySQL ist in den Standard-APT-Repositories von Ubuntu 20.04 enthalten. Aktualisieren Sie den Paketindex und installieren Sie anschließend die aktuelle MySQL-Server-Version über den APT-Paketmanager.

Paketindex des Servers aktualisieren

MySQL-Server-Paket installieren

$ sudo apt install mysql-server -y

Installierte MySQL-Version überprüfen

Beispielausgabe:

mysql Ver 8.0.41-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

MySQL-Systemdienst verwalten

MySQL läuft auf Ubuntu 20.04 als Systemdienst mysql. Aktivieren Sie den automatischen Start beim Booten und prüfen Sie den Status, um die Datenbankprozesse zu verwalten.

MySQL beim Systemstart aktivieren

$ sudo systemctl enable mysql

Beispielausgabe:

Synchronizing state of mysql.service with SysV service script with /usr/lib/systemd/systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable mysql

MySQL-Server starten

$ sudo systemctl start mysql

Status des MySQL-Servers prüfen

$ sudo systemctl status mysql

Beispielausgabe:

● mysql.service – MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2025-04-06 10:58:51 UTC; 5min ago
Main PID: 17189 (mysqld)
Status: „Server is operational“
Tasks: 39 (limit: 9415)
Memory: 365.9M
CGroup: /system.slice/mysql.service
└─17189 /usr/sbin/mysqld

MySQL-Server absichern

Die Absicherung von MySQL schützt Ihre Datenbanken vor unbefugtem Zugriff. Legen Sie ein starkes Root-Passwort fest und entfernen Sie unsichere Standardeinstellungen wie folgt.

MySQL-Sicherheitsinstallation starten

$ sudo mysql_secure_installation

Führen Sie folgende Schritte zur Absicherung des MySQL-Servers aus:

  • Passwortvalidierung aktivieren: Geben Sie y ein und drücken Sie Enter, um die Passwortüberprüfung zu aktivieren.
  • Starke Passwortrichtlinie setzen: Geben Sie 2 ein, um die Verwendung sicherer Passwörter zu erzwingen.
  • Neues Passwort festlegen: Vergeben Sie ein starkes Passwort für den Root-Benutzer (es wird überprüft).
  • Passwort bestätigen: Geben Sie y ein, um das neue Root-Passwort zu bestätigen.
  • Anonyme Benutzer entfernen: Geben Sie y ein, um den Zugriff unautorisierter Benutzer zu widerrufen.
  • Remote-Root-Login deaktivieren: Geben Sie y ein, um Root-Login von entfernten Hosts zu verhindern.
  • Testdatenbanken löschen: Geben Sie y ein, um alle Testdatenbanken zu entfernen.
  • Berechtigungstabellen neu laden: Geben Sie y ein, um die Änderungen sofort anzuwenden.

Als Root am MySQL-Server anmelden

Starkes Passwort für den Root-Benutzer setzen

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_strong_password';

Ersetzen Sie your_strong_password durch ein sicheres Passwort gemäß Ihrer Passwort-Richtlinie.

MySQL-Berechtigungstabellen neu laden

MySQL-Konsole verlassen

MySQL-Dienst neu starten

$ sudo systemctl restart mysql

Zugriff auf MySQL

Melden Sie sich als Root-Benutzer am MySQL-Server an:

Geben Sie das zuvor festgelegte Root-Passwort ein, wenn Sie dazu aufgefordert werden.

Neue Datenbank erstellen

Erstellen Sie beispielsweise eine Datenbank mit dem Namen my_database:

mysql> CREATE DATABASE my_database;

Neuen MySQL-Benutzer anlegen

Legen Sie einen Benutzer mit dem Namen my_user an und vergeben Sie ein sicheres Passwort. Ersetzen Sie dabei my_password durch ein starkes Passwort entsprechend Ihrer Passwort-Richtlinie:

mysql> CREATE USER 'my_user'@'localhost' IDENTIFIED BY 'my_password';

Dem Benutzer volle Rechte für die Datenbank erteilen

mysql> GRANT ALL PRIVILEGES ON my_database.* TO 'my_user'@'localhost';

Dem Benutzer das Erstellen von Datenbanken erlauben

mysql> GRANT CREATE ON *.* TO 'my_user'@'localhost';

CRUD-Berechtigungen für den Benutzer vergeben

mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON *.* TO 'my_user'@'localhost';

Berechtigungstabellen aktualisieren

MySQL-Konsole beenden

Beispieldatenbank in MySQL erstellen

Nicht privilegierte MySQL-Benutzer wie my_user können Datenbanken und Tabellen anlegen. In diesem Beispiel erstellt my_user eine Datenbank, legt eine Tabelle an, fügt Datensätze ein und ruft diese ab.

Als MySQL-Benutzer anmelden

Melden Sie sich mit dem zuvor erstellten Konto my_user an der MySQL-Konsole an:

Geben Sie bei Aufforderung das Passwort für my_user ein.

Verfügbare Datenbanken anzeigen

Beispielausgabe:

+——————–+
| Database |
+——————–+
| information_schema |
| my_database |
| mysql |
| performance_schema |
| sys |
+——————–+

Neue Datenbank erstellen

Erstellen Sie zum Beispiel eine Datenbank mit dem Namen example_centron:

mysql> CREATE DATABASE example_centron;

Zur neuen Datenbank wechseln

mysql> USE example_centron;

Beispieltabelle anlegen

Legen Sie eine Tabelle mit drei Spalten an, um verschiedene Datentypen zu speichern:

mysql> CREATE TABLE sample_table (
         id INT AUTO_INCREMENT PRIMARY KEY,
         name VARCHAR(255) NOT NULL,
         description TEXT,
         created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
         );

Beispieldaten in die Tabelle einfügen

mysql> INSERT INTO sample_table (name, description) VALUES 
       ('Sample Item 1', 'This is the first sample item.'),
       ('Sample Item 2', 'This is the second sample item.'),
       ('Sample Item 3', 'This is the third sample item.');

Datensätze abrufen und überprüfen

Rufen Sie alle Einträge der Tabelle ab, um die Dateneinfügung zu bestätigen:

mysql> SELECT * FROM sample_table;

Beispielausgabe:

+—-+————–+——————————-+———————+
| id | name | description | created_at |
+—-+————–+——————————-+———————+
| 1 | Sample Item 1| This is the first sample item.| 2024-06-19 10:00:00 |
| 2 | Sample Item 2| This is the second sample item.| 2024-06-19 10:00:00|
| 3 | Sample Item 3| This is the third sample item. | 2024-06-19 10:00:00|
+—-+————–+——————————-+———————+

Fazit

Sie haben MySQL erfolgreich auf Ubuntu 20.04 installiert, für authentifizierten Zugriff abgesichert und eine Beispieldatenbank mit Tabelle und Datensätzen erstellt. MySQL lässt sich nahtlos in moderne Webanwendungen integrieren und kann sowohl als dedizierter Datenbankserver als auch als Backend für dynamische Stacks wie LAMP dienen. Weitere Informationen finden Sie in der offiziellen MySQL-Dokumentation.

Quelle: vultr.com

Jetzt 200€ Guthaben sichern

Registrieren Sie sich jetzt in unserer ccloud³ und erhalten Sie 200€ Startguthaben für Ihr Projekt.

Das könnte Sie auch interessieren:

Moderne Hosting Services mit Cloud Server, Managed Server und skalierbarem Cloud Hosting für professionelle IT-Infrastrukturen

Passbolt auf Linux installieren & sicher konfigurieren

Security, Tutorial
Passbolt auf Linux-Distributionen installieren und einrichten Passbolt ist ein Open-Source-Passwortmanager, der die sichere Speicherung und Verwaltung von Passwörtern sowie sensiblen Daten mit Ende-zu-Ende-Verschlüsselung ermöglicht. Er funktioniert hauptsächlich als Browser-Erweiterung für…