Skripte XAMPP-CMSOD

Backup & Restore - mit dem XAMPP-CMSOD, meiner Entwicklungsumgebung

Als Entwickler des CMSOD-Zertifikatssystems habe ich spezielle Backup/Restore Technik (Batchdateien, Skripte) im Ordner C:\xampp-cmsod\__backups bereitgestellt.

Diese vorbereiteten Skripte sind zum Sichern von Prüfungen im Zertifikatssystem „CMS Online Designer (CMSOD - VHS)“ gedacht.

Sie eignen sich aber natürlich auch für die lokalen XAMPP-Projektsicherungen (wie „WordPress Montag“).

Wichtig

Die Skripte (Batchdateien) nutzen die grundsätzlichen Techniken zum Sichern von Ordnern und Datenbanktabellen. Die Skripte eignen sich so aber nur für die XAMPP-CMSOD-Testumgebungen.

Der Ordner C:\xampp-cmsod\__backups enthält auch eine Anleitung zum

  • Nutzen der Sicherungsskripte (Batchdateien .bat ) und zum

  • Wiederherstellen mit dem restore.bat-Skript.

Für eigene Projektsicherungen muss man nur eine Batchdatei kopieren und ein paar Bezeichner austauschen!

Hinweis

Die Skripte werden aktuell überarbeitet: flexibler, interaktiv, vielleicht auch PowerShell!

Hier mal eine funktionsfähige Basisversion für das WordPress Projekt „WordPress Seminar“:

 1@echo off
 2SETLOCAL
 3
 4rem ----Begrüßung -----------------------------------
 5echo **********************************************
 6echo * 1-click Sicherung CMSOD                    *
 7echo * bitte einfach den Anweisungen folgen...    *
 8echo **********************************************
 9echo *                                            *
10
11rem ----Prüfungsteilnehmer einlesen------------------
12echo **********************************************
13echo * Bitte Benutzernamen in Form                *
14echo * Nachname-Vorname                           *
15echo **********************************************
16echo * eingeben:                                  *
17set /p Benutzer=
18
19rem ----EINSTELLUNGEN--------------------------------
20rem Ordner immer ohne abschließenden \ Backslash
21rem Hauptordner für Backups:
22set "Backups=c:\xampp-cmsod\__backups"
23rem Arbeitsverzeichnis für 7-Zip Portable:
24set "SevenZipPath=C:\xampp-cmsod\_tools\_portable\PortableApps\7-ZipPortable\App\7-Zip"
25rem Hauptverzeichnis MySQL des XAMPP-CMSOD:
26set "MySQLPath=C:\xampp-cmsod\mysql"
27rem Hauptordner WWW bzw. htdocs bei XAMPP-CMSOD:
28set "WWWhtdocsOrdnerPath=C:\xampp-cmsod\htdocs"
29rem Zugangsdaten zur DB MySQL des XAMPP-CMSOD:
30set "MySQLUser=root"
31set "MySQLPwd=NULL"
32
33
34rem Ordner für die zu erstellende Sicherung:
35rem Hauptordner:
36set "WWWhtdocsHauptordner=wordpress"
37rem set "WWWhtdocsHauptordner=mywordpress"
38rem Detaillordner:
39set "WWWhtdocsOrdner=wordpress-seminar"
40rem set "WWWhtdocsOrdner=wordpress-projekt"
41rem DB für die zu erstellende Sicherung:
42set "MySQLDB=wordpress_seminar"
43rem set "MySQLDB=wordpress_projekt"
44
45
46rem -------------------------------------------------
47rem Sicherungsdatum erstellen:
48set "BackupDate=%date:~-4%%date:~-7,2%%date:~-10,2%"
49rem set "BackupTime=%time:~-11,2%%time:~-8,2%%time:~-5,2%"
50
51rem set "BackupFile=%BackupDate%_%BackupTime%.sql"
52rem SQL-Dateinamen zuweisen: Benuter_DB_Datum.sql
53set "BackupFile=%Benutzer%_%MySQLDB%_%BackupDate%.sql"
54
55rem in Arbeitsverzeichnis des MySQL wechseln:
56cd %MySQLPath%\bin
57
58echo Datenbank-Dump wird erstellt... [Datenbank: %MySQLDB%]
59echo beim Passwort bitte einfach Return drücken (leeres Kennwort)
60
61mysqldump -u%MySQLUser% --add-drop-database -p --databases %MySQLDB% > "%Backups%\%BackupFile%"
62
63rem in WWW/htdocs Hauptordner:
64rem cd %WWWhtdocsOrdnerPath%
65
66rem mit 7-Zip Ordnerarchiv erstellen: Benutzer_Ordner_Datum.zip:
67%SevenZipPath%\7z a %Backups%\%Benutzer%_%WWWhtdocsOrdner%_%BackupDate%.zip %WWWhtdocsOrdnerPath%\%WWWhtdocsHauptordner%\%WWWhtdocsOrdner%
68rem mit 7-Zip SQL-Dump in Ordnerarchiv packen:
69%SevenZipPath%\7z u %Backups%\%Benutzer%_%WWWhtdocsOrdner%_%BackupDate%.zip %Backups%\%BackupFile%
70rem MySQL-Dump löschen:
71del %Backups%\%BackupFile%
72
73echo **********************************************
74echo * Bitte checken Sie das erstellte Archiv     *
75echo * Bitte sichern Sie das erstellte Archiv     *                           
76echo * Gesamtarchiv: %Benutzer%_%WWWhtdocsOrdner%_%BackupDate%.zip                             
77echo **********************************************
78
79pause Ende der Sicherung mit Tastendruck - Danke ...

Diese Basisversion einer Sicherungs-Batchdatei muss nur kopiert werden und dann müssen die hervorgehobenen Zeilen (36, 39, 42) mit Ihren gewünschten Infos zu Ihrem XAMPP-CMSOD Webprojekt ausgetauscht werden.

Eine beispielhafte Sicherung (Backup) und Wiederherstellung (Restore) zeigen die folgenden Anleitungen (Screenshots).

Backup Projekt WordPress Seminar

Backup Projekt WordPress Seminar

Und hier folgt die entsprechende Wiederherstellung. Im Idealfall sind die Zielordner und die Datenbank für die Wiederherstellung leer.

Restore Projekt WordPress Seminar

Restore Projekt WordPress Seminar

Und dann gibt es natürlich noch die Master-Sicherung der gesamten XAMPP-Installation für den Umzug auf andere (Windows-)Testrechner.