Ü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 übertragen Sie Dateien zwischen Docker-Container und lokalem Computer
>>: Vue3+TypeScript kapselt Axios und implementiert Anforderungsaufrufe
Der Einsatz von Containern kommt immer häufiger v...
Schauen wir uns zunächst den Code an: ALTER TABLE...
Um mit Standard-CSS3 den Schatteneffekt eines Ele...
Einige Befehlsunterschiede zwischen den Versionen...
Inhaltsverzeichnis 1. Komponenten mit Funktionen ...
Bearbeiten Sie docker-compose.yml und fügen Sie d...
<br />Grün liegt zwischen Gelb und Blau (kal...
In diesem Artikelbeispiel wird der spezifische Co...
Lösung für das Problem der automatischen Trennung...
Inhaltsverzeichnis Schmutzige Seiten (Speichersei...
<meta name="viewport" content="B...
Inhaltsverzeichnis 1. Was ist JSON 1.1 Array-Lite...
Inhaltsverzeichnis 1. Standortobjekt 1. URL 2. Ei...
1. löschen delete ist die einzige wirkliche Mögli...
Inhaltsverzeichnis MutationObserver API Merkmale ...