141

Daten & Datenbanken · DB-Server betreiben

Datenbanksystem in Betrieb nehmen

Du installierst einen Datenbankserver so, dass er sicher erreichbar ist, richtig dimensioniert läuft und im Notfall wiederhergestellt werden kann.

Fortgeschritten Fortgeschritten ca. 22 Std. SelbststudiumPlattformentwicklung: 2. Lehrjahr · Berufsfachschule
#Datenbankserver#MariaDB#PostgreSQL#SQL Server#Benutzerrechte#Datenbank-Backup#Performance#Installation#TLS

Überblick

Worum geht es?

Bisher hast du Datenbanken vor allem benutzt: Tabellen angelegt, Daten abgefragt. In diesem Modul stehst du auf der anderen Seite und bist für den Server selbst verantwortlich. Du wählst ein passendes DBMS, installierst es auf Linux oder Windows, passt Konfiguration und Speicher an, richtest Benutzer mit minimalen Rechten ein und sicherst die Verbindung ab. Dazu gehören ein funktionierendes Backup mit getestetem Restore, eine Datenübernahme aus einem Altsystem und eine Betriebsdokumentation, mit der auch jemand anderes den Server übernehmen kann.

Wofür brauchst du das?

Hinter fast jeder Fachanwendung im Lehrbetrieb steckt eine Datenbank: das ERP der Treuhand, die Zeiterfassung der Gemeinde, das Laborsystem im Spital. Fällt sie aus oder ist sie falsch konfiguriert, steht der Betrieb still oder Daten landen in falschen Händen. Als Plattformentwickler:in bist du oft die Person, die den Server aufsetzt, Updates einspielt und beim Restore die Nerven behält. Das Modul baut auf 164 und 106 auf und ist eng mit 143 (Backup) und 188 (Betrieb) verknüpft.

Das solltest du schon können

  • Tabellen mit SQL anlegen, Primär- und Fremdschlüssel setzen und Daten einfügen (Modul 164)
  • Daten mit SELECT, JOIN und Aggregatfunktionen abfragen und mit UPDATE/DELETE ändern (Modul 106)
  • Einen Linux- oder Windows-Server installieren, Netzwerk konfigurieren und per SSH oder RDP verwalten (Modul 123)

Typische Tools & Technologien

MariaDB / MySQLPostgreSQLMicrosoft SQL Server ExpressLinux (Debian/Ubuntu)Windows ServerDBeaver / SSMS / pgAdminmysqldump / pg_dumpDocker

Lernziele

Was musst du können?

Das sind die Fähigkeiten, die am Ende des Moduls sitzen sollten. Jedes Ziel mit einem Beispiel aus dem Lehrbetrieb.

  1. 1

    Ein passendes DBMS anhand von Anforderungen auswählen

    Kompetenz A

    Du vergleichst Systeme wie MariaDB, PostgreSQL und SQL Server nach Kriterien, die im Betrieb wirklich zählen: Kompatibilität mit der Anwendung, Lizenzkosten, Know-how im Team, Plattform und Support-Dauer. Die Wahl begründest du schriftlich statt nach Bauchgefühl.

    Situation

    Eine Gemeinde mit 40 Mitarbeitenden führt eine neue Software für die Raumreservation ein. Der Hersteller unterstützt MariaDB 10.11 und SQL Server ab 2019. Im Haus laufen bereits zwei Debian-Server.

    Deine Aufgabe

    Erstelle eine Entscheidungsgrundlage mit gewichteten Kriterien und gib eine Empfehlung ab.

    Gutes Ergebnis

    Nutzwertanalyse mit fünf Kriterien. MariaDB auf Debian gewinnt: keine Lizenzkosten (SQL Server Standard wäre lizenzpflichtig, pro Kern mit mindestens 4 Kernen pro VM oder als Server-Lizenz plus CAL, Preise beim Lizenzpartner), vorhandenes Linux-Know-how, LTS-Version mit Support bis 2028.

    DBMSLTS-VersionLizenzmodellNutzwertanalyseHerstellervorgaben
  2. 2

    Den Datenbankserver installieren und grundlegend konfigurieren

    Kompetenz A

    Du installierst das DBMS aus offiziellen Paketquellen, legst Datenverzeichnis, Port, Zeichensatz und Zeitzone fest und sorgst dafür, dass der Dienst beim Systemstart sauber hochfährt. Danach entfernst du unsichere Standardeinstellungen wie anonyme Benutzer oder Testdatenbanken.

    Situation

    Für die Raumreservation steht eine VM mit 4 vCPU, 8 GB RAM und einer separaten 100-GB-Datenplatte bereit.

    Deine Aufgabe

    Installiere MariaDB so, dass die Daten auf der separaten Platte liegen und der Server UTF-8 vollständig unterstützt.

    Gutes Ergebnis

    Paket aus dem MariaDB-Repository installiert, datadir auf /srv/mariadb verschoben, character-set-server=utf8mb4, mariadb-secure-installation ausgeführt, Dienst mit systemctl enable aktiviert und Neustart erfolgreich getestet.

    PaketquelleKonfigurationsdatei (my.cnf / postgresql.conf)Datenverzeichnisutf8mb4systemd-Dienst
  3. 3

    Benutzer und Rechte nach dem Minimalprinzip einrichten

    Kompetenz B

    Jede Anwendung und jede Person bekommt einen eigenen Login mit genau den Rechten, die sie braucht. Der Root- oder sa-Account wird nie von Anwendungen verwendet. Du kannst Rechte vergeben, prüfen und wieder entziehen.

    Situation

    Die Reservationssoftware braucht Lese- und Schreibzugriff auf ihre Datenbank. Die Leiterin Finanzen möchte monatlich Auswertungen mit Excel ziehen.

    Deine Aufgabe

    Lege passende Konten an und dokumentiere die Rechte.

    Gutes Ergebnis

    Konto 'app_raum'@'10.10.20.15' mit SELECT, INSERT, UPDATE, DELETE auf raum_db.*. Konto 'report_finanzen' mit SELECT auf zwei Views. Kein Konto ausser dem Admin hat GRANT OPTION. Prüfung mit SHOW GRANTS.

    Least PrivilegeGRANT / REVOKERolleHost-EinschränkungView als Zugriffsschicht
  4. 4

    Den Netzwerkzugriff einschränken und verschlüsseln

    Kompetenz C

    Der Datenbankport ist nur von den Servern erreichbar, die ihn wirklich brauchen. Verbindungen laufen über TLS, damit Passwörter und Daten nicht im Klartext durchs Netz gehen. Das ist bei Personendaten auch eine Anforderung aus dem revDSG.

    Situation

    Ein Lernender stellt fest, dass Port 3306 aus dem ganzen Büronetz erreichbar ist.

    Deine Aufgabe

    Beschränke den Zugriff auf den Applikationsserver und erzwinge verschlüsselte Verbindungen.

    Gutes Ergebnis

    bind-address auf die interne Server-IP gesetzt, Host-Firewall (nftables) erlaubt 3306 nur von 10.10.20.15, Zertifikat der internen CA eingebunden, require_secure_transport=ON. Test mit nmap aus dem Büronetz: Port gefiltert.

    bind-address / listen_addressesHost-FirewallTLS-Zertifikatpg_hba.confrevDSG Datensicherheit
  5. 5

    Datenbanken sichern und einen Restore nachweislich testen

    Kompetenz D

    Du wählst eine Sicherungsmethode, die zur Datenmenge und zum erlaubten Datenverlust passt, automatisierst sie und prüfst regelmässig, ob sich die Sicherung tatsächlich zurückspielen lässt. Ein Backup ohne getesteten Restore zählt nicht.

    Situation

    Die Treuhand-Datenbank ist 12 GB gross. Die Geschäftsleitung akzeptiert höchstens 1 Stunde Datenverlust (RPO) und 4 Stunden Ausfall (RTO).

    Deine Aufgabe

    Plane und teste eine Sicherung, die diese Vorgaben erfüllt.

    Gutes Ergebnis

    Nächtlicher Vollexport mit mariadb-dump --single-transaction plus Binary Logs, die stündlich auf das NAS kopiert werden. Restore-Test auf einer Test-VM dauert 50 Minuten inklusive Einspielen der Binlogs bis 10:00 Uhr. Protokoll mit Datum und Dauer abgelegt.

    logisches vs. physisches BackupBinary Log / WALPoint-in-Time-RecoveryRPO / RTORestore-Test
  6. 6

    Bestehende Daten aus einem Altsystem übernehmen

    Kompetenz E

    Du importierst Daten aus CSV-Dateien, Excel oder einer älteren Datenbank, prüfst Zeichensätze, Datentypen und Schlüssel und kontrollierst danach mit Zählungen und Stichproben, dass nichts verloren ging.

    Situation

    Die Raumreservationen der letzten drei Jahre liegen in einer Access-Datei mit rund 9'500 Einträgen.

    Deine Aufgabe

    Übernimm die Daten in die neue MariaDB-Datenbank ohne kaputte Umlaute und ohne Duplikate.

    Gutes Ergebnis

    Export als CSV in UTF-8, Import mit LOAD DATA in eine Staging-Tabelle, Bereinigung per SQL (Datumsformat, doppelte Einträge), Übernahme in die Zieltabelle. Vergleich: 9'512 Quelle, 9'497 Ziel, 15 Duplikate dokumentiert entfernt.

    CSV-ImportStaging-TabelleZeichenkodierungDatenvalidierungMengenabgleich
  7. 7

    Leistung überwachen und den Betrieb dokumentieren

    Kompetenz F

    Du beobachtest wichtige Kennzahlen wie Verbindungen, langsame Abfragen und freien Speicher und passt Parameter wie den Buffer Pool gezielt an. Alles Wichtige hältst du in einer Betriebsdokumentation fest, damit eine Kollegin den Server auch ohne dich betreuen kann.

    Situation

    Nutzer:innen melden, dass die Monatsauswertung über zwei Minuten dauert.

    Deine Aufgabe

    Finde die Ursache und dokumentiere die Massnahme.

    Gutes Ergebnis

    Slow Query Log zeigt eine Abfrage ohne Index auf 'datum'. Index ergänzt, Laufzeit sinkt auf 3 Sekunden. innodb_buffer_pool_size von 128 MB auf 4 GB erhöht. Änderungen mit Datum und Begründung in der Betriebsdoku nachgeführt.

    Slow Query LogIndexBuffer Pool / shared_buffersBetriebshandbuchMonitoring-Kennzahl

Selbsteinschätzung

Wo stehst du?

Die Kompetenzmatrix zerlegt das Modul in Themenstränge und drei Stufen. Für den Kompetenznachweis solltest du überall mindestens Stufe 2 erreichen. Dein Stand bleibt in diesem Browser gespeichert und färbt Lernweg und Übungen ein.

Tippe auf eine Aussage, um deinen Stand zu setzen: offen unsicher sitzt
A

DBMS auswählen und installieren

Ziel 1Ziel 2

Grundlagen

Fortgeschritten

Erweitert

B

Benutzer und Rechte

Ziel 3

Grundlagen

Fortgeschritten

Erweitert

C

Zugriff absichern

Ziel 4

Grundlagen

Fortgeschritten

Erweitert

D

Sichern und wiederherstellen

Ziel 5

Grundlagen

Fortgeschritten

Erweitert

E

Daten übernehmen

Ziel 6

Grundlagen

Fortgeschritten

Erweitert

F

Betrieb überwachen und dokumentieren

Ziel 7

Grundlagen

Fortgeschritten

Erweitert

Praxisfall

Ein neuer Datenbankserver für die Logistik Frei AG

Aylin ist im 2. Lehrjahr als Informatikerin Plattformentwicklung bei der Logistik Frei AG in Schlieren, 150 Mitarbeitende. Die Lagerverwaltung läuft noch auf MySQL 5.7 auf einem Windows-Server, für den es keine Updates mehr gibt. Aylin soll mit ihrem Berufsbildner einen neuen Datenbankserver aufbauen und die Daten an einem Wochenende übernehmen.

  1. Kapitel 1

    MariaDB oder PostgreSQL?

    Aylin sammelt die Anforderungen: 40 GB Daten, bis zu 60 gleichzeitige Benutzer und Linux als Betriebssystem. In der Dokumentation des Softwareherstellers steht, dass die Lagerverwaltung nur MySQL 8 und MariaDB 10.11 unterstützt. PostgreSQL wäre technisch spannend, fällt aber an diesem Muss-Kriterium heraus. In der Nutzwertanalyse gewinnt MariaDB 10.11 LTS auf Debian 12 vor MySQL 8.4 LTS, vor allem weil MariaDB direkt in den Debian-Paketquellen enthalten ist und mit mariadb-backup ein passendes Backup-Werkzeug mitbringt.

    Ziel 1

  2. Kapitel 2

    Ein frischer Server

    Aylin installiert Debian 12 auf einer VM mit 4 vCPU und 16 GB RAM und legt das Datenverzeichnis auf eine eigene Disk mit 100 GB. Nach mariadb-secure-installation setzt sie den Buffer Pool auf 8 GB. Beim ersten Testimport werden aus Umlauten seltsame Zeichen. Sie stellt Server und Client auf utf8mb4 mit passender Sortierung um, importiert neu und prüft Artikelnamen wie Müesli-Riegel stichprobenweise.

    Ziel 2

  3. Kapitel 3

    Nur so viel Recht wie nötig

    Die alte Anwendung hatte sich mit root angemeldet. Aylin legt ein Konto für die Lager-App an, das nur vom App-Server aus lesen und schreiben darf, und ein Auswertungskonto mit Lesezugriff auf eine View ohne Einkaufspreise. Der Server lauscht nur noch auf seiner internen Adresse, die Firewall lässt nur App-Server und Admin-Netz durch, und Verbindungen müssen TLS nutzen. Am Montag beschwert sich das Controlling, dass ihr Power-BI-Bericht nicht mehr geht: Sie hatten ebenfalls root benutzt und erhalten nun das Auswertungskonto.

    Ziel 3Ziel 4

  4. Kapitel 4

    Der Restore, der zu lange dauerte

    Jede Nacht sichert Aylin die Datenbank mit mariadb-dump, und das Binary Log erlaubt eine Wiederherstellung auf jeden Zeitpunkt der letzten sieben Tage. Beim Restore-Test auf einer Test-VM dauert das Zurückspielen 2 Stunden und 10 Minuten. Vereinbart war aber ein RTO von einer Stunde. Aylin stellt auf ein physisches Backup mit mariabackup um und schafft den Restore danach in 25 Minuten.

    Ziel 5

  5. Kapitel 5

    Umzug am Samstag und schnellere Suche

    Am Samstag exportiert Aylin die Daten aus MySQL 5.7, lädt sie zuerst in Staging-Tabellen und vergleicht per Skript die Anzahl Zeilen jeder Tabelle. Drei Lieferungen mit dem ungültigen Datum 0000-00-00 werden abgelehnt, und mit dem Lagerchef legt sie das richtige Datum fest. In der ersten Woche zeigt das Slow Query Log, dass die Suche nach Artikelnummer 4 Sekunden dauert. Mit einem Index sind es noch 30 Millisekunden, und Aylin hält alles im Betriebshandbuch fest.

    Ziel 6Ziel 7

Lernweg

Wie lernst du das?

  1. 1

    Systeme kennen und auswählen

    ca. 2 Std.

    Du verschaffst dir einen Überblick über die gängigen DBMS und lernst, eine Auswahl nachvollziehbar zu begründen.

    • MariaDB, PostgreSQL und SQL Server Express in einer Tabelle vergleichen: Lizenz, Plattform, Support-Ende, Tools
    • Systemanforderungen einer echten Fachanwendung (z.B. aus dem Lehrbetrieb) heraussuchen
    • Eine kurze Nutzwertanalyse mit 4 bis 5 Kriterien erstellen

    Trainiert Kompetenz A1

    Lernziel1

  2. 2

    Installation im Heimlabor

    ca. 4 Std.

    Du setzt eine VM (Debian oder Ubuntu Server, 2 vCPU, 4 GB RAM) in VirtualBox, Hyper-V oder Proxmox auf und installierst dort MariaDB und PostgreSQL nebeneinander.

    • Beide DBMS aus den offiziellen Repositories installieren und Version prüfen
    • Datenverzeichnis auf eine zweite virtuelle Platte verschieben
    • Zeichensatz, Zeitzone und Port in der Konfigurationsdatei setzen und Dienst neu starten

    Trainiert Kompetenz A1A2

    Lernziel2

  3. 3

    Konten, Rechte und Netzwerk absichern

    ca. 4 Std.

    Du richtest Anwendungs- und Personenkonten ein und machst den Server nur für berechtigte Hosts erreichbar.

    • Drei Konten mit unterschiedlichen Rechten anlegen und mit SHOW GRANTS bzw. \du kontrollieren
    • Port mit nftables oder ufw auf eine IP einschränken und mit nmap von aussen testen
    • Ein Zertifikat erstellen, TLS aktivieren und im Client prüfen, ob die Verbindung verschlüsselt ist

    Trainiert Kompetenz B1B2C1C2

    Lernziel34

  4. 4

    Backup und Restore üben

    ca. 4 Std.

    Du sicherst eine Beispieldatenbank auf verschiedene Arten und spielst sie unter Zeitdruck wieder ein.

    • Dump mit mariadb-dump und pg_dump erstellen, per cron nächtlich automatisieren
    • Binary Logs aktivieren und einen Point-in-Time-Restore auf eine bestimmte Uhrzeit durchführen
    • Restore-Zeit messen und in einem kurzen Testprotokoll festhalten

    Trainiert Kompetenz D1D2

    Lernziel5

  5. 5

    Datenübernahme und Tuning

    ca. 4 Std.

    Du importierst einen grösseren Datensatz, prüfst die Qualität und optimierst danach die Leistung.

    • Einen offenen Datensatz (z.B. Gemeindeverzeichnis des BFS als CSV) in eine Staging-Tabelle laden und bereinigen
    • Slow Query Log aktivieren, eine langsame Abfrage finden und mit einem Index beschleunigen
    • Buffer Pool an den verfügbaren RAM anpassen und den Effekt messen

    Trainiert Kompetenz E1E2F1F2

    Lernziel67

  6. 6

    Gesamtauftrag mit Dokumentation

    ca. 4 Std.

    Du spielst einen kompletten Auftrag durch, wie er im Kompetenznachweis vorkommen kann: vom leeren Server bis zur Übergabe.

    • Server installieren, absichern, Daten übernehmen und Backup einrichten
    • Betriebsdokumentation mit Zugangsdaten-Verweis, Ports, Konten, Backup-Plan und Restore-Anleitung schreiben
    • Die Doku einer Kollegin geben und prüfen, ob sie damit einen Restore schafft

    Trainiert Kompetenz A3B3D3F3

    Lernziel2357

Üben

Übungen aus der Praxis

Datenbank für eine Vereinsverwaltung

Einstieg Einstieg

Ein Turnverein mit 300 Mitgliedern möchte seine Mitgliederliste nicht mehr in Excel führen. Ein Kollege hat eine kleine Webanwendung geschrieben, die eine MariaDB-Datenbank braucht.

Weist nach A1B1

  1. MariaDB auf einer Linux-VM installieren und mariadb-secure-installation durchführen
  2. Datenbank 'verein' mit utf8mb4 anlegen
  3. Ein Konto für die Webanwendung mit Rechten nur auf diese Datenbank erstellen
  4. Testverbindung mit DBeaver aufbauen und Umlaute in einem Testdatensatz prüfen
Tipp anzeigen

Prüfe nach der Installation mit SELECT user, host FROM mysql.user, welche Konten es schon gibt.

Lösungsskizze anzeigen

Installation aus dem Repository, Sicherheits-Skript ausgeführt (Root nur lokal, Test-DB entfernt). CREATE DATABASE verein CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci. Konto 'verein_app'@'localhost' mit SELECT, INSERT, UPDATE, DELETE auf verein.*. Testdatensatz 'Müller, Zürich' wird korrekt angezeigt.

PostgreSQL für eine Arztpraxis absichern

Fortgeschritten Fortgeschritten

Eine Gruppenpraxis betreibt ein Terminsystem auf PostgreSQL. Bei einem Audit fällt auf: Der Port ist aus dem ganzen Netz offen, alle Verbindungen laufen ohne Verschlüsselung und es gibt nur ein einziges Konto 'postgres'.

Weist nach B2C2C3

  1. Den Ist-Zustand dokumentieren (offene Ports, Konten, pg_hba.conf)
  2. Separate Konten für Anwendung und Auswertungen anlegen
  3. Zugriff in pg_hba.conf auf den Applikationsserver beschränken und hostssl erzwingen
  4. Mit psql und nmap nachweisen, dass die Massnahmen greifen
Tipp anzeigen

Die Reihenfolge der Zeilen in pg_hba.conf ist entscheidend: Die erste passende Regel gewinnt.

Lösungsskizze anzeigen

Rollen 'termin_app' (Lese- und Schreibrechte auf Schema termine) und 'auswertung' (nur SELECT) erstellt. listen_addresses auf die interne IP. pg_hba.conf: hostssl termin_db termin_app 10.0.5.20/32 scram-sha-256, am Ende eine Regel 'host all all 0.0.0.0/0 reject'. ssl=on mit Zertifikat. Nachweis: Verbindung ohne SSL wird abgelehnt, nmap aus dem Praxis-WLAN zeigt Port 5432 als gefiltert.

Neuer Datenbankserver für das Treuhand-ERP

Anspruchsvoll Anspruchsvoll

Ein Treuhandbüro mit 15 Mitarbeitenden zieht seine ERP-Datenbank (MariaDB, 18 GB) von einem alten physischen Server auf eine neue VM um. Vorgabe: höchstens 30 Minuten Datenverlust und am Montagmorgen muss alles laufen.

Weist nach A3D3E3F3

  1. Ressourcen der neuen VM festlegen und Konfiguration (Buffer Pool, Logs) begründen
  2. Übernahme planen: Testlauf, Zeitbedarf messen, Umstellungszeitpunkt wählen
  3. Backup-Konzept mit Binary Logs für ein RPO von 30 Minuten aufsetzen
  4. Nach der Umstellung Datenmengen abgleichen und einen Restore-Test durchführen
  5. Betriebsdokumentation für den Nachfolger schreiben
Tipp anzeigen

Miss die Dauer von Dump und Import zuerst im Testlauf. Erst dann weisst du, ob ein Wochenende reicht.

Lösungsskizze anzeigen

VM mit 4 vCPU, 16 GB RAM, Buffer Pool 10 GB, Daten auf SSD-Volume. Testlauf am Mittwoch: Dump 12 Minuten, Import 35 Minuten. Umstellung Samstag 08:00 mit gestoppter Anwendung. Danach Zeilenzahl pro Tabelle per Skript verglichen. Nächtlicher Dump plus Binlog-Kopie alle 15 Minuten auf das NAS. Restore-Test auf separater VM erfolgreich, Dauer protokolliert.

Selbstcheck

Kannst du das beantworten?

Warum sollte eine Anwendung nie mit dem Root- oder sa-Konto auf die Datenbank zugreifen?

Weil eine Schwachstelle in der Anwendung (z.B. SQL-Injection) sonst Vollzugriff auf alle Datenbanken und Benutzer gibt. Ein eigenes Konto mit minimalen Rechten begrenzt den Schaden.

Was bewirkt die Einstellung bind-address bzw. listen_addresses?

Sie legt fest, auf welchen Netzwerkschnittstellen der Server Verbindungen annimmt. Mit 127.0.0.1 ist er nur lokal erreichbar.

Warum utf8mb4 und nicht utf8 bei MariaDB/MySQL?

Das alte utf8 speichert nur bis 3 Byte pro Zeichen. Emojis und manche Sonderzeichen brauchen 4 Byte und gehen sonst verloren.

Was ist der Unterschied zwischen einem logischen und einem physischen Backup?

Ein logisches Backup exportiert SQL-Befehle oder Daten (z.B. mariadb-dump). Ein physisches kopiert die Datendateien selbst (z.B. mariabackup). Physisch ist bei grossen Datenbanken schneller, logisch ist portabler.

Wozu braucht man Binary Logs bzw. WAL-Archivierung?

Sie protokollieren jede Änderung. Damit kannst du nach dem Einspielen des letzten Vollbackups bis zu einem bestimmten Zeitpunkt nachfahren (Point-in-Time-Recovery).

Wie prüfst du nach einer Datenübernahme, ob alles angekommen ist?

Zeilen pro Tabelle in Quelle und Ziel zählen, Summen von Beträgen vergleichen und Stichproben mit Umlauten und Datumswerten kontrollieren.

Was ist der Buffer Pool bei InnoDB?

Der Arbeitsspeicherbereich, in dem Daten und Indizes zwischengespeichert werden. Auf einem reinen DB-Server setzt man ihn meist auf 50 bis 75 Prozent des RAM, mit 50 Prozent als vorsichtigem Startwert.

Prüfung

Stolpersteine & Prüfungstipps

Typische Stolpersteine

  • Den Datenbankport ins ganze Netz oder sogar ins Internet öffnen, weil es 'schneller geht'.
  • Ein Anwendungskonto mit ALL PRIVILEGES ON *.* anlegen und es nie wieder einschränken.
  • Dumps erstellen, aber nie einen Restore testen. Oft fehlt dann genau die eine Tabelle oder das Passwort für das verschlüsselte Archiv.
  • Daten auf derselben Platte wie das Betriebssystem ablegen: Läuft das Log voll, steht der ganze Server.
  • Konfigurationsänderungen direkt auf dem Produktivserver ausprobieren, ohne Backup der Konfigurationsdatei.

Tipps für den Kompetenznachweis

  • Halte jede Konfigurationsänderung sofort in deiner Doku fest: Datei, Parameter, alter Wert, neuer Wert, Grund.
  • Belege jede Sicherheitsmassnahme mit einem Test, z.B. Screenshot von nmap oder einer abgelehnten Verbindung.
  • Plane für den Restore-Test Zeit ein. Eine Prüfung ohne nachgewiesenen Restore wirkt unvollständig.
  • Wenn du die Wahl hast: Nimm das DBMS, das du im Heimlabor am meisten geübt hast.

Glossar

Begriffe kurz erklärt

DBMS
Datenbankmanagementsystem: Software, die Daten speichert, verwaltet und Abfragen ausführt, z.B. PostgreSQL.
Instanz
Ein laufender Datenbankserver-Prozess mit eigener Konfiguration und eigenen Datenbanken.
Least Privilege
Prinzip, nach dem jedes Konto nur die minimal nötigen Rechte erhält.
Binary Log / WAL
Fortlaufendes Protokoll aller Änderungen, Grundlage für Replikation und Point-in-Time-Recovery.
Point-in-Time-Recovery
Wiederherstellung einer Datenbank auf einen genauen Zeitpunkt, z.B. kurz vor einem versehentlichen DELETE.
Buffer Pool
Cache im Arbeitsspeicher für Tabellen- und Indexdaten, entscheidend für die Leistung.
Staging-Tabelle
Zwischentabelle, in die Daten zuerst roh importiert und dann bereinigt werden.
pg_hba.conf
Datei in PostgreSQL, die regelt, wer sich von wo mit welcher Methode anmelden darf.

Mit KI-Tutor

Jeder Kurs hat einen persönlichen KI-Tutor

  • Erklärt in deinem Tempo
  • Debuggt mit dir
  • Fachgespräch wie im QV
  • Unbegrenzt neue Übungen

Denkanstösse statt fertiger Lösungen. In der Gratis-Lektion zum Ausprobieren.

KI-Tutor · Modul 164Nur Tipps

Mein JOIN liefert plötzlich doppelte Zeilen. Was mache ich falsch?
Gute Frage! Schau dir die Spalte an, über die du verbindest: Ist sie in beiden Tabellen eindeutig? Was passiert mit einer Kundin, die zwei Bestellungen hat?
Ah, dann kommt sie zweimal vor …
Genau. Willst du die Bestellungen zählen oder nur die Kundinnen sehen? Je nachdem hilft dir GROUP BY oder DISTINCT.

Tutavio

So helfen wir dir bei Modul 141

  • Wir bauen mit dir in einer Online-Session eine Heimlabor-VM auf und installieren MariaDB oder PostgreSQL Schritt für Schritt, inklusive typischer Stolpersteine bei Datenverzeichnis und Zeichensatz.
  • Wir prüfen deine Rechtevergabe und pg_hba.conf bzw. GRANT-Befehle und zeigen dir, wo Konten zu viel dürfen.
  • Wir spielen mit dir einen Notfall durch: Tabelle gelöscht, Restore auf 10:15 Uhr, Uhr läuft. Danach besprechen wir, was schneller gehen könnte.
  • Wir lesen deine Betriebsdokumentation gegen und testen, ob jemand Fremdes damit den Server übernehmen könnte.

Unverbindlich anfragen. Wir melden uns innert 24 Stunden.

Tutor:in für Modul 141 finden

Passende Module

Diese Seite ist eine eigene Lernhilfe von Tutavio und keine offizielle Modulbeschreibung. Nummer, Titel und Einordnung stammen aus den öffentlichen Bildungsplänen. Die verbindliche Modulidentifikation findest du im Modulbaukasten von ICT-Berufsbildung Schweiz.

Gratis-LektionNachhilfe