Als Datenbankadministrator müssen Sie möglicherweise häufig die in einer Datenbankumgebung vorgenommenen Änderungen in eine andere Datenbankumgebung migrieren. Beispielsweise müssen Sie möglicherweise die Änderungen, die an einer großen Entwicklungsdatenbank vorgenommen wurden, in die formale Testdatenbank weiterleiten.
Die folgende Tabelle zeigt die Migration von Änderungen aus einer Datenbankumgebung in eine andere.
Abbildung 1. Migration von Änderungen aus einer Datenbankumgebung in eine andere
Zur Migration von Änderungen müssen Sie die Unterschiede zwischen den beiden Datenbankumgebungen ermitteln und nur die Objekte ändern, die unterschiedlich sind. In manchen Fällen ist die Ermittlung der Unterschiede einfach, etwa dann, wenn nur eine neue Tabelle hinzugefügt wurde. In anderen Fällen kann die Ermittlung der Unterschiede aber auch weitaus komplexer sein, etwa dann, wenn zahlreiche Änderungen an mehrere Tabellen vorgenommen wurden, wenn Tabellen hinzugefügt oder gelöscht wurden, wenn Primär- und Fremdschlüssel geändert wurden etc.
Es gibt drei Ansätze, Änderungen von einer Datenbank in eine andere zu migrieren:
- Kopieren und Einfügen
- Verwenden Sie Kopieren und Einfügen, wenn Sie die Unterschiede bereits ermittelt haben und sicher sind, dass es sich dabei um die zu migrierenden Änderungen handelt, und Sie daher die Unterschiede nicht im Detail analysieren müssen. Bei Verwendung dieser Methode wird der Vergleichseditor nicht angezeigt. Stattdessen wird beim Kopieren und Einfügen eines Objekts aus einer Datenbank in eine andere Datenbank im Administrationsexplorer oder in der Objektliste der Scripteditor für das Änderungsmanagement angezeigt und die Änderungen werden unverzüglich in die zu ändernde Datenbank migriert.
Wichtig: Kopieren und Einfügen ist die einzige Methode, die das Kopieren von Objekten und Daten von einem Schema in ein anderes in derselben Datenbank unterstützt.
Anmerkung: Kopieren und Einfügen ist außerdem die einzige Methode, die es ermöglicht, anzugeben, ob die Objekte, die von den ausgewählten Objekten benötigt werden, ebenfalls kopiert werden sollen. Standardmäßig werden von den anderen
Kopiermethoden auch die benötigten Objekte kopiert. Z. B. soll angenommen werden,
dass Tabelle A von Tabelle B und Tabelle B von Tabelle
C abhängt. Wenn Sie Tabelle A kopieren und das Kontrollkästchen Erforderliche Objekte kopieren auswählen,
wird Tabelle B ebenfalls kopiert, Tabelle C jedoch nicht.
- Ziehen und Übergeben
- Verwenden Sie Ziehen und Übergeben, wenn Sie die Unterschiede bereits ermittelt haben, sicher sind, dass es sich dabei um die zu migrierenden Änderungen handelt, Sie die Unterschiede nicht im Detail analysieren müssen und nur die strukturellen Unterschiede versetzt werden sollen. Beim Ziehen und Übergeben werden die Daten nicht beibehalten. Wenn Sie beispielsweise eine Tabelle von einer Datenbank in ein andere migrieren, bleiben die Daten in der Tabelle beim Migrieren nicht erhalten.
- Vergleichsmethode (Vergleichseditor)
- Die Vergleichsmethode empfiehlt sich bei komplexeren Änderungen und wenn Sie die Unterschiede zwischen den beiden Datenbankumgebungen sorgfältig ermitteln müssen. Beim Vergleichsansatz wird der Vergleichseditor angezeigt. Ein Modell der Datenbank mit den Änderungen, die Sie in die andere Datenbank migrieren möchten, wird auf der linken Seite des Editors angezeigt. Ein Modell der Datenbank, in die Sie die Änderungen migrieren möchten, wird auf der rechten Seite des Editors angezeigt. Sie können einen Drilldown in den Änderungen durchführen und gezielt nur die Änderungen auswählen, die Sie anwenden möchten.
Wichtig: Sie müssen den Vergleichsansatz verwenden, wenn die Quelle der Änderungen ein physisches Datenmodell oder eine DDL-Scriptdatei und keine Datenbankverbindung ist.
Bei allen Ansätzen werden die zu ändernden Objekte im Scripteditor für das Änderungsmanagement angezeigt. Dort können Sie die Änderungsbefehle generieren, anpassen und anschließend ausführen, um die eigentlichen Änderungen an der Datenbank vorzunehmen.