Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Linux MySQL führt regelmäßig Backups und Uploads in das Git-Repository durch

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

藏色散人
藏色散人nach vorne
2019-12-24 14:29:292389Durchsuche

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

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

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

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

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

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

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

$ crontab -l

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:ruoxiaozh.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen