|
|
Veröffentlicht am 30.09.2021 14:42:47
|
|
|
|

Eine geplante Datenbanksicherung ist für jeden Entwickler ein Muss, und regelmäßige Sicherungsdaten können das Problem lösen, versehentlich einige Daten zu löschen, die auf einen bestimmten Zeitpunkt wiederhergestellt werden können, um Verluste zu minimieren.
MySQL bietet ein praktisches Werkzeug zum Exportieren von Datenbankdaten und Dateien aus der Kommandozeile, mysqldump, mit dem Datenbanken über die Kommandozeile exportiert werden können.
Rezension:
Dieser Artikel wird verwendetCentOS 7Umgebung, entfernte Datenbanken über MySQLDump auf die lokale Datenbank zu sichern. Wenn wir den Befehl mysqldump direkt ausführen, lautet der Fehler wie folgt:
-bash: mysqldump: Befehl nicht gefunden Hier wird ein Open-Source-Drittanbieterpaket empfohlen: Mydumper, ein leistungsstarkes Multithreaded-Backup- und Wiederherstellungstool für MySQL und Drizzle. Schneller als die Backup- und Wiederherstellungsgeschwindigkeit von MysqlDump.
GitHub-Adresse:Der Hyperlink-Login ist sichtbar.
Der Installationsbefehl lautet wie folgt:
Auf diese Weise können sowohl mydumper- als auch myloader-Befehle bereits verwendet werden, mydumper ist für den Export verantwortlich und myloader für den Import, wie in der untenstehenden Abbildung dargestellt:
mydumperParametererklärung
-B, --Datenbank Die zu sichernde Datenbank, falls nicht angegeben, sichere alle Bibliotheken -T, --tables-list Die Tabellen, die gesichert werden müssen, sind durch Kommas getrennt -o, --outputdir, um das Verzeichnis zu sichern, in dem die Datei ausgegeben wird -s, --Statement-size Die Anzahl der Bytes der von --Statement-Definition erzeugten Bytes der Einfüge-Anweisung beträgt standardmäßig 1000000 -r, --Zeilen Wenn eine Tabelle in Zeilen unterteilt wird, geben Sie die Anzahl der Blockzeilen an; diese Option schaltet --chunk-filesize aus -F, --chunk-filesize Wenn eine Tabelle nach Größe gespannt wird, ist die angegebene Blockgröße in MB angegeben -c, --komprimieren, komprimieren, komprimieren, die Ausgabedatei komprimieren -e, --build-empty-files, wenn die Tabellendaten leer sind oder es eine leere Datei erzeugt (standardmäßig keine Daten, nur die Tabellenstrukturdatei) -x, --regex ist dasselbe wie der reguläre Ausdruck 'db.table' -i, --ignorieren-Engines ignorieren Speicher-Engines und verwenden dicke Partitionierung -m, --no-schemas sichern keine Tabellenstrukturen -k, --No-Locks verwenden keine temporären gemeinsamen Read-Only-Sperren, und diese Option führt zu Dateninkonsistenzen --less-locking reduziert die Zeit, die benötigt wird, um Sperren auf InnoDB-Tabellen anzuwenden (die Mechanik dieses Musters wird unten ausführlich erklärt) -l, --long-query-guard setzt die Timeout-Zeit für lange Abfragen, die Backups blockieren, in Sekunden, und standardmäßig sind 60 Sekunden (mydumper verlässt standardmäßig nach dem Timeout). --Kill-Long-Queries beenden lange Anfragen (ohne zu beenden) -b, --binlogs exportieren binlogs -D, --Daemon aktivieren den Daemon-Modus, der die Datenbank in bestimmten Abständen ohne Unterbrechung sichert -I, --snapshot-interval dump Snapshot-Intervallzeit, Standard 60s, muss im Daemon-Modus sein -L, --logfile verwendet den Logdateinamen (das von mydumper generierte Logbuch) und verwendet standardmäßig Standardausgabe --TZ-UTC über Zeitzonen hinweg ist eine verwendete, aber nicht erklärte Option --skip-tz-utc ID --use-savepoints Verwenden Sie Speicherpunkte, um die Sperrzeit zu reduzieren, die durch Metadatenerfassung verursacht wird, die SUPER-Berechtigungen erfordert --success-on-1146 Nicht erhöht die Fehleranzahl und Warnung statt Kritisch, falls eine Tabelle nicht existiert -h, --host Der Hostname der Verbindung -u, --user sichern Sie den verwendeten Benutzer -p, --Passwort Passwort -P, --Port Port -S, --Socket Die Socket-Datei bei Verwendung von Socket-Kommunikation -t, --Threads Die Standardanzahl der aktivierten Backup-Threads beträgt 4 -C, --compress-protocol komprimiert Daten, die mit MySQL kommunizieren -V, --Version zeigt die Versionsnummer an -v, --ausführliches Ausgabeinformationsmuster, 0 = stumm, 1 = Fehler, 2 = Warnungen, 3 = Info, standardmäßig 2 myloaderParametererklärung
-d, --verzeichnisordner für die Sicherungsdatei -q, --Abfragen pro Transaktion Die Anzahl der pro Sache ausgeführten Abfragen beträgt standardmäßig 1000 -o, --overwrite-tables Wenn die zu wiederherstellende Tabelle existiert, verlasse zuerst die Tabelle, verwende diesen Parameter und sichere die Tabellenstruktur, wenn du eine Sicherung brauchst -B, --Datenbank Die Datenbank, die wiederhergestellt werden muss -e, --enable-binlog ermöglicht binären Logs die Wiederherstellung von Daten -H, --Hosthost -u, --Benutzer wiederhergestellt -p, --Passwort Passwort -P, --Port Port -S, --Sockel-Sockeldatei -t, --threads stellt die Anzahl der verwendeten Threads wieder her, standardmäßig 4 -C, --compress-protocol -V, --Version zeigt die Version an -v, --ausführlicher Ausgangsmodus, 0 = stumm, 1 = Fehler, 2 = Warnungen, 3 = Info, standardmäßig 2 Test-Backups
Der Datenbank-Exportbefehl lautet wie folgt:
Nach der Ausführung erstellt mydumper eine bestimmte Verzeichnisadresse, die wir durch Parameter weiterleiten, welche eine Metadatendatei enthält, die den binären Logdateinamen zum Zeitpunkt der Sicherung und den Standort des Protokolls aufzeichnet. Jede Tabelle enthält zwei Backup-files:database.table-schema.sql eine Tabellenstrukturdatei und database.table.sql Tabellendatendatei.
Planmäßige Backups
Die Referenzartikel sind wie folgt:
Lassen Sie uns ein neues Shell-Skript namens :backup_uat.sh erstellen, wie folgt:
Erteile Ausführungsgenehmigungen:
Fügen Sie eine Aufgabe hinzu
Die Aufgabe wird jeden Tag um 00:10 Uhr ausgeführt
Laden Sie die Konfiguration neu
(Ende)
|
Vorhergehend:Grundlagen der Linux-Umgebung: Der Unterschied zwischen der Installation von EL6, EL7 und EL8 in RPM-PaketenNächster:RAID-Technologie erklärt – RAID0, RAID1, RAID3, RAID5, RAID6, RAID10 Vergleich
|