Heim  >  Artikel  >  Datenbank  >  Datenkomprimierungs-Backup-Technologie in MySQL

Datenkomprimierungs-Backup-Technologie in MySQL

王林
王林Original
2023-06-15 17:23:211834Durchsuche

Da die Datenmenge weiter zunimmt, wird die Sicherung der Datenbank immer schwieriger. Für die Sicherung sind nicht nur Datenintegrität und -konsistenz erforderlich, sondern auch die Sicherungsgeschwindigkeit und die Größe der Sicherungsdatei, um den tatsächlichen Anforderungen gerecht zu werden. Die Datenkomprimierungs-Backup-Technologie hat sich im Laufe der Zeit entwickelt und ist zu einem unverzichtbaren technischen Mittel für die Datenbanksicherung geworden.

MySQL ist derzeit eine der beliebtesten relationalen Datenbanken. Sein offizielles Backup-Tool mysqldump kann die Anforderungen an komprimierte Backups nicht erfüllen. Daher wird in diesem Artikel der detaillierte Prozess der Verwendung der Komprimierungsbefehle tar und gzip auf Linux-Systemen mit den entsprechenden Parametern vorgestellt, um eine MySQL-komprimierte Sicherung zu erreichen.

  1. Komprimierungs-Backup-Befehl

Auf Linux-Systemen ist tar ein sehr häufig verwendeter Komprimierungsbefehl. Seine Verwendung ist wie folgt:

tar [cxtzJvfpP] [name-of-archive] [files-or-directories-to-archive]

Darunter ist die Bedeutung jedes Parameters wie folgt:

  • c: Ein neues Archiv erstellen;
  • x: Dateien aus dem Archiv extrahieren;
  • t: Dateiliste auflisten das Archiv;
  • z: Pass gzip komprimiert/dekomprimiert Archive;
  • v: zeigt den Dateinamen an, wenn die Datei verarbeitet wird, beachten Sie das Nach f muss ein Leerzeichen stehen.
  • P: Behalten Sie die ursprünglichen Berechtigungen und Attribute der Datei bei.
  • Archivname: Geben Sie den Namen der komprimierten Datei an.
  • Zu archivierende Dateien oder Verzeichnisse: Geben Sie die zu komprimierenden Dateien oder Verzeichnisse an.
  • Was wir hier verwenden möchten, ist der Parameter czf, der bedeutet, ein neues TAR-Paket zu erstellen, es mit gzip zu komprimieren und den Dateinamen bei der Verarbeitung der Datei anzuzeigen. Der spezifische Befehl lautet wie folgt:
  • tar czf backup.tar.gz /path/to/backup/files/
  • Unter diesen gibt /path/to/backup/files/ die Dateien oder Verzeichnisse an, die gesichert werden sollen.
MySQL-Sicherungsbefehl

Bevor Sie MySQL sichern, müssen Sie einen Benutzer mit den Berechtigungen SELECT, SHOW VIEW, RELOAD, SUPER und LOCK TABLES erstellen. Am Beispiel des Root-Benutzers können Sie den folgenden Befehl verwenden, um einen Sicherungsbenutzer zu erstellen:

CREATE USER 'backupuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT SELECT, SHOW VIEW, RELOAD, SUPER, LOCK TABLES ON *.* TO 'backupuser'@'localhost';
FLUSH PRIVILEGES;
    Anschließend können Sie den folgenden Befehl verwenden, um die Datenbank zu sichern:
  1. mysqldump -u backupuser -p'mypassword' --single-transaction --skip-lock-tables dbname | gzip > backup.sql.gz
  2. Darunter sind --single-transaction und --skip-lock-tables-Parameter entsprechen MySQL-Transaktionen bzw. Tabellensperr-Backup-Einstellungen. Datenbankname stellt den Namen der zu sichernden Datenbank dar und backup.sql.gz ist der vollständige Name der nach der Sicherung gespeicherten Datei.

Automatisierte Sicherung

In praktischen Anwendungen ist die automatisierte Sicherung die gebräuchlichste und zuverlässigste Sicherungsmethode. Unter dem Linux-System können Sie den Befehl crontab verwenden, um den Sicherungsbefehl regelmäßig auszuführen und die Sicherungsdatei im angegebenen Verzeichnis zu speichern. Das Folgende ist ein Beispiel für die Durchführung einer Sicherung jeden Tag um 1 Uhr:

0 1 * * * tar czf /backup/dbbackup-`date +%Y-%m-%d`.tar.gz /path/to/backup/files/ && mysqldump -u backupuser -p'mypassword' --single-transaction --skip-lock-tables dbname | gzip > /backup/backup-`date +%Y-%m-%d`.sql.gz
    Dabei steht %Y für das Jahr, %m für den Monat und %d für das Datum. Der Befehl in Backticks erstellt automatisch eine neue Sicherung Dateinamen basierend auf den Datumsinformationen.
Sicherung wiederherstellen

Wenn Sie die Datenbank wiederherstellen müssen, können Sie den folgenden Befehl verwenden:

gunzip backup.sql.gz
    Extrahieren Sie die Sicherungsdatei und erhalten Sie die Sicherungsdatei im .sql-Format. Importieren Sie dann diese Datei in die MySQL-Datenbank:
  1. mysql -u root -p dbname < backup.sql
  2. Unter diesen steht dbname für den Namen der Datenbank, die Daten wiederherstellen muss.

Zusammenfassung

In diesem Artikel wird der detaillierte Prozess der Verwendung von tar und gzip in Kombination mit geeigneten Parametern zur Implementierung der MySQL-Sicherung unter dem Linux-System vorgestellt. Durch automatisiertes Backup kann die Backup-Verwaltung erheblich vereinfacht, die Effizienz und Zuverlässigkeit der Datenwiederherstellung verbessert werden und Benutzer können die Datensicherheit besser schützen.

Das obige ist der detaillierte Inhalt vonDatenkomprimierungs-Backup-Technologie in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn