Linux MySQL führt regelmäßig Backups und Uploads in das Git-Repository durch

藏色散人
Freigeben: 2019-12-24 14:29:29
nach vorne
2407 Leute haben es durchsucht

Einführung

Wenn wir unsere kleinen und mittleren Projekte bereitstellen, wählen wir normalerweise MySQL als unser Speichertool für die Datenspeicherung. Also für ein großes Projekt, jeden Tag Wenn unsere Website oder unser Server eines Tages angegriffen wird, ist der Datenverlust sehr groß. Daher ist es selbstverständlich, eine Sicherung der Datenbank zu erstellen. Was ist also zu tun? Wir möchten die gesicherten Datendateien im Serververzeichnis speichern. Der Sicherungszyklus richtet sich dabei normalerweise nach der Datensicherung im Verzeichnis unseres Servers, aber wenn der Server eines Tages abstürzt, sind die gesicherten Dateien verschwunden. Daher stellen wir uns vor, dass eine gute Lösung darin besteht, die Datenbank jeden Tag zu sichern und jede Sicherung automatisch an das Remote-Warehouse zu senden Code-Cloud als Beispiel.

Empfohlenes Lernen: „

Linux-Tutorial

Code-Cloud

Erstellen Sie zunächst ein Remote-Warehouse

, um ein neues privates Warehouse zu erstellen. Natürlich kann der SSH-Schlüssel auf dem Server generiert werden

Erstellen Sie ein neues Backup auf dem Server

Um die gesicherten Dateien auf dem Server zu speichern, erstellen Sie ein neues Backup-Verzeichnis

$ mkdir /bak
Nach dem Login kopieren

Nachdem Sie das Verzeichnis eingegeben haben, erstellen Sie weiterhin zwei Ordner, mysqlBak und shDir, einer für Skriptdateien. Einer dient zum Ablegen der spezifischen Sicherungsdateien.

Jetzt können wir ein neues Skript erstellen. Nachdem Sie das shDir-Verzeichnis eingegeben haben, führen Sie

$ vim mysqlBak.sh
Nach dem Login kopieren

Das spezifische aus Der Code lautet wie folgt:

rrree

Dies ist nur ein einfaches Skript für diejenigen, die sich mit Linux auskennen. Es erstellt ein Backup der Datenbank und überträgt sie in das Remote-Warehouse 🎜>

Da es sich also um ein Skript handelt, müssen wir angeben, wann dieses Skript ausgeführt werden soll, und die Ausführung des Skripts angeben.

#!bin/sh
################### 数据库配置信息 #######################
createAt=`date +%Y-%m-%d-%H:%M:%S`
user=root
passwd=ghc1996
dbname=ispace
mysql_back_path=/bak/mysqlBak
################### 执行命令 #######################
mysqldump -u $user -p$passwd $dbname > $mysql_back_path/$createAt.sql
cd /bak/mysqlBak
/usr/local/git/bin/git add .
/usr/local/git/bin/git commit -m $createAt
/usr/local/git/bin/git push
Nach dem Login kopieren

Wir hoffen, jeden frühen Morgen ein Backup durchführen und hinzufügen zu können Fügen Sie es in das Remote-Warehouse ein und fügen Sie dann

$ crontab -e
Nach dem Login kopieren

Die in der Linux-Crontab angegebene Zeit besteht nur aus fünf Teilen hinzu

Verwenden Sie den Befehl crontab -e und bearbeiten Sie die Timing-Skript direkt aufrufen. Zeit + spezifischer Name Linux MySQL führt regelmäßig Backups und Uploads in das Git-Repository durch

Zum Beispiel:

$ 0 0 * * * /bin/sh /bak/shDir/mysqlbak.sh
Nach dem Login kopieren

In diesem Fall ist es meine Zeit um 0,,3,7,9,12,15,18,21,23 Uhr Jeden Tag wird diese Skriptdatei ausgeführt, dann wird die grundlegende Datenbanksicherung realisiert

Führen Sie die geplante Aufgabe aus:

0 0,3,7,9,12,15,18,21,23 * * * /bin/sh /bak/shell/mysqlBak.sh
Nach dem Login kopieren

Wenn der Dienst nicht startet, starten Sie die geplante Aufgabe neu

$ crontab -l
Nach dem Login kopieren
Diese geplante Aufgabe wurde nun gestartet. Die Voraussetzung für die Übermittlung von Remote-Warehouses besteht darin, einen SSH-Schlüssel auf dem Server zu generieren und ihn zur Code-Cloud hinzuzufügen.

Dies wird auch oben erwähnt Verzeichnis für das Verzeichnis, in das Dateien übermittelt werden müssen, damit die Runde die von uns benötigten Aufgaben darstellen kann.

Natürlich können während des Vorgangs einige Probleme auftreten, die ich im aufgeführt habe Relevante Links unten.

Auf diese Weise können wir unsere Datenbank am frühen Morgen eines jeden Tages sichern und sie gleichzeitig an das Remote-Warehouse unserer Code-Cloud senden .

Ich habe auch gesagt, dass der Backup-Zyklus von der Größe des Datenvolumens unseres Projekts abhängt

Was ich hier schreibe, ist ein allgemeiner Von uns selbst implementierter Backup-Mechanismus

Das obige ist der detaillierte Inhalt vonLinux MySQL führt regelmäßig Backups und Uploads in das Git-Repository durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:ruoxiaozh.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage