MySQL / MariaDB / Percona XtraDB (+ Galera Cluster)
Percona XtraDB Cluster
Deadlock Monitoring mit pt-deadlock-logger
Unit-File anlegen: [Unit] Description=Start the Percona Toolkit Deadlock Logger After=network....
Vorbereitung zur Migration auf Percona XtraDB Cluster
Um eine vorhandene MySQL Datenbank zu Percona XtraDB Cluster zu migrieren müssen einige Vorausset...
wsrep Status überwachen
Als Script auf einer Cluster-Node ablegen. Gibt dauerhaft den aktuellen Wert der wsrep-Statusvari...
Percona APT Repository einrichten
Installationspaket für das Repository holen und installieren apt update apt install gnupg2 wge...
InnoDB Tablespace Cleanup mit pt-online-schema-change
Mit der Zeit wird das Datenfile (.ibd) einer InnoDB Tabelle durch das Hinzufügen und Löschen von ...
Allgemein
Datenbank und Benutzer anlegen (veraltet)
Einen neuen Benutzer (User superadmin kommend von IP-Adresse 123.123.123.123) mit vollen Rechten ...
Benutzertabelle als GRANT-Statements dumpen
Eine einfacherere Alternative wäre das Tool pt-show-grants aus dem Percona-Toolkit. Bei der Einr...
Datenbank und Benutzer löschen
Einen Benutzer inkl. Datenbank löschen (ab MySQL 5.0.2): DROP USER user1; DROP DATABASE userdb1...
InnoDB - ideale Logfile Größe herausfinden
von code.openark.com und MySQL Performance Blog Um den idealen Wert für innodb_log_file_size für...
Größe einer DB, Tabelle, aller DBs herausfinden
Ersetze 'YOUR_DATABASE_NAME' durch die gewünschte Datenbank. Größe aller Tabellen einer Datenban...
Passwort setzen oder ändern
mit „mysqladmin“ ein Passwort setzen oder ändern: mysqladmin -h 'hostname' -u root password 'neu...
Passwort vergessen
Wenn das Kennwort für 'root' verloren ging / vergessen wurde und sonst auch keine Adminuser exist...
MySQL-Datenbank umbenennen
Der ganz sichere Weg ist, die DB per mysqldump zu exportieren und wieder in die neue DB zu import...
mysqltuner - MySQL Performance Tuning Check-Script
MySQLTuner is ein Perlscript, das versucht die MySQL Konfiguration zu prüfen und Vorschläge zum T...
Schnell Platz schaffen
Wenn dein Server binlogs schreibt und die Disk voll läuft kann es helfen schnell Platz zu schaffe...
Ungenutzte Datenbanken finden
Dieses Snippet listet die neueste Datei in jedem Datenbankverzeichnis unterhalb von /var/lib/mysq...
Fehlerbehandlung
Replikationsfehler Errno: 1236
Replikationsfehler Errno: 1236: start replication from impossible position Slave I/O: Got fatal ...
Replikationsfehler Errno: 1580 ALTER Logtable
Nach einem Update von MySQL bei einer Master-Slave-Replikation konnte die Replikation auf einem S...
Replikationsfehler Errno: 1594 Relay log read failure
Wenn ein Server, auf dem ein MySQL-Replication-Slave läuft abstürzt, kann es passieren, dass die ...
Fehler bei ALTER TABLE Errno 150: Foreign key constraint is incorrectly formed
Dieser Fehler trat bei einem „ALTER TABLE `table` ENGINE = InnoDB“ auf (die Tabelle sollte von My...
InnoDB - defekte FRM Files wiederherstellen - Incorrect information in file
Sollten InnoDB-Datenbanken korrupt sein und auch keinen Dump mehr erlauben, da diese mit folgende...
Probleme mit Umlauten zwischen Datenbank und Webseite (UTF-8/latin1/ISO8859-1)
Bei der Wiederherstellung oder dem Umzug einer Datenbank kann es manchmal zu Problemen kommen. So...
Backup
Bestimmte Datenbanken vom Dump ausschließen
DBEXCLUDE=will_nicht MYSQL=$(mysql -N <<<"SHOW DATABASES" | grep -v ${DBEXCLUDE} | tr "\n" " ") ...
Dump einer einzelnen Datenbank
mysqldump -p --create-options -Q -c --add-drop-table --add-locks -F DATENBANKNAME > db-dump.sql ...
Extraktion einer einzelnen Datenbank oder Tabelle aus einem Fulldump
Eine einzelne Datenbank aus einem Fulldump direkt wiederherzustellen ist ganz einfach: # mysql -...
kompletten Dump eines MySQL-Servers erstellen
folgender Befehl erstellt einen kompletten Dump des MySQL-Servers (Parameter p weglassen, wenn lo...
Mit netcat einen mysqldump übers Netzwerk schicken
Wenn mal der Diskspace knapp wird, aber man trotzdem einen Fulldump der MySQL-DB braucht, lässt s...
komplettes MySQL-Dumpfile einspielen
Über das folgende Kommando läßt sich ein komplettes MySQL-Backup einspielen. Idealerweise wird de...
Replikation
MySQL Master/Slave-Replikation einrichten (online) (veraltet)
Achtung, dieses Feature wird von aktuellen MySQL Versionen nicht mehr unterstützt. Auf dem Maste...
MySQL Master/Slave-Replikation einrichten (offline)
Einfach und umkompliziert eine MySQL Master/Slave-Replikation einrichten (OFFLINE, empfohlen bei ...
Master-Master-Replikation
Dieser Artikel zeigt, wie man mit 2 (oder mehr) MySQL-Servern eine echte Master-Master-Replikatio...
Master-Slave-Replikation einrichten mit innobackupex
Mit innobackupex läßt sich auf einfache Weise im Live-Betrieb eine Master-Slave-Replikation einri...
kompakte MySQL my.cnf Vorlage für neue Server (MySQL-/MariaDB-/Percona-Server 5.5
Diese Anleitung wird nicht weiter aktualisiert. Bitte wechselt auf die Versionen 5.7 oder 8.0 Di...
kompakte MySQL my.cnf Vorlage für neue Server (MySQL-/MariaDB-/Percona-Server 5.6)
kompakte MySQL my.cnf Vorlage für neue Server (MySQL-/MariaDB-/Percona-Server 5.6) Diese Anleitu...
kompakte MySQL my.cnf Vorlage für neue Server (MySQL-/MariaDB-/Percona-Server 5.7)
Dieses Beispiel ist für kleine bis mittelgroße Setups geeignet. Die Vorlage kann einfach nach /et...
MySQL mit anderem Datenverzeichnis auf speziellem Port starten
Um MySQL z.B. aus einem xtrabackup-Restore parallel zu einer laufenden Datenbank auf einem andere...