Linux führt jeden Tag eine automatische und geplante Sicherung der MySQL-Datenbank durch

Linux führt jeden Tag eine automatische und geplante Sicherung der MySQL-Datenbank durch

Überblick

Backup ist die Grundlage der Notfallwiederherstellung. Es bezieht sich auf den Vorgang des Kopierens aller oder eines Teils des Datensatzes von der Festplatte oder dem Array des Anwendungshosts auf andere Speichermedien, um Datenverlust aufgrund von Systembetriebsfehlern oder Systemausfällen zu verhindern. Für manche Websites und Systeme ist die Datenbank alles. Daher ist es von entscheidender Bedeutung, die Datenbank zu sichern!

Was ist Backup?

這里寫圖片描述

Warum ein Backup?

這里寫圖片描述

Aufbau eines Notfallwiederherstellungsplans

這里寫圖片描述

Speichermedien

CD

Band

Festplatte

Festplatten-Array

DAS: Direct Attached Storage

NAS: Network Attached Storage

SAN: Storage Area Network

Cloud-Speicher

Hier verwenden wir hauptsächlich die lokale Festplatte als Speichermedium, um das Hinzufügen und Verwenden geplanter Aufgaben und grundlegender Sicherungsskripte zu erklären. Der einzige Unterschied zu anderen Speichermedien besteht darin, dass die Zugriffsmethode des Mediums möglicherweise geringfügig anders ist.

1. Überprüfen Sie den Speicherplatz:

Da es sich um eine geplante Sicherung handelt, müssen Sie eine Festplatte mit ausreichend Speicherplatz auswählen, um Sicherungsfehler und Datenverlust aufgrund von Speicherplatzmangel zu vermeiden!

Das Speichern auf der aktuellen Festplatte ist am einfachsten, wird aber am wenigsten empfohlen. Wenn der Server über mehrere Festplatten verfügt, ist es am besten, das Backup auf einer anderen Festplatte zu speichern. Wenn die Bedingungen es erlauben, wählen Sie ein besseres und sichereres Speichermedium.

# df -h
Verwendete Dateisystemgröße Verfügbare Nutzung% Eingebunden auf
/dev/mapper/VolGroup-lv_root 50 G 46 G 1,6 G 97 % /
tmpfs 1,9 G 92 K 1,9 G 1 % /Entwickler/shm
/dev/sda1 485 M 39 M 421 M 9 % /boot
/dev/mapper/VolGroup-lv_home 534 G 3,6 G 503 G 1 % /home

2. Erstellen Sie ein Backup-Verzeichnis:

Aus dem obigen Befehl können wir ersehen, dass in /home genügend Speicherplatz vorhanden ist. Daher können wir in Erwägung ziehen, die Sicherungsdateien in /home zu speichern.

CD /Home
mkdir-Sicherung
CD-Backup

3. Erstellen Sie ein Backup-Shell-Skript:

Beachten Sie, dass Sie DatabaseName in den folgenden Befehlen durch den tatsächlichen Datenbanknamen ersetzen sollten.

Natürlich können Sie auch Ihre eigenen Namenskonventionen verwenden!

vi bkDatenbankname.sh

Geben Sie Folgendes ein bzw. fügen Sie es ein:

#!/bin/bash
mysqldump -uusername -ppassword Datenbankname > /home/backup/Datenbankname_$(date +%Y%m%d_%H%M%S).sql

So komprimieren Sie das Backup:

#!/bin/bash
mysqldump -uusername -ppassword Datenbankname | gzip > /home/backup/Datenbankname_$(date +%Y%m%d_%H%M%S).sql.gz

Beachten:

Ersetzen Sie den Benutzernamen durch den tatsächlichen Benutzernamen.

Ersetzen Sie das Passwort durch Ihr tatsächliches Passwort.

Ersetzen Sie DatabaseName durch den tatsächlichen Datenbanknamen.

4. Ausführbare Berechtigungen hinzufügen:

chmod u+x bkDatenbankname.sh

Führen Sie nach dem Hinzufügen der ausführbaren Berechtigungen zunächst das Skript aus, um festzustellen, ob Fehler vorliegen und ob es normal verwendet werden kann.

./bkDatenbankname.sh

5. Geplante Aufgaben hinzufügen

Crontab erkennen oder installieren

Bestätigen Sie, ob crontab installiert ist:

Wenn der Crontab-Befehl „Befehl nicht gefunden“ meldet, bedeutet dies, dass er nicht installiert ist.

# crontab
-bash: crontab: Befehl nicht gefunden

Wenn crontab nicht installiert ist, müssen Sie es zuerst installieren. Die genauen Schritte finden Sie unter:

Verwenden Sie den Befehl yum, um crontab, ein geplantes Taskprogramm, in CentOS zu installieren

Verwenden Sie den Befehl rpm, um das geplante Taskprogramm crontab von der CentOS-Systemfestplatte zu installieren

Hinzufügen einer geplanten Aufgabe

Führen Sie den Befehl aus:

crontab -e

Zu diesem Zeitpunkt können Sie die geplante Aufgabe genauso bearbeiten, als würden Sie den vi-Editor verwenden.

Folgendes eingeben und speichern:

*/1 * * * * /home/backup/bkDatenbankname.sh

Was bedeutet das konkret?

Dies bedeutet, dass das Shell-Skript „/home/backup/bkDatabaseName.sh“ einmal pro Minute ausgeführt wird.

6. Testen Sie, ob die Aufgabe ausgeführt wird

Das geht ganz einfach: Wir führen den Befehl „ls“ mehrmals aus und schauen, ob die Datei nach einer Minute erstellt ist!

Wenn die Aufgabenausführung fehlschlägt, können Sie das Aufgabenprotokoll anzeigen, indem Sie den folgenden Befehl ausführen:

# tail -f /var/log/cron

Die Ausgabe sieht ungefähr wie folgt aus:

30. September 14:01:01 Bogon Run-Parts (/etc/cron.hourly) [2503]: Start von 0ancron
30. September 14:01:01 bogon run-parts(/etc/cron.hourly)[2512]: fertig 0anacron
30. September 15:01:01 bogon CROND[3092]: (root) CMD (run-parts /etc/cron.hourly)
30. September 15:01:01 Bogon Run-Parts (/etc/cron.hourly) [3092]: Start von 0anacron
30. September 15:01:02 bogon run-parts(/etc/cron.hourly)[3101]: fertig 0anacron
30. September 15:50:44 bogon crontab[3598]: (root) BEARBEITEN BEGINNEN (root)
30. September 16:01:01 bogon CROND[3705]: (root) CMD (run-parts /etc/cron.hourly)
30. September 16:01:01 Bogon Run-Parts (/etc/cron.hourly) [3705]: Start von 0anacron
30. September 16:01:01 bogon run-parts(/etc/cron.hourly)[3714]: fertig 0anacron
30. September 16:15:29 bogon crontab[3598]: (root) ENDE BEARBEITEN (root)

Zusammenfassen

Das Obige ist die Einführung des Herausgebers in die tägliche automatische Sicherung der MySQL-Datenbank unter Linux. Ich hoffe, es wird für alle hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • So richten Sie eine automatische tägliche Datenbanksicherung in Linux ein
  • So sichern Sie die MySQL-Datenbank in Linux täglich automatisch
  • Eine einfache Methode zum Implementieren einer geplanten Sicherung einer MySQL-Datenbank unter Linux
  • Linux sichert regelmäßig die MySQL-Datenbank und löscht vorherige Sicherungsdateien (empfohlen)
  • Implementierungsskript für geplante Datenbanksicherung unter Linux

<<:  So übertragen Sie Dateien zwischen Docker-Container und lokalem Computer

>>:  Vue3+TypeScript kapselt Axios und implementiert Anforderungsaufrufe

Artikel empfehlen

Zabbix überwacht die Konfiguration der Docker-Anwendung

Der Einsatz von Containern kommt immer häufiger v...

Der Unterschied zwischen Schlüssel und Index in MySQL

Schauen wir uns zunächst den Code an: ALTER TABLE...

Die wichtigsten Unterschiede zwischen MySQL 4.1/5.0/5.1/5.5/5.6

Einige Befehlsunterschiede zwischen den Versionen...

Zusammenfassung der Methode von React zum Erstellen von Komponenten

Inhaltsverzeichnis 1. Komponenten mit Funktionen ...

Detaillierter Prozess der Installation von Logstash in Docker

Bearbeiten Sie docker-compose.yml und fügen Sie d...

Native JS-Implementierung der Slider-Intervallkomponente

In diesem Artikelbeispiel wird der spezifische Co...

Was sind MySQL-Dirty-Pages?

Inhaltsverzeichnis Schmutzige Seiten (Speichersei...

Vorteile und Nachteile von JSON sowie Einführung in die Verwendung

Inhaltsverzeichnis 1. Was ist JSON 1.1 Array-Lite...

JavaScript BOM-Standortobjekt + Navigatorobjekt + Verlaufsobjekt

Inhaltsverzeichnis 1. Standortobjekt 1. URL 2. Ei...

So löschen Sie eine Eigenschaft eines Objekts in JavaScript

1. löschen delete ist die einzige wirkliche Mögli...