
Auf einen Blick
- ✓Unsere Erkenntnis aus über 300 Wawi-Projekten: In gut der Hälfte der Notfall-Restores war das letzte verwendbare Backup älter als zwei Wochen — entweder nie automatisiert, voll gelaufen oder nie auf Wiederherstellbarkeit getestet. Ein Backup ohne Restore-Test ist kein Backup.
- ✓SQL Server Standard und höher: Wartungsplan im SSMS einrichten, Server Agent läuft die Sicherung täglich automatisch, idealerweise außerhalb der Geschäftszeiten plus eine Kopie auf ein zweites Laufwerk oder NAS. Sicherung ohne Externe-Kopie ist nur halb fertig.
- ✓SQL Server Express hat keinen Server Agent — JTL liefert dafür einen offiziellen Workaround mit `sqlcmd` und einer Windows-Aufgabe. Die Vlarom E-Commerce Agentur richtet bei Express-Kunden diese Variante ein und ergänzt sie um eine Rotation, damit das Backup-Laufwerk nicht leise volläuft.
Ein verlorener SQL-Server kostet nicht nur Datenbank, sondern auch Auftragshistorie, Kundengruppen, Artikelstamm und sämtliche laufende Vorgänge. Jeder dieser Punkte lässt sich aus einem aktuellen Backup wiederherstellen — wenn es eines gibt. Als JTL Service Partner Gold aus Ahrensfelde bei Berlin richtet die Vlarom E-Commerce Agentur die Backup-Strategie bei jedem Wawi-Onboarding mit ein und prüft sie bei Bestandskunden im Rahmen von Wartungsterminen. Der Aufwand ist überschaubar, die Konsequenz im Notfall hingegen ist es nicht.
JTL-Wawi Datenbank-Backup einrichten: 5 Schritte für ein verlässliches Setup
Die folgenden Schritte unterscheiden sich je nach SQL-Server-Variante. Wer eine Lizenz von SQL Server Standard, Web oder Enterprise nutzt, hat den Server Agent und kann den Wartungsplan im SSMS anlegen. Wer SQL Server Express nutzt — die kostenlose Variante, die JTL bei vielen Kleinkunden installiert — braucht den Aufgabenplanungs-Workaround. Vor jeder strukturellen Änderung an der Datenbank gilt: einmal manuell sichern, bevor du Wartungspläne, neue Indizes oder Restore-Tests anwendest. Die offizielle Doku zur manuellen Sicherung findest du im JTL-Guide zur Datensicherung für JTL-Wawi.
Aktuelles Backup manuell erstellen (Schritt 1)
Bevor du Automatisierung einbaust, lege einmal eine Vollsicherung an. In JTL-Wawi: Start > Datenbank, anmelden, Mandant wählen, unter Mandanten bearbeiten auf Datenbankexport klicken. Die Standardablage ist `c:\\programme\\microsoft sql server\\instanz\\backup` — aus Sicherheitsgründen lässt SQL Server Sicherungen nur in dieses Verzeichnis schreiben. Aktiviere die Option Vor dem Backup Indizes reorganisieren und neu erstellen, das beschleunigt spätere Schreibvorgänge spürbar. Die Datei wird als `.bak` abgelegt. Prüfe danach, dass die Datei tatsächlich existiert und eine plausible Größe hat — eine 0-KB-Datei zeigt einen stillen Fehler an, oft eine fehlende Schreibberechtigung. Diese erste Vollsicherung ist gleichzeitig die Basis für deinen ersten Restore-Test in Schritt 5.
SQL Server Variante prüfen und Strategie wählen (Schritt 2)
Öffne SQL Server Management Studio (SSMS), verbinde dich mit der Wawi-Instanz und schaue oben links unter Server-Name, welche Edition läuft. Express, Web, Standard und Enterprise haben unterschiedliche Möglichkeiten. Express hat keinen SQL Server Agent — der Wartungsplan im SSMS funktioniert dort nicht, du brauchst den Aufgabenplanungs-Workaround. Standard, Web und Enterprise haben den Agent — du kannst Wartungspläne grafisch zusammenklicken und brauchst keine Batch-Datei. Wer auf Express läuft und mehr Headroom braucht (Performance, Datenbankgröße über 10 GB pro Mandant, Anzahl Cores), sollte über ein Upgrade auf eine kostenpflichtige Edition nachdenken — das ist aber ein eigenes Projekt und nicht Voraussetzung für ein automatisches Backup.
Wartungsplan im SSMS einrichten (Standard / Web / Enterprise) (Schritt 3)
In SSMS unter Verwaltung > Wartungspläne, Rechtsklick > Neuer Wartungsplan-Assistent. Wähle als Aufgaben Datenbank sichern (vollständig) und optional Indizes neu organisieren. Wähle die Wawi-Datenbanken aus: `eazybusiness` plus alle `mandant_*`-Datenbanken. Lege als Sicherungsziel ein eigenes Laufwerk oder einen Netzwerkpfad an — nicht die Systempartition. Stelle die Aufgabe auf täglich um drei Uhr morgens, das ist außerhalb der Geschäftszeiten und kollidiert nicht mit Workflow-Aufgaben. Aktiviere Backup-Datei nach Datum benennen, damit nicht jedes Backup das vorherige überschreibt. Trage als Aufbewahrungsdauer mindestens 14 Tage ein. Speichere und prüfe in der Aufgabenhistorie ob der Plan beim ersten Lauf fehlerfrei durchgeht — meistens ist hier das Problem fehlende Schreibrechte des SQL-Server-Dienstkontos auf dem Zielpfad.
Express-Workaround mit sqlcmd und Aufgabenplanung (Schritt 3 alternativ)
Erstelle eine Batch-Datei `jtl-backup.bat` mit dem `sqlcmd`-Befehl `BACKUP DATABASE eazybusiness TO DISK = ‚D:\\backup\\eazybusiness_%date%.bak’`. Wiederhole die Zeile für jeden Mandanten (`mandant_1`, `mandant_2` usw.). Der `%date%`-Platzhalter setzt das aktuelle Datum in den Dateinamen — verschiedene Backups überschreiben sich also nicht. Lege die Batch-Datei und das Zielverzeichnis (`D:\\backup\\` oder ein Netzlaufwerk) vorher manuell an. Der SQL-Server-Dienstbenutzer braucht Schreibrechte auf das Verzeichnis. Öffne dann die Windows-Aufgabenplanung, lege eine neue Aufgabe an, plane sie täglich um drei Uhr und verweise auf die `jtl-backup.bat`. Der detaillierte Workaround-Leitfaden steht im JTL-Guide zur Datensicherung. Ergänze die Batch um eine Aufräum-Routine (z.B. `forfiles /p D:\\backup /d -14 /c \“cmd /c del @file\“`), damit das Laufwerk nicht volläuft.
Restore-Test und externer Speicherort (Schritt 4-5 zusammengefasst)
Ein Backup, das nie wiederhergestellt wurde, ist ein Versprechen ohne Beleg. Nimm ein aktuelles Backup, spiele es auf einem Test-Server oder einer Test-Instanz ein und prüfe ob die Wawi mit der wiederhergestellten Datenbank startet. Der Restore-Befehl in SSMS: Datenbanken > Rechtsklick > Datenbank wiederherstellen, Quelle Gerät, .bak-Datei wählen, Optionen-Tab — bestehende Datenbank überschreiben (WITH REPLACE) — OK. Auf einem Produktivsystem niemals direkt überschreiben, immer in eine separate Test-DB. Für den Restore-Pfad selbst: das physische Backup-Laufwerk kann beim selben Hardware-Defekt verlorengehen wie der SQL Server. Kopiere die `.bak`-Dateien deshalb täglich auf ein NAS, ein zweites Backup-Ziel oder einen externen Speicher. Die offizielle Restore-Doku findest du im JTL-Guide: Datenbank-Backup wieder einspielen. Vor jedem JTL-Update gilt: Backup direkt davor erstellen, nicht das Wartungsplan-Backup von letzter Nacht verwenden — Update-Probleme sind ein klassischer Ernstfall.

