In diesem letzten Bonus-Kapitel lernst du, wie man Abfragen und Tabellen optimiert, damit die Datenbank auch bei großen Datenmengen schnell bleibt.

🔹 Abfragen analysieren mit EXPLAIN

EXPLAIN SELECT * FROM bestellungen WHERE kunde_id = 1;

👉 Zeigt an, welche Indexe genutzt werden und wie viele Zeilen geprüft werden müssen.

🔹 Kombinierte Indexe

🔹 Kombinierte Indexe

CREATE INDEX idx_bestellungen_kunde_datum ON bestellungen(kunde_id, bestelldatum);

🔹 UNIQUE & FULLTEXT Indexe

  • UNIQUE → verhindert doppelte Werte (z. B. E-Mail).
  • FULLTEXT → für Textsuche in langen Spalten (MATCH ... AGAINST).

Beispiel:

CREATE FULLTEXT INDEX idx_produkte_name ON produkte(name);

🔹 Partitionierung

Sehr große Tabellen lassen sich aufteilen (z. B. nach Datum).
Beispiel: Partitionierung einer Log-Tabelle nach Jahren.

CREATE TABLE logdaten (
    id INT NOT NULL,
    zeit DATETIME NOT NULL,
    nachricht TEXT
)
PARTITION BY RANGE (YEAR(zeit)) (
    PARTITION p2024 VALUES LESS THAN (2025),
    PARTITION p2025 VALUES LESS THAN (2026)
);

🔹 Performance-Monitoring

Aktive Prozesse anzeigen:

SHOW PROCESSLIST;

Statuswerte prüfen:

SHOW STATUS LIKE 'Threads%';

Performance Schema aktivieren:

SELECT * FROM performance_schema.events_statements_summary_by_digest
ORDER BY SUM_TIMER_WAIT DESC LIMIT 5;

🔹 Übung

  1. Lege einen kombinierten Index auf kunde_id und bestelldatum.
  2. Teste den Unterschied mit EXPLAIN.
  3. Füge einen FULLTEXT-Index auf die Produkttabelle ein und suche nach „Laptop“.

✅ Zusammenfassung

  • Mit EXPLAIN Abfragen analysieren und verbessern.
  • Indexe gezielt einsetzen (kombiniert, UNIQUE, FULLTEXT).
  • Große Tabellen per Partitionierung handhabbar machen.
  • Performance Schema für tiefere Analysen nutzen.

Damit hast du nun auch die fortgeschrittensten Themen kennengelernt. Du bist bereit, MariaDB von den Grundlagen bis zur Performance-Optimierung zu meistern 🎉.

📚 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