MySQL unter Ubuntu 25.04 installieren und konfigurieren

MySQL ist ein kostenloses, quelloffenes relationales Datenbankverwaltungssystem (RDBMS), das die Structured Query Language (SQL) verwendet, um Daten zu organisieren und zu verwalten. Es wird häufig in Webanwendungen, datenbasierten Plattformen und Softwarelösungen eingesetzt, die eine strukturierte Datenverarbeitung benötigen. Die Installation von MySQL auf Ubuntu 25.04 sorgt für eine stabile, sichere und konsistente Umgebung, die sich für unterschiedlichste Einsatzszenarien eignet.

Diese Anleitung zeigt Schritt für Schritt, wie MySQL unter Ubuntu 25.04 installiert und abgesichert wird – von der Systemvorbereitung bis zur Konfiguration. Die beschriebenen Schritte gelten sowohl für die Einrichtung eines neuen Servers als auch für lokale Entwicklungsumgebungen.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:

  • Zugriff auf eine Ubuntu-25.04-Instanz mit einem Nicht-Root-Benutzer, der über sudo-Rechte verfügt.

MySQL auf Ubuntu 25.04 installieren

Ubuntu 25.04 enthält die MySQL-Pakete bereits in den Standard-APT-Repositories, daher kann der MySQL-Server direkt installiert werden, ohne externe Quellen hinzuzufügen. Befolgen Sie die folgenden Schritte, um den Paketindex zu aktualisieren und den MySQL-Datenbankserver zu installieren.

Schritt 1: APT-Paketindex aktualisieren

Schritt 2: MySQL-Server-Paket installieren

$ sudo apt install mysql-server -y

Schritt 3: Installation überprüfen

Nach der Installation überprüfen Sie, ob MySQL korrekt ausgeführt wird und welche Version installiert ist.

Die Ausgabe sollte ähnlich wie folgt aussehen:

mysql  Ver 8.4.4-0ubuntu2 for Linux on x86_64 ((Ubuntu))

MySQL-Systemdienst verwalten

Der MySQL-Server wird als systemd-Dienst unter dem Namen mysql ausgeführt und steuert Hintergrundprozesse sowie den automatischen Start beim Booten. Mit den folgenden Befehlen können Sie den Dienst aktivieren, starten und seinen Status überprüfen.

MySQL beim Systemstart aktivieren

$ sudo systemctl enable mysql

MySQL-Dienst starten

$ sudo systemctl start mysql

Status des MySQL-Dienstes prüfen

$ sudo systemctl status mysql

Eine erfolgreiche Statusausgabe sieht beispielsweise so aus:

● mysql.service - MySQL Community Server
     Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled; preset: enabled)
     Active: active (running) since Wed 2025-04-23 15:45:51 UTC; 1min 8s ago
 Invocation: e97531cc30e94807a7a293e576cb307d
   Main PID: 6489 (mysqld)
     Status: "Server is operational"
      Tasks: 34 (limit: 8761)
     Memory: 437.1M (peak: 450.4M)
        CPU: 2.069s
     CGroup: /system.slice/mysql.service
             └─6489 /usr/sbin/mysqld

MySQL-Server absichern

Das Absichern Ihrer MySQL-Installation ist entscheidend, um unbefugten Zugriff zu verhindern und sensible Daten zu schützen. Standardmäßig hat der Root-Benutzer uneingeschränkten Zugriff auf die MySQL-Konsole. Befolgen Sie diese Schritte, um ein sicheres Root-Passwort zu setzen, unsichere Standardeinstellungen zu deaktivieren und die Gesamtsicherheit zu erhöhen.

Schritt 1: Das MySQL-Sicherheitsinstallationsskript ausführen

$ sudo mysql_secure_installation

Befolgen Sie die angezeigten Anweisungen, um die folgenden Sicherheitsoptionen zu aktivieren:

  • VALIDATE PASSWORD COMPONENT: Geben Sie Y ein, um die Passwortvalidierung zu aktivieren.
  • Passwortrichtlinie: Geben Sie 2 ein, um die Verwendung starker Passwörter zu erzwingen.
  • Anonyme Benutzer entfernen?: Geben Sie Y ein, um anonyme Benutzer zu löschen.
  • Root-Login aus der Ferne verbieten?: Geben Sie Y ein, um Remote-Zugriffe des Root-Benutzers zu deaktivieren.
  • Testdatenbank entfernen?: Geben Sie Y ein, um die Testdatenbank zu löschen.
  • Berechtigungstabellen neu laden?: Geben Sie Y ein, um alle Änderungen zu übernehmen.

Schritt 2: MySQL-Authentifizierungseinstellungen konfigurieren

Öffnen Sie die MySQL-Konfigurationsdatei mit einem Texteditor wie nano:

$ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Fügen Sie im Abschnitt [mysqld] die folgende Zeile hinzu, um das Authentifizierungs-Plugin mysql_native_password zu aktivieren:

Ihr Abschnitt [mysqld] sollte danach wie folgt aussehen:

...
[mysqld]
#
# * Basic Settings
#
mysql_native_password=ON
user            = mysql
...

Schritt 3: MySQL-Dienst neu starten

Starten Sie den MySQL-Dienst neu, um die Änderungen zu übernehmen:

$ sudo systemctl restart mysql

Schritt 4: Sicheres Root-Passwort festlegen

Öffnen Sie die MySQL-Konsole als Root-Benutzer:

Weisen Sie dem Root-Benutzer ein starkes Passwort zu:

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

Ersetzen Sie dein_sicheres_passwort durch ein Passwort, das den Sicherheitsrichtlinien Ihres Unternehmens entspricht.

Laden Sie die Benutzerrechte neu, um die Änderungen anzuwenden:

Beenden Sie die MySQL-Konsole:

Zugriff auf MySQL

Gehen Sie wie folgt vor, um auf Ihren MySQL-Server zuzugreifen, Benutzer zu verwalten und Datenbanken zu administrieren.

Schritt 1: Als Root-Benutzer anmelden

Geben Sie bei der Aufforderung das Root-Passwort ein, das Sie zuvor festgelegt haben.

Schritt 2: Eine Datenbank und einen Benutzer erstellen

Erstellen Sie eine Beispiel-Datenbank mit dem Namen app_data:

mysql> CREATE DATABASE app_data;

Erstellen Sie anschließend einen neuen MySQL-Benutzer mit dem Namen app_user und einem sicheren Passwort:

mysql> CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'dein_sicheres_passwort';

Ersetzen Sie dein_sicheres_passwort durch ein starkes, richtlinienkonformes Passwort.

Schritt 3: Benutzerrechte vergeben

Geben Sie dem Benutzer app_user vollständige Berechtigungen für die Datenbank app_data:

mysql> GRANT ALL PRIVILEGES ON app_data.* TO 'app_user'@'localhost';

Erteilen Sie zusätzlich die Berechtigung zum Erstellen neuer Datenbanken:

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

Erlauben Sie außerdem grundlegende CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) auf allen Datenbanken:

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

Laden Sie anschließend die Berechtigungstabellen neu, um die Änderungen zu übernehmen:

Beenden Sie die MySQL-Konsole:

Eine Beispiel-MySQL-Datenbank erstellen

Nachdem das Benutzerkonto app_user eingerichtet wurde, können Sie sich damit anmelden, um Datenbanken ohne Root-Rechte zu erstellen und zu verwalten. Befolgen Sie dazu die folgenden Schritte, um eine neue Datenbank anzulegen und mit Beispieldaten zu befüllen.

Schritt 1: Anmeldung als app_user

Schritt 2: Verfügbare Datenbanken anzeigen

Beispielausgabe:

+--------------------+
| Database           |
+--------------------+
| app_data           |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

Schritt 3: Eine neue Datenbank erstellen und mit Daten füllen

Erstellen Sie eine neue Datenbank namens app_demo:

mysql> CREATE DATABASE app_demo;

Wechseln Sie in die neue Datenbank:

Erstellen Sie eine Tabelle namens items mit einer automatisch inkrementierenden ID, einem Namen, einer Beschreibung und einem Zeitstempel:

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

Fügen Sie Beispieldaten in die Tabelle ein:

mysql> INSERT INTO items (name, description) VALUES 
         ('Item One', 'Dies ist das erste Element.'),
         ('Item Two', 'Dies ist das zweite Element.'),
         ('Item Three', 'Dies ist das dritte Element.');

Überprüfen Sie, ob die Daten korrekt eingefügt wurden:

mysql> SELECT * FROM items;

Beispielausgabe:

+----+------------+--------------------------+---------------------+
| id | name       | description              | created_at          |
+----+------------+--------------------------+---------------------+
|  1 | Item One   | Dies ist das erste Element.  | 2025-04-23 18:02:49 |
|  2 | Item Two   | Dies ist das zweite Element. | 2025-04-23 18:02:49 |
|  3 | Item Three | Dies ist das dritte Element. | 2025-04-23 18:02:49 |
+----+------------+--------------------------+---------------------+
3 rows in set (0.00 sec)

Beenden Sie die MySQL-Konsole:

Fazit

Sie haben MySQL unter Ubuntu 25.04 erfolgreich installiert und abgesichert, einen dedizierten Datenbankbenutzer mit spezifischen Rechten erstellt und diesen genutzt, um eine Beispiel-Datenbank anzulegen und zu verwalten. MySQL ist eines der zuverlässigsten und skalierbarsten Open-Source-Datenbanksysteme und lässt sich nahtlos in moderne Technologie-Stacks wie LAMP und LEMP integrieren. Es bildet die Grundlage zahlreicher Webanwendungen und serverseitiger Lösungen. Für weitere Informationen und fortgeschrittene Konfigurationen besuchen Sie bitte die offizielle 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: