In diesem Kapitel legst du zuerst die Kurs-Datenbank an und erstellst danach einen Benutzer mit passenden Rechten (Rechteverwaltung). So vermeidest du „Rechte auf nicht existente DB“-Fehler.

🔹 Als Root einloggen

mysql -u root -p

(Oder sudo mysql, falls unix_socket aktiv ist.):

sudo mysql

🔹 Kurs-Datenbank anlegen

CREATE DATABASE IF NOT EXISTS kursdb
  DEFAULT CHARACTER SET utf8mb4
  DEFAULT COLLATE utf8mb4_general_ci;

Die Datenbank kursdb auswählen:

USE kursdb;

🔹 Kurs-Benutzer anlegen

👉  Hinweis: Wähle ein eigenes, starkes Passwort!

CREATE USER IF NOT EXISTS 'kursuser'@'localhost'
IDENTIFIED BY 'sql2025!';

Für reinen Lokalzugriff reicht localhost. (Für externe Verbindungen: '%' statt 'localhost' – nur, wenn du weißt, was du tust.)

🔹 Passende Rechte vergeben

Für diesen Kurs braucht der Benutzer Vollzugriff nur auf kursdb:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX, REFERENCES
ON kursdb.* TO 'kursuser'@'localhost';

(Für Lernzwecke ist auch ALL PRIVILEGES okay:
GRANT ALL PRIVILEGES ON kursdb.* TO 'kursuser'@'localhost';)

👉  Hinweis: In MariaDB ist nach GRAND kein FLUSH PRIVILEGES; nötig – schadet aber nicht:

FLUSH PRIVILEGES;

🔹 Rechte prüfen & Login testen

SHOW GRANTS FOR 'kursuser'@'localhost';

Beenden:

EXIT;

Neu anmelden:

mysql -u kursuser -p

DB setzen:

USE kursdb;
SELECT DATABASE();

🔹 Übung

  1. Lege die DB testspielwiese an (utf8mb4).
  2. Erstelle einen Benutzer tester@localhost mit starkem Passwort.
  3. Vergib nur SELECT auf testspielwiese.*.
  4. Prüfe die Grants und logge dich als tester ein.

✅ Zusammenfassung

  • Erst Datenbank, dann Benutzer & Rechte.
  • Rechte auf DB-Ebene, nicht global.
  • Login mit kursuser verifiziert und kursdb aktiv.

📚 Inhaltsverzeichnis

👉 MariaDB Kapitel 1: Einführung & Installation im Terminal
👉 MariaDB Kapitel 2: Benutzer & Rechteverwaltung
👉 MariaDB Kapitel 3: Tabellen sauber anlegen (Primär- & Fremdschlüssel)
👉 MariaDB Kapitel 4: Grundbefehle & Kurzschreibweisen in der MariaDB-Konsole
👉 MariaDB Kapitel 5: CRUD-Befehle  – Daten einfügen, lesen, ändern und löschen
👉 MariaDB Kapitel 6: Primär- und Fremdschlüssel – Tabellen verknüpfen
👉 MariaDB Kapitel 7: Profi-Abfragen mit JOIN, GROUP BY & Aggregatfunktionen
👉 MariaDB Kapitel 8: Indexe, Views & Transaktionen
👉 MariaDB Kapitel 9: Produktivbetrieb – Sicherheit, Backups & Verwaltung
👉 MariaDB Kapitel 10: Abschlussprojekt – Ein Mini-Shop

📚 Bonus-Kapitel Ideen

👉 MariaDB Kapitel 11: Stored Procedures – Automatisierte Abläufe
👉 MariaDB Kapitel 12: Trigger – Aktionen bei Änderungen
👉 MariaDB Kapitel 13: Events – Zeitgesteuerte Aufgaben
👉 MariaDB Kapitel 14: Sicherheit & Best Practices
👉 MariaDB Kapitel 15: Performance-Tuning & Optimierung