Dies ist ein riesiger Bereich - erwarten Sie also, dass diese Frage in relativ kurzer Zeit geschlossen wird, aber aus dem Häuschen (als ehemaliger DBA für riesige Datenbanken):
Mart / Repository
Sie können ein gewisses Risiko mindern, wenn Sie über eine separate Datenbank für Aktualisierungen und eine separate Datenbank verfügen, die jeder verwendet. Dann müssen nur noch die Daten von einem DB in den anderen kopiert werden, nachdem verschiedene Prüfungen stattgefunden haben. Mart / Repository ist, wie es manchmal beschrieben wird, aber Sie könnten primäre / sekundäre, Master / Slave usw. haben.
Quellcode
Haben Sie für alles, was sich ändern kann, einen Quellcode, der sich darauf bezieht, wie die Daten aktualisiert wurden. Wie viele davon Sie haben, variiert von DB zu DB, aber Sie haben möglicherweise eine für jeden Benutzer, jede Rolle, jeden Datenfeed, jedes Codemodul usw.
Datum erstellen / aktualisieren
Etwas, das beim Verfolgen von Fehlern sehr hilfreich sein kann, ist das Erstellen und Aktualisieren von Daten für jede Zeile. Dann sehen Sie auf einen Blick, welche Zeilen aktualisiert wurden.
ETL
Wenn die Datenbankaktualisierung Teil einer Datenfactory ist, können Sie möglicherweise einen vorherigen Jahrgang aus Einfachdateien wiederherstellen.
Backup
Vollständige Sicherungen nehmen natürlich viel Speicherplatz in Anspruch, aber das übliche Szenario sieht vor, dass eine vollständige Sicherung in regelmäßigen Abständen (etwa wöchentlich) und eine teilweise Sicherung häufiger (täglich usw.) durchgeführt wird.
Zeitpunkt der Wiederherstellung
Abhängig davon, welches RDBMS Sie verwenden, kann die Wiederherstellung zu einem bestimmten Zeitpunkt erfolgen. Auf diese Weise können Sie zu der Zeit zurückkehren, als ein guter Zustand bekannt war. Dies erfordert jedoch eine große Menge an Speicherplatz, der sich erhöht, je weiter Sie zurückkehren möchten.
Prüfung
Wenn Sie über Prüftabellen verfügen, erfahren Sie, wer (oder was) eine Zeile aktualisiert hat. Dies kann Ihnen einen guten Ausgangspunkt für die Untersuchung geben.
Geschichte
Bei einigen kritischen Tabellen wird zum Zeitpunkt der Aktualisierung eine Kopie der entsprechenden Zeile erstellt, damit die Daten bei Bedarf wiederhergestellt werden können.
Datenvalidierung
Stellen Sie sicher, dass grundlegende Validierungsprüfungen für die Daten durchgeführt werden, bevor sie gespeichert werden - zusätzlich zu den grundlegenden Datentypprüfungen.
Referentielle Integrität
Referentielle Integrität ist keine Wunderwaffe, kann jedoch dazu beitragen, dass die Daten gut strukturiert sind.