Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (Deutsch) » SQL Anywhere Server - Datenbankadministration » Pflege der Datenbank » SQL Anywhere-Hochverfügbarkeitsoptiopn » Datenbankspiegelungssystem einrichten

 

Schreibgeschützten Zugriff auf eine Datenbank konfigurieren, die auf dem Spiegelserver läuft

Bei einer Datenbankspiegelung können Sie auf die Datenbank, die auf dem Spiegelserver läuft, mit einer schreibgeschützten Verbindung zugreifen. Diese Funktion ist nützlich, wenn Sie Berichterstellungs- oder andere Vorgänge auslagern wollen, die einen schreibgeschützten Zugriff auf diese Datenbank erfordern.

In einem Spiegelungssystem wissen Sie nicht notwendigerweise, welcher Datenbankserver als Primärserver und welcher als Spiegelserver verwendet wird. Wenn Sie in der Lage sein wollen, eine Verbindung mit der Datenbank herzustellen, die auf dem Spiegelserver läuft, definieren Sie einen Spiegelserver des Typs MIRROR. Dies ermöglicht es Verbindungen, den Spiegelserver zu finden, indem sie einen Servernamen übergeben, der für den Zugriff auf die schreibgeschützte Spiegeldatenbank verwendet wird. Ein so angegebener Servername ist nur aktiv, wenn der Datenbankserver als Spiegel für die Datenbank verwendet wird. Zum Beispiel definiert die folgende Anweisung den Namen "mysamplemirror" als alternativen Servernamen, mit dem eine Verbindung zur auf dem Spiegelserver laufenden Datenbank hergestellt werden kann:

CREATE MIRROR SERVER mysamplemirror
AS MIRROR
connection_string='SERVER=mysamplemirror;HOST=winxp-1:6871,winxp-2:6872';

Jeder Versuch, eine Änderung an der Datenbank durchzuführen, bewirkt einen Fehler, was dem Verhalten entspricht, wenn eine Datenbank als schreibgeschützt unter Verwendung der Option -r gestartet wird. Sie können Vorgänge auf temporären Tabellen durchführen, aber es werden keine Ereignisse auf der Spiegeldatenbank ausgelöst. Das Auslösen von Ereignissen startet erst, nachdem ein Failover vom Primärserver auf den Spiegelserver stattgefunden hat. Die Ereignisse DatabaseStart und MirrorFailover werden erst zu diesem Zeitpunkt ausgelöst, falls sie festgelegt wurden. Weitere Hinweise finden Sie unter Systemereignisse verstehen.

Verbindungen zur Spiegeldatenbank bleiben aufrecht, wenn ein Failover auftritt und der Spiegelserver zum Primärserver wird. Nach einem Failover kann eine Verbindung Änderungen an der Datenbank durchführen. Sie können den Wert der Datenbankeigenschaft ReadOnly abfragen, um zu bestimmen, ob die Datenbank, mit der Sie verbunden sind, aktualisierbar ist:

SELECT DB_PROPERTY( 'ReadOnly' );
 Siehe auch

Abfragen in einer Spiegeldatenbank ausführen