1. MySQL-Datensicherung1.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. 2. Crontab-Syntax -l Zeigt die aktuelle Crontab in der Standardausgabe an. 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) Dies ist das Ende dieses Artikels über die geplante MySQL-Datenbanksicherung (vollständige Datenbanksicherung). Weitere relevante Inhalte zur geplanten MySQL-Datenbanksicherung finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: Beispiel für asynchronen Dateiupload in HTML
In diesem Artikelbeispiel wird der spezifische Co...
Vorwort Einführung Lombok ist ein praktisches Too...
Node.js löst das Problem verstümmelter chinesisch...
JavaScript zeigt und verbirgt Bilder. Zu Ihrer In...
In der Front-End-Entwicklung gibt es viele Möglic...
Der Standardzeittyp (Datum/Uhrzeit und Zeitstempe...
Inhaltsverzeichnis Bindungsklasse Inline-Stile bi...
Dieser Artikel gibt Ihnen den spezifischen Code v...
Heute ist mir plötzlich eingefallen, dass es cool ...
Es gibt drei Möglichkeiten, Farben in HTML darzust...
Die Bedeutung der Schreibreihenfolge Reduzieren S...
Vorschau: Code: Seitenabschnitte: <Vorlage>...
Ich habe schon einmal einen solchen Artikel gesch...
einführen Die RANGE-Partitionierung basiert auf e...
1. Das Schlüsselwort as gibt eine Behauptung an I...