- Installation und Konfiguration unter Linux, Windows und Docker:
- Bezugsquellen, Planung Installation vom Sourcecode
- Versionsunterschiede innerhalb der Versionen und zwischen MySQL und MariaDB
- Installation von MySQL und MariaDB via Package-Manager
- Installation unter Docker (Docker-Image und Docker-Files)
- Konfiguration von MySQL und MariaDB, Konfigurationsdatei und Aufrufparameter
- Administrationswerkzeuge, Administration via Shell und GUI-Umgebung
- Konfiguration zur Laufzeit über Konfigurationsvariablen
- Einrichten als Systemdienst
Administration und Datenbankverwaltung:
- Benutzerverwaltung, Privilegien und Zugriffsrechte
- Logdateien (Fehlerlogdatei, Abfragelogdatei und Updatelogdatei)
- BinärLog für Recovery und Replikation
- Datensicherung (Backup) und Wiederherstellung (Restore)
- Kommandozeilen-Tools (Scripte)
- Grafisches Tool (MySQL Workbench)
- Informationen sammeln via SHOW und dem INFORMATION_SCHEMA
- Überblick über die Speicherengines: MyISAM, InnoDB und Merge
Datentypen und Funktionen:
- Aufbau des MySQL- und MariaDB-DBMS (Datenbank-Management-System)
- Datentypen (Feldtypen)
- Transaktionssteuerung, Transaktionenkommandos und Savepoints
- Autoinkrement/Sequenzen, Trigger
- Stored Procedures
Programmierung:
- Java-Schnittstellen JDBC und JPA
- Python- / Perl-Schnittstelle
MySQL und MariaDB - Performance und Monitoring:
- Optimierung und Tuning der Abfragen
- Indices und Normalisierung vs. Effizienz
- Caches und Buffer, Query Cache
- Profiling
- Stresstest mit JMeter
MethodeVortrag, Übungen, Praktikum am System. Plattform: Linux, Windows oder Docker.
LernzieleNach dem Seminar "MySQL und MariaDB - Administration und Entwicklung" sind Sie in der Lage, MySQL und MariaDB Datenbankserver zu administrieren. Sie können sämtliche Schritte von der Planung über die Installation bis zur Wartung und Fehlersuche durchführen. Darüber hinaus werden Sie die MySQL- und MariaDB-Datentypen, -Funktionen und die Transaktionssteuerung ebenso kennen lernen wie die MySQL- und MariaDB-API für die Entwicklung von Client/Server- bzw. Web-Anwendungen.
ZielgruppenAdministratoren, Entwickler, DevOps Engineers.