1. MySQL-Datensicherung 1.1. mysqldump-Befehl zum Sichern von DatenMySQL bietet mit mysqldump ein praktisches Tool zum Exportieren von Datenbankdaten und -dateien über die Befehlszeile. Wir können den Datenbankinhalt direkt über die Befehlszeile exportieren und sichern. Werfen wir zunächst einen kurzen Blick auf die Verwendung des Befehls mysqldump: #MySQLdump häufig verwendet mysqldump -u root -p --databases Datenbank 1 Datenbank 2 > xxx.sql 1.2. Allgemeine Betriebsbeispiele für mysqldump1. Sichern Sie die Daten und die Struktur aller Datenbanken mysqldump -uroot -p123456 -A > /data/mysqlDump/mydb.sql 2. Sichern Sie die Struktur der gesamten Datenbank (Parameter -d hinzufügen) mysqldump -uroot -p123456 -A -d > /data/mysqlDump/mydb.sql 3. Sichern Sie alle Datenbankdaten (Parameter -t hinzufügen) mysqldump -uroot -p123456 -A -t > /data/mysqlDump/mydb.sql 4. Sichern Sie die Daten und die Struktur einer einzelnen Datenbank (Datenbankname mydb) mysqldump -uroot-p123456 mydb > /data/mysqlDump/mydb.sql 5. Sichern Sie die Struktur einer einzelnen Datenbank mysqldump -uroot -p123456 mydb -d > /data/mysqlDump/mydb.sql 6. Daten einer einzelnen Datenbank sichern mysqldump -uroot -p123456 mydb -t > /data/mysqlDump/mydb.sql 7. Sichern Sie die Daten und die Struktur mehrerer Tabellen (die Methode zum separaten Sichern von Daten und Strukturen ist dieselbe wie oben). mysqldump -uroot -p123456 mydb t1 t2 > /data/mysqlDump/mydb.sql 8. Sichern Sie mehrere Datenbanken gleichzeitig mysqldump -uroot -p123456 --databases db1 db2 > /data/mysqlDump/mydb.sql 1.3. MySQL-Backup-Inhalte wiederherstellenEs gibt zwei Möglichkeiten zur Wiederherstellung. Die erste ist die MySQL-Befehlszeile, die zweite besteht darin, die Wiederherstellung über die SHELL-Zeile abzuschließen. 1. Geben Sie zur Wiederherstellung Folgendes in die Systembefehlszeile ein: mysql -uroot -p123456 < /data/mysqlDump/mydb.sql 2. Nachdem Sie sich beim MySQL-System angemeldet haben, verwenden Sie den Quellbefehl, um die Datei im entsprechenden System zu finden und wiederherzustellen: mysql> Quelle /data/mysqlDump/mydb.sql 2. Schreiben Sie Skripte zur Verwaltung von Backup-DatenbankdateienUnter Linux werden BASH-Skripte normalerweise zum Schreiben des auszuführenden Inhalts verwendet, und der Befehl crontab wird zum Ausführen des Befehls zu einem geplanten Zeitpunkt verwendet, um die automatische Protokollgenerierung zu realisieren. Die folgende Codefunktion dient zum Sichern von MySQL und sichert in Verbindung mit crontab die täglichen MySQL-Datenbankdatensätze des letzten Monats (31 Tage). 2.1. Schreiben Sie BASH, um eine feste Anzahl von Sicherungsdateien zu verwaltenVerwenden Sie unter Linux vi oder vim, um den Skriptinhalt zu schreiben, und benennen Sie ihn: mysql_dump_script.sh #!/bin/bash #Speichern Sie die Anzahl der Backups, sichern Sie 31 Tage Datenanzahl = 31 #Backup-Speicherpfad backup_dir=/root/mysqlbackup #Datum dd=`Datum +%Y-%m-%d-%H-%M-%S` #Sicherungstool tool=mysqldump #Benutzername Benutzername=root # Passwort password = TankB214 #Die zu sichernde Datenbank database_name=edoctor #Falls der Ordner nicht existiert, erstellen Sie ihn, wenn [ ! -d $backup_dir ]; Dann mkdir -p $backup_dir; fi #Einfache Möglichkeit, mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql zu schreiben $tool -u $Benutzername -p$Passwort $Datenbankname > $Sicherungsverzeichnis/$Datenbankname-$dd.sql #Schreiben, um Sicherungsprotokoll zu erstellen echo "create $backup_dir/$database_name-$dd.dupm" >> $backup_dir/log.txt #Suchen Sie das Backup, das gelöscht werden muss delfile=`ls -l -crt $backup_dir/*.sql | awk '{print $9 }' | head -1` #Beurteilen Sie, ob die aktuelle Anzahl der Backups größer als $number ist Anzahl=`ls -l -crt $backup_dir/*.sql | awk '{print $9 }' | wc -l` wenn [ $Anzahl -gt $Zahl ] Dann #Löschen Sie das am frühesten erstellte Backup und behalten Sie nur die Anzahl der Backups rm $delfile #Schreiben Sie das Löschdateiprotokoll echo "delete $delfile" >> $backup_dir/log.txt fi Die Hauptbedeutungen des obigen Codes sind wie folgt: 1. Legen Sie zunächst verschiedene Parameter fest, wie beispielsweise die maximale Anzahl der zu sichernden Nummern, den Sicherungspfad, den Benutzernamen, das Passwort usw. 2. Führen Sie den Befehl mysqldump aus, um die Sicherungsdatei zu speichern und den Vorgang in log.txt im selben Verzeichnis zu drucken, um das Vorgangsprotokoll zu markieren. 3. Definieren Sie die zu löschenden Dateien: Verwenden Sie den Befehl ls, um die neunte Spalte abzurufen, die die Dateinamenspalte ist, und verwenden Sie dann Kopf -1 Die Datei mit dem aktuellsten Betriebszeitpunkt wird durch die Implementierung festgelegt und muss gelöscht werden. 4. Definieren Sie die Anzahl der Backups: Fügen Sie den Befehl ls hinzu Toilette -l Zählen Sie die Anzahl der Zeilen in Dateien, die mit SQL enden. 5. Wenn die Datei das Limit überschreitet, löschen Sie die am frühesten erstellte SQL-Datei 2.2. Verwenden Sie crontab, um regelmäßig Backup-Skripte auszuführen Unter LINUX werden periodische Aufgaben normalerweise vom Cron-Daemon-Prozess [ps -ef | grep cron] ausgeführt. Cron liest eine oder mehrere Konfigurationsdateien, die Befehlszeilen und die Zeiten enthalten, zu denen sie aufgerufen werden. 1. Cron-Dienst Cron ist ein Tool zur geplanten Ausführung unter Linux, das Jobs ohne menschliches Eingreifen ausführen kann. service crond start //Dienst starten service crond stop //Dienst beenden service crond restart //Dienst neu starten service crond reload //Konfiguration neu laden service crond status //Dienststatus prüfen 2. Crontab-Syntax Mit dem Befehl crontab können Sie die Tabellen installieren, entfernen oder auflisten, die zum Ausführen des Cron-Daemons verwendet werden. Der Benutzer trägt die auszuführende Befehlsfolge in die Crontab-Datei ein, um sie ausführen zu lassen. Jeder Benutzer kann seine eigene Crontab-Datei haben. Die Crontab-Datei in /var/spool/cron kann nicht direkt erstellt oder geändert werden. Die Crontab-Datei wird durch den Befehl crontab erstellt.
3. Erstellen Sie ein Cron-Skript Schritt 1: Schreiben Sie eine Cron-Skriptdatei und nennen Sie sie mysqlRollBack.cron. Hinweis: Dieser Vorgang ersetzt direkt die Crontab des Benutzers, anstatt eine neue hinzuzufügen Führen Sie das geplante Task-Skript regelmäßig aus (denken Sie daran, dem Shell-Skript zuerst die Ausführungsberechtigung zu erteilen). 0 2 * * * /root/mysql_backup_script.sh Verwenden Sie dann den Befehl crontab, um regelmäßig ein geplantes Skript zu schreiben crontab mysqlRollback.cron Überprüfen Sie anschließend mit dem folgenden Befehl, ob die geplante Aufgabe erstellt wurde: crontab -l Anbei ein Beispiel für die Verwendung von crontab: 1. Jeden Tag um 6 Uhr 0 6 * * * echo „Guten Morgen.“ >> /tmp/test.txt //Beachten Sie, dass Sie mit Echo allein keine Ausgabe auf dem Bildschirm sehen können, da cron alle Ausgaben per E-Mail an die Mailbox von root sendet. 2. Alle zwei Stunden 0 */2 * * * echo "Machen Sie jetzt eine Pause." >> /tmp/test.txt 3. Alle zwei Stunden zwischen 23 Uhr und 8 Uhr und um 8 Uhr 0 23-7/2,8 * * * echo "Träum schön" >> /tmp/test.txt 4. Am 4. eines jeden Monats und jeden Montag bis Mittwoch um 11 Uhr 0 11 4 * 1-3 Befehlszeile 5. 1. Januar um 4 Uhr morgens 0 4 1 1 * Kommandozeile SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root //Wenn ein Fehler auftritt oder Daten ausgegeben werden, werden die Daten als E-Mail an dieses Konto gesendet HOME=/ 6. Führen Sie das Skript stündlich in /etc/cron.hourly aus 01 * * * * root-run-parts /etc/cron.hourly 7. Führen Sie das Skript jeden Tag in /etc/cron.daily aus 02 4 * * * root-Ausführungsteile /etc/cron.daily 8. Führen Sie das Skript jede Woche in /etc/cron.weekly aus 22 4 * * 0 root-Ausführungsteile /etc/cron.weekly 9. Führen Sie das Skript jeden Monat in /etc/cron.monthly aus 42 4 1 * * root-Ausführungsteile /etc/cron.monthly Hinweis: Der Parameter „run-parts“. Wenn Sie diesen Parameter entfernen, können Sie anstelle des Ordnernamens den Namen eines auszuführenden Skripts schreiben. 10. Führen Sie den Befehl täglich um 16, 17 und 18 Uhr nach 5, 15, 25, 35, 45 und 55 Minuten aus. 5, 15, 25, 35, 45, 55, 16, 17, 18 * * * Befehl 11. Das System wechselt in den Wartungsmodus und wird jeden Montag, Mittwoch und Freitag um 15:00 Uhr neu gestartet. 00 15 * * 1,3,5 Herunterfahren -r +5 12. Führen Sie jede Stunde zur 10. und 40. Minute den Befehl innd/bbslin im Benutzerverzeichnis aus: 10,40 * * * * innd/bbslink 13. Führen Sie stündlich im Abstand von 1 Minute den Befehl bin/account im Benutzerverzeichnis aus: 1 * * * * Behälter/Konto 3. Screenshot des AusführungseffektsNachfolgend sind die Screenshots meines Minutentests aufgeführt. Der entsprechende Code lautet wie folgt: * * * * * /root/mysql_backup_script.sh Screenshots der Effekte: Die Datei log.txt zeichnet das detaillierte Protokoll des Sicherungsvorgangs auf: Quellenangaben zu diesem Artikel:1. Allgemeine Befehle für MySQLdump: https://www.cnblogs.com/smail-bao/p/6402265.html (Blog Park) 2. Verwenden Sie ein Shell-Skript, um die MySQL-Datenbank zu sichern: https://www.cnblogs.com/mracale/p/7251292.html (Blog Park) 3. Detaillierte Erläuterung des Crontab-Befehls zur geplanten Ausführung von Aufgaben unter Linux: https://www.cnblogs.com/longjshz/p/5779215.html (Blog Park) Damit ist dieser Artikel zur Implementierung einer geplanten MySQL-Datenbanksicherung (vollständige Datenbanksicherung) abgeschlossen. Weitere relevante Inhalte zur geplanten MySQL-Sicherungsfunktion finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Beispiel für horizontale und vertikale Zentrierung eines Div-Unterelements mit CSS
Zunächst einmal spielt der Blogger die Community-...
1. Installieren und starten Sie nginx # Installie...
DOCTYPE-DEKLARATION: Oben auf jeder Seite, die Sie...
Text OK, als nächstes ist es Zeit, die Renderings...
Inhaltsverzeichnis Prototyp-Kettendiagramm Grundl...
So aktualisieren Sie Iframe 1. Zum Aktualisieren k...
1. getBoundingClientRect() Analyse Die Methode ge...
1. WebDesignerWall 2. Veerles Blog 3. Lernprogram...
Inhaltsverzeichnis 1 Frage 2 Methoden 3 Experimen...
1. Daten fließen von QT zu JS 1. QT ruft die JS-F...
CocosCreator-Version: 2.4.2 Praktische Projektanw...
In diesem Artikelbeispiel wird der spezifische Co...
Fehler beim Flackern des CSS-Hintergrundbilds in ...
Inhaltsverzeichnis 1 Was ist SSH 2 Konfigurieren ...
Ergebnis:Implementierungscode: html <!-- Wenn ...