Ein Rollback ist das kontrollierte Zurücknehmen einer Änderung auf einen früheren, funktionierenden Zustand. Der Begriff kommt aus der Softwareentwicklung und der Datenbankwelt, wird aber überall dort verwendet, wo Änderungen schiefgehen können: Deployment, Konfiguration oder Datenmigration.

Rollback in Datenbanken

Transaktionsorientierte Datenbanken (siehe SQL-Grundlagen) unterstützen Rollbacks nativ: Eine Transaktion bündelt mehrere Schritte; schlägt einer fehl, stellt ROLLBACK den Zustand vor der Transaktion wieder her. Erst mit COMMIT wird die Änderung dauerhaft. Das ist der zentrale Mechanismus für Datenkonsistenz bei Abstürzen und Fehlern.

Rollback beim Deployment

Bei Software-Releases bedeutet Rollback: Die neue Version wird zurückgezogen und die letzte stabile Version wieder aktiviert. Dafür gibt es bewährte Strategien:

  • Backup-basiert: Vor dem Update wird ein Snapshot oder Backup erstellt, das bei Problemen wiederhergestellt wird.
  • Blue-Green-Deployment: Zwei identische Umgebungen laufen parallel; der Wechsel ist nur ein Umschalten des Routings — ein Rollback ist damit sekundenschnell (mehr dazu hier).
  • Feature-Flags: Neue Funktionen werden per Schalter aktiviert; ein Rollback deaktiviert den Schalter, ohne die Software selbst zu wechseln.

Wann Rollbacks sinnvoll sind

Nicht jeder Fehler erfordert einen Rollback. Bei kleinen Problemen reicht oft ein Hotfix (schneller Korrektur-Patch); ein Rollback ist dann die beste Wahl, wenn die neue Version kritisch fehlerhaft ist und der Betrieb schnellstmöglich wieder stabil laufen muss. Dafür braucht es vorher festgelegte Rollback-Pläne — im Rahmen von CI/CD und Automatisierung gehört das Zurücknehmen zum Standard-Repertoire.

Verwandte Begriffe: Git kann mit git revert und git reset ebenfalls Änderungen zurücknehmen, Testing verhindert, dass Rollbacks überhaupt nötig werden, und Monitoring erkennt Fehler früh genug für einen sauberen Rückweg.