Hauptunterschied: Datenbankspiegelung und Datenbankreplikation sind zwei Methoden für die Verfügbarkeit von Daten für Datenbankserver. Bei der Replikation werden Daten- und Datenbankobjekte kopiert und von einer Datenbank in eine andere verteilt. Dadurch wird die Belastung des ursprünglichen Datenbankservers reduziert, und alle Server, auf die die Datenbank kopiert wurde, sind genauso aktiv wie der Masterserver. Andererseits werden bei der Datenbankspiegelung Kopien einer Datenbank in zwei verschiedenen Serverinstanzen (Principal und Mirror) erstellt. Diese Spiegelkopien funktionieren als Standby-Kopien und sind nicht immer wie bei der Datenreplikation aktiv.
Das Verhalten von Master- und Slave-Servern ist im Allgemeinen dasselbe. Jede Änderung der Daten wirkt sich auch auf den Slave-Servern aus. Mit dieser Technik können die Daten in mehr als eine Datenbank kopiert werden. Die teilweise Replikation wird nur für eine Teilmenge von Tabellen oder Spalten von Zeilen implementiert. Daher darf sie nicht die gesamte Datenbank im Wesentlichen replizieren.
Datenbankspiegelung bezieht sich auf die Techniken, mit denen redundante Kopien einer Datenbank erstellt und verwaltet werden. Die gespiegelte Kopie wird konsistent mit der Hauptdatenbank synchronisiert. Diese Technik hilft bei der Sicherstellung einer unterbrechungsfreien Datenverfügbarkeit und verringert auch die Ausfallzeiten, die andernfalls aufgrund von Datenbeschädigung oder -verlust auftreten können. Während des Upgrading-Prozesses stellt die Datenbankspiegelung mindestens eine funktionsfähige Kopie bereit, auf die zugegriffen werden kann.
Replikations- und Spiegelungstechniken werden auch in Kombinationen verwendet, um eine höhere Verfügbarkeit von Datenbanken zu erreichen. Der Hauptunterschied zwischen Replikation und Spiegelung besteht darin, dass im Gegensatz zur Spiegelung keine Standby-Server in der Replikation vorhanden sind, da alle Server als aktive Server fungieren. Die Spiegelung wird bevorzugt, wenn die Ausfallzeit verringert werden soll und eine kosteneffektive Lösung in Bezug auf gemeinsam genutzten Speicher, Switches usw. gewünscht wird. Andererseits wird die Replikation im Allgemeinen in einem Szenario bevorzugt, in dem die verteilte Verarbeitung durch die gemeinsame Nutzung unterstützt werden muss die Arbeitslast einer Anwendung.
Vergleich zwischen Datenbankspiegelung und Replikation:
Datenbankspiegelung | Replikation | |
Definition | Die Datenbankspiegelung erstellt Kopien einer Datenbank in zwei verschiedenen Serverinstanzen. Diese Kopien arbeiten als Standby-Kopien und sind nicht immer wie bei der Datenreplikation aktiv. | Bei der Replikation werden Daten- und Datenbankobjekte kopiert und von einer Datenbank in eine andere verteilt. Dadurch wird die Belastung des ursprünglichen Datenbankservers reduziert, und alle Server, auf die die Datenbank kopiert wurde, sind genauso aktiv wie der Masterserver. |
Vorteile | Die Datenbankspiegelung reduziert geplante und ungeplante Ausfallzeiten wie folgt:
|
|
Nachteile (SQL Server 2008) |
|
|