Skip to main content
SQLOZ
Chapter 17 DBA & Production Safety

Kapitel 17: OzOSC - Zero-Downtime Schema-Migrationen

Info: Dieses Kapitel beschreibt das OzOSC-Konzept (Online Schema Change) für unterbrechungsfreie Schema-Änderungen auf großen MySQL- und MariaDB-Tabellen.

In diesem Kapitel:

17.1 Übersicht

Ein herkömmliches ALTER TABLE auf Produktivtabellen führt oft zu Sperren (Table Locks) und kostspieligen Ausfallzeiten. OzOSC migriert Tabellenstrukturen ohne Sperrung laufender Lese- und Schreibzugriffe.

17.2 Unterstützungsstatus

Der native Pfad steht für Tabellen unter MySQL und MariaDB mit verifiziertem Primärschlüssel zur Verfügung. PostgreSQL und SQLite nutzen diesen Pfad derzeit nicht.

17.3 Funktionsweise und Ablauf

[ Produktivtabelle ] --(Trigger Delta-Kopie)--> [ Schattentabelle ]
 (Schreib/Lesezugriff aktiv)                     (ALTER TABLE angewendet)
                                                            |
                                                (Atomarer Tabellentausch < 1 ms)
                                                            v
                                                [ Neue Produktivtabelle ]
  1. Schattentabelle anlegen: Nach Prüfung der Kriterien wird eine leere Schattentabelle erzeugt.
  2. Schema-Änderung anwenden: Das ALTER TABLE wird innerhalb von Millisekunden auf die leere Schattentabelle angewendet.
  3. Delta-Synchronisation: Temporäre Trigger spiegeln alle INSERT, UPDATE und DELETE-Vorgänge der Produktivtabelle auf die Schattentabelle.
  4. Stapelweiser Datentransfer: Bestandsdaten werden blockweise im Hintergrund kopiert.
  5. Atomarer Tausch: Ein atomarer Rename-Befehl tauscht Schattentabelle und Produktivtabelle verzögerungsfrei aus.

17.4 Live-Fortschrittsverfolgung

Das Dashboard visualisiert Zeilenübertragungsraten (Zeilen/Sek.), geschätzte Restlaufzeit (ETA) sowie den detaillierten Phasenstatus.

Verwandte Themen