Verwenden Sie Mysqldump Gzip, um eine komprimierte Datei für eine MySQL-Datenbank zu erstellen

Mehvish Ashiq 30 Januar 2023
  1. Verwenden Sie mysqldump gzip, um eine komprimierte Datei für eine MySQL-Datenbank zu erstellen
  2. Verwenden Sie crontab, um komprimierte Backups zu automatisieren
Verwenden Sie Mysqldump Gzip, um eine komprimierte Datei für eine MySQL-Datenbank zu erstellen

Dieses Tutorial zeigt die Verwendung von mysqldump gzip mit und ohne crontab, um komprimierte Backups einer bestimmten MySQL-Datenbank zu erstellen.

Verwenden Sie mysqldump gzip, um eine komprimierte Datei für eine MySQL-Datenbank zu erstellen

mysqldump und gzip sind Dienstprogramme des Linux-Betriebssystems. Der mysqldump wird verwendet, um ein Backup der Datenbank zu erstellen.

Wir verwenden das gzip wie folgt, wenn wir das Backup als komprimierte Datei im aktuellen Verzeichnis speichern können.

Beispielcode eins:

-- Syntax: mysqldump -u username -ppassword db_name | gzip > dumpfilename.sql.gz
mysqldump -u root -p test | gzip > dump_test_db.sql.gz

Verwenden Sie nun den Befehl ls, um zu bestätigen, dass die komprimierte Datei erstellt wurde. Lassen Sie uns ein weiteres Beispiel haben, bei dem Daten durch verschiedene Dateien gehen und in der letzten Datei gespeichert werden.

Beispielcode zwei:

-- Syntax: mysqldump -u username -ppassword db_name | gzip > file1.gz > file2.gz
mysqldump -u root -p test | gzip > file1.gz > file2.gz > file3.gz

Ausgabe:

$> ls -l
-rw-r--r--  1 root  root     0 14:35 21 May file1.gz
-rw-r--r--  1 root  root     0 14:35 21 May file2.gz
-rw-r--r--  1 root  root   453 14:35 21 May file3.gz

In diesem Beispiel wird mysqldump ausgeführt und die generierte Ausgabe mit dem Pipe-Symbol (|) umgeleitet. Dann sendet die Pipe die Standardausgabe als Standardeingabe an den Befehl gzip.

Das > ist der Ausgabeumleitungsoperator, der die Datenumleitung fortsetzt, bis der letzte Dateiname gefunden wird, und dies wäre die Datei, in der die Daten gespeichert werden.

Siehe die oben angegebene Ausgabe; die letzte Datei ist Datei3, die Daten der Grösse 453 enthält, während die Grösse von Datei1 und Datei2 0 ist. Hier ist eine detaillierte Anleitung über die verschiedenen Parameter des gzip und ihre Verwendung.

Wir können die komprimierten Backups auch mit crontab automatisieren. Lassen Sie uns das im folgenden Abschnitt lernen.

Verwenden Sie crontab, um komprimierte Backups zu automatisieren

Wir erstellen einen Cron-Job, um das Verfahren zum Erstellen komprimierter Backups der Datenbank zu automatisieren, wobei der Cron-Job den Befehl mysqldump zu dem von Ihnen festgelegten Zeitpunkt ausführt.

Wir müssen die Schritte befolgen, um automatisierte komprimierte Sicherungen für die MySQL-Datenbank per Cron-Job einzurichten.

Schritt 1: Erstellen Sie eine .my.cnf-Datei im Home-Verzeichnis des Benutzers.

sudo nano ~/.my.cnf

Schreiben Sie den genauen Text wie unten angegeben.

[client]
user = db_username
password = db_password

Vergessen Sie nicht, db_username und db_password mit Ihren Zugangsdaten zu aktualisieren. Beispielsweise lautet der Benutzername root und das Passwort 12345.

Beispielcode:

[client]
user = root
password = 12345

Sobald dies erledigt ist, speichern und beenden Sie die Datei.

Schritt 2: Beschränken Sie die Berechtigung der Anmeldeinformationsdatei. Auf diese Weise hat der angegebene Benutzer Zugriff darauf.

$ chmod 600 ~/.my.cnf

Schritt 3: Als nächstes erstellen Sie ein Verzeichnis, um alle Backups an einem Ort zu speichern.

$ mkdir ~/database_backups

Schritt 4: Öffnen Sie nun die crontab-Datei.

$ crontab -e

Schreiben Sie den folgenden Job in die soeben geöffnete crontab-Datei. Es erstellt täglich um 3 Uhr morgens komprimierte Datenbanksicherungen.

Im folgenden Job ist der Benutzername root, der Datenbankname test und der Ordner database_backups speichert alle Backups.

$ 0 3* * * /usr/bin/mysqldump -u root test | gzip > /home/root/database_backups/test-$(date +\%Y\%m\%d).gz
Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

Verwandter Artikel - MySQL Dump