Wenn Sie den 'MySQL Backup Python Script' verwenden möchten, müssen nur wenige Zeilen angepasst werden.
der Host auf dem der MySQL Server läuft
DB_HOST = 'localhost'
die Zugungsdaten mit den entprechenden Rechten um auf die Datenbank zugreifen zu können.
DB_USER = 'root'
DB_USER_PASSWORD = 'ihr_password'
die Datenbank die gesichert werden soll, hier im Beispiel ist es 'test'
DB_NAME = 'test'
der Pfad wo hin die Sicherung gespeichert werden soll
BACKUP_PATH = '/home/pi/backup
MySQL Backup Python Script:
- #!/usr/bin/python
- ###########################################################
- #
- # Dieses python script erstellt ein MySQL Datenbank-Backup
- #
- # geschrieben von: Jerome Voigt
- # Webseite: https://kabelage.com
- # veroeffendlicht am: 15.03.2019
- # getestet mit: Python 3.5
- #
- ##########################################################
- # Import required python libraries
- import os
- import time
- import datetime
- import pipes
- # MySQL-Datenbank-Details, fuer welche Sicherung eine Sicherung erfolgen soll. Stellen Sie sicher, dass der Benutzer ueber ausreichende Berechtigungen verfuegt, um Datenbanken zu sichern.
- DB_HOST = 'localhost'
- DB_USER = 'root'
- DB_USER_PASSWORD = 'ihr_password'
- DB_NAME = 'test'
- BACKUP_PATH = '/home/pi/backup'
- # Aktuelle Zeit abrufen, um einen separaten Sicherungsordner wie "MySQL.backup(test) 15.03.2019_16;10;45" zu erstellen.
- ZEIT = time.strftime('%d.%m.%Y_%H;%M')
- ACKTUELLEBACKUPPATH = BACKUP_PATH + '/MySQL.backup(' + DB_NAME + ') ' + ZEIT
- # Ueberpruefen, ob der Sicherungsordner bereits existiert oder nicht. Wenn nicht vorhanden wird es erstellt.
- try:
- os.stat(ACKTUELLEBACKUPPATH)
- except:
- os.mkdir(ACKTUELLEBACKUPPATH)
- # Starten dea Sicheungs Prozess.
- print ("Start der Datenbank Sicherung von " + DB_NAME)
- db = DB_NAME
- dumpcmd = "mysqldump -h " + DB_HOST + " -u " + DB_USER + " -p" + DB_USER_PASSWORD + " " + db + " > " + pipes.quote(ACKTUELLEBACKUPPATH) + "/" + db + ".sql"
- os.system(dumpcmd)
- gzipcmd = "gzip " + pipes.quote(ACKTUELLEBACKUPPATH) + "/" + db + ".sql"
- os.system(gzipcmd)
- print ("")
- print ("Sicherung erfolgreich beendet")
- print ("die Sicherung wurde in dem Ortner: \n" + ACKTUELLEBACKUPPATH + " \ngespeichert")
Ich habe den Script auf dem Paspberry Pi 3b plus getesten mit der python Version 3,5 und MariaDB
Wie wird der Script gestartet?
Vorerst müssen die rechte des Scriptes angepasst werde damit die Datei aufgerufen werden kann.
sudo chmod +x /home/pi/MySQL_Backup.py
da der Script bei mir auf dem Pi getestet wurde, ist der Script im Terminal dem Befehl aufzugerufen:
sudo python /home/pi/MySQL_Backup.py
Je nach Plattform und Speicherort muss der Befehl angepasst werden.
wie eine automatische Sicherung (crontab) eingerichtet wird erkläre ich hier
Comments 2
MrSYuffi
genau so etwas habe ich gesucht, Danke.
Hans Pi
sehr gut erklärt, ein Script nach meinem geschmack