Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL führt unter CentOS ein automatisches Backup durch

angryTom
Freigeben: 2019-10-14 15:02:56
nach vorne
2449 Leute haben es durchsucht

Während der Entwicklung verwenden wir häufig SVN oder Git, um unseren Code oder projektbezogene Dateien zu verwalten. Eines haben sie jedoch alle gemeinsam: Versionskontrolle

Viele Leute werden es tun Wenn Sie fragen, warum Sie SVN oder Git verwenden sollten, werde ich fragen: Ich glaube, der Code, den Sie geschrieben haben, ist sehr gut, aber eines Tages haben Sie viele Fehler geändert, aber plötzlich dachten Sie, dass der vorherige Code einen wichtigeren Algorithmus enthält und Sie versehentlich Es ist abgedeckt, was sollten Sie jetzt tun?

Empfohlen „MySQL Video Tutorial“

Vielleicht sagen Sie mir, dass Sie die aktuell geänderten Dateien oder das aktuelle Projekt sichern können, bevor Sie diese Codes ändern.

Aber wie viele Backup-Dateien werden sich im Laufe der Zeit auf Ihrem Computer befinden?

Wenn Ihr Kollege eines Tages zum vorherigen Code zurückkehren muss, um die Ursache des damaligen Fehlers zu ermitteln, finden Sie dann die Datei zum angegebenen Zeitpunkt auf Ihrem Computer und senden sie ihm?

Natürlich nicht. Nachdem wir SVN oder Git haben, können wir die vorherigen Versionen der Dateien problemlos sehen und vergleichen. Jetzt ist die Bedeutung der Versionskontrolle klar.

Das Gleiche gilt für Datenbanken. 99 % unserer Systeme sind untrennbar mit Datenbanken verbunden, da wir immer Daten speichern müssen.

Was passiert also, wenn unsere Datenbank versehentlich gelöscht, gehackt oder in böswilliger Absicht verändert wird?

Dann können wir versuchen, unseren Server die Datenbankdaten automatisch am angegebenen Speicherort sichern zu lassen. Wenn unsere Datenbank eines Tages versehentlich wackelt, können wir auch das gesicherte Datenbankskript zur direkten Wiederherstellung verwenden.

Oberes Skript:

# db username
db_user="test"  
# db password
db_passwd="test"
# db host
db_host="121.201.5.216"
# backup db name
db_name="Alterem"  
# the directory for story your backup file.  
backup_dir="backup"  cd 
# date format for backup file (dd-mm-yyyy)  
time="$(date +"%Y-%m-%d-%H-%M-%S")"  
# mysql, mysqldump and some other bin's path  
MYSQL="/usr/local/mysql/bin/mysql"  
MYSQLDUMP="/usr/local/mysql/bin/mysqldump"  
GZIP="/bin/gzip"  
  
$MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db_name | $GZIP -9 > "/data/backup/$backup_dir/$db_name"_"$time.gz"
Nach dem Login kopieren

Timer erstellen

crontab -e
Nach dem Login kopieren

Timer hinzufügen

# 每天凌晨 1 点 30 分 进行数据备份
30  1  *  *  * /root/mysql-backup.sh
Nach dem Login kopieren

Timer neu starten

/etc/rc.d/init.d/crond restart
Nach dem Login kopieren

Cron-Parsing

# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed复制代码
Nach dem Login kopieren

Online-Cron-Ausdrucksgenerator: http://cron.qqe2/

Das obige ist der detaillierte Inhalt vonMySQL führt unter CentOS ein automatisches Backup durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:juejin.im
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