MySQL: Anleitungen und Praxiswissen | Seite 7 | mironsoft Blog
MySQL
-
14.07.2025
Ein unverschlüsseltes Datenbank-Backup, das in einem externen Speicher oder bei einem Cloud-Anbieter landet, ist ein vollständiger Abzug aller Kundendaten, sobald ein Angreifer Zugriff auf diesen Speicher erlangt. Dieser Artikel zeigt, wie Percona XtraBackup mit den --encrypt-Optionen verschlüsselte Backups erzeugt, wie Schlüssel sicher verwaltet werden, wie der Wiederherstellungs-Workflow mit Entschlüsselung abläuft und wie sich eine Aufbewahrungsstrategie für mehrere Backup-Generationen mit unterschiedlichen Schlüsseln aufbauen lässt.
-
13.07.2025
Global Transaction Identifiers lösen ein Problem, das jeder kennt, der nach einem Crash manuell die richtige Binlog-Position für CHANGE MASTER TO gesucht hat. Wer eine bestehende, positionsbasierte Replikation ohne Datenverlust auf GTIDs umstellt, gewinnt automatisches Failover-Handling und verliert eine ganze Klasse von Betriebsfehlern gleichzeitig.
-
24.06.2025
Ein MySQL-Major-Version-Upgrade ist kein einfacher Paket-Update-Befehl, sondern eine Einbahnstraße mit mehreren stillen Verhaltensänderungen, die erst nach dem Upgrade sichtbar werden. Zwischen MySQL 5.7 und 8.0 liegen Änderungen am Optimizer, an der Standard-Zeichenkodierung, an der Authentifizierung und am gesamten Query-Cache-Subsystem, die einen produktiven Magento-Shop empfindlich treffen können, wenn sie vor dem Upgrade nicht bekannt sind.
-
21.06.2025
Ein Thread pro Verbindung funktioniert gut, solange die Anzahl gleichzeitiger Verbindungen überschaubar bleibt. Sobald PHP-FPM-Pools oder ähnliche Setups tausende parallele Verbindungen erzeugen, kippt dieses Modell und der Server verliert Durchsatz, statt mehr zu leisten. Das Thread-Pool-Plugin begrenzt die tatsächlich gleichzeitig arbeitenden Threads gezielt.
-
12.06.2025
Das Binlog-Format entscheidet darüber, ob MySQL-Replikation bei nicht-deterministischen Statements zuverlässig bleibt oder still auseinanderdriftet. STATEMENT, ROW und MIXED unterscheiden sich fundamental in Größe, Sicherheit und Nachvollziehbarkeit, und die Wahl des richtigen Formats ist eine der folgenreichsten Konfigurationsentscheidungen in jeder MySQL-Installation.
-
10.06.2025
Ein Migrations Runner sorgt dafür, dass Datenbankschemata über mehrere Umgebungen hinweg nachvollziehbar und in der richtigen Reihenfolge verändert werden. Dieser Artikel zeigt, wie ein eigener Migrations Runner in Bash entsteht, mit Tracking-Tabelle, Checksum-Prüfung, transaktionaler Ausführung und einer schlanken Kommandozeilen-Schnittstelle für up, down und status.
-
10.06.2025
Mehrere Gigabyte Swap-Nutzung bei gleichzeitig reichlich freiem Arbeitsspeicher in free -h wirkt paradox, ist aber meistens proaktives, gewolltes Kernel-Verhalten und kein Fehler. Dieser Leitfaden zeigt, wie man mit Pressure Stall Information, vmstat und smaps zwischen harmlosem und tatsächlich problematischem Swapping unterscheidet, welche Rolle Swappiness wirklich spielt und wann MySQL-Buffer-Pool-Konfiguration die eigentliche Ursache ist.
-
07.06.2025
Das Percona Toolkit ist eine Sammlung von Kommandozeilenwerkzeugen, die genau die Luecken schliessen, die MySQL selbst offenlaesst: Schema-Aenderungen ohne Sperren, systematische Slow-Query-Analyse und verlaessliche Replikationskonsistenz. Wer diese Tools gezielt gegen eine Magento-Datenbank einsetzt, gewinnt Kontrolle ueber Bereiche, die sonst nur mit riskanten manuellen Eingriffen zu handhaben waeren.
-
04.06.2025
Optimizer-Hints wie USE INDEX, FORCE INDEX und STRAIGHT_JOIN greifen direkt in die Entscheidungen des Query-Optimizers ein und können bei falscher Statistik echte Probleme lösen, aber auch neue schaffen, wenn sie unreflektiert eingesetzt werden. Dieser Artikel zeigt die Syntax, die Wirkung und die klare Grenze zwischen legitimer Optimierung und riskantem Code Smell.
-
02.06.2025
MySQL puffert Datenbankseiten bereits im InnoDB Buffer Pool im RAM. Nutzt der Linux-Kernel gleichzeitig seinen eigenen Page Cache fuer dieselben Daten, entsteht Double Buffering: derselbe Speicherinhalt liegt doppelt im Arbeitsspeicher, ohne zusaetzlichen Nutzen. O_DIRECT umgeht den Page Cache gezielt und uebergibt InnoDB die volle Kontrolle ueber das Caching, waehrend Buffered I/O in bestimmten Szenarien trotzdem die pragmatischere Wahl bleibt.