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

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - Datenbankadministration » Hochverfügbarkeit und Scale-Out-Systeme mit Schreibschutz » Datenbankspiegelung

 

Datenbankspiegelungssysteme einrichten

Richten Sie ein Datenbankspiegelungssystem ein, indem Sie Primär-, Spiegel- und Arbiterserver definieren, die Kopien der Datenbank- und Transaktionslogdateien verwalten sollen.

Voraussetzungen

Sie müssen das MANAGE ANY MIRROR SERVER-Systemprivileg haben.

Bei dieser Aufgabe muss eine Kopie der Datenbank gesichert werden. Weitere Hinweise finden Sie je nach Sicherungsmethode in den Beschreibungen der entsprechenden Privilegien.

Kontext und Bemerkungen

In einem Spiegelungssystem für die Produktion müssen die Partnerserver und der Arbiterserver auf drei separaten Computern ausgeführt werden. In allen folgenden Beispielen müssen beim Einrichten eines Datenbankspiegelungssystems localhost und die Portnummer in den Computernamen und die Portnummer geändert werden, unter denen der entsprechende Datenbankserver ausgeführt werden soll.

 Aufgabe
  1. Starten Sie die zu spiegelnde Datenbank auf einem Datenbankserver mit den Optionen -su und -xp on. Dieser Server wird einer der Partner für die Datenbank, der anfängliche Primärserver. Die Datenbank muss ein Transaktionslog haben. Zum Beispiel:

    dbsrv16 -n mirror_server1 -x tcpip(PORT=6871;DOBROAD=no) -su sql "c:\server1\mirror_demo.db" -xp on
  2. Stellen Sie eine Verbindung mit der Datenbank her. Zum Beispiel:

    dbisql -c "UID=DBA;PWD=sql;SERVER=mirror_server1"
  3. Definieren Sie die Partnerserver und den Arbiterserver für die Datenbank mithilfe der CREATE MIRROR SERVER-Anweisung. Definieren Sie außerdem den Primärserver und den Spiegelserver als Partner im Datenbankspiegelungssystem.

    Zum Beispiel:

    1. Mit den beiden folgenden SQL-Anweisungen werden mirror_server1 und mirror_server2 als Partnerserver im Datenbankspiegelungssystem definiert:

      CREATE MIRROR SERVER mirror_server1
      AS PARTNER
      connection_string='SERVER=mirror_server1;host=localhost:6871'
      state_file='c:\\server1\\server1.state';
      
      CREATE MIRROR SERVER mirror_server2
      AS PARTNER
      connection_string='SERVER=mirror_server2;host=localhost:6872'
      state_file='c:\\server2\\server2.state';
    2. Mit den nachstehenden SQL-Anweisungen wird Folgendes definiert:

      • mirror_demo_primary als alternativer Servername für mirror_server1. mirror_demo_primary ist der Name, unter dem sich Clients mit dem als Primärserver fungierenden Datenbankserver verbinden.

      • mirror_demo_mirror als alternativer Servername für mirror_server2. mirror_demo_mirror ist der Name, unter dem sich Clients mit dem als Spiegelserver fungierenden Datenbankserver verbinden.

      CREATE MIRROR SERVER mirror_demo_primary
      AS PRIMARY
      connection_string='SERVER=mirror_demo_primary;HOST=localhost:6871,localhost:6872';
      
      CREATE MIRROR SERVER mirror_demo_mirror
      AS MIRROR
      connection_string='SERVER=mirror_demo_mirror;HOST=localhost:6871,localhost:6872';
      
    3. Mit der folgenden SQL-Anweisung wird der Arbiterserver für das Datenbankspiegelungssystem definiert:

      CREATE MIRROR SERVER demo_arbiter
      AS ARBITER
      connection_string ='SERVER=demo_arbiter;HOST=localhost:6870';
  4. Setzen Sie die Spiegelungsoptionen für das Spiegelungssystem. Sie müssen eine Authentifizierungszeichenfolge angeben. Zum Beispiel:

    SET MIRROR OPTION authentication_string='abc';
  5. Erstellen Sie eine Kopie der Primärdatenbank und des aktuellen Transaktionslogs sowie aller anderen Transaktionslogs auf dem Computer, auf dem sich der zweite Partner befindet. Sie können dazu beispielsweise die BACKUP DATABASE-Anweisung verwenden.

    Die Transaktionslogdateien auf Primärserver-Computer und Spiegelserver-Computer müssen identisch sein, einschließlich des Start-Offsets der aktuellen Transaktionslogdateien.

  6. Starten Sie den zweiten Datenbankserver im Datenbankspiegelungssystem:

    dbsrv16 -n mirror_server2 -x tcpip(PORT=6872;DOBROAD=no) -su sql "c:\server2\mirror_demo.db" -xp on
  7. Starten Sie den Arbiterserver:

    dbsrv16 -n demo_arbiter -su sql -x "TCPIP(PORT=6870;DOBROAD=no)" -xf "c:\arbiter\arbiter.state" -xa "AUTH=abc;DBN=mirror_demo"

Ergebnisse

Clients können sich nun mit der gespiegelten Datenbank verbinden.

Die Rollen des Primär- und des Spiegelservers sind zum Konfigurieren der Datenbankserver im System erforderlich: Die Namen, die Sie diesen Servern geben, werden als alternative Servernamen benutzt, wenn Clients eine Verbindung zu den Datenbankservern herstellen. Jeder der beiden Partnerserver kann als Primär- oder Spiegelserver agieren.

Nächste Schritte

Überwachen Sie Ihr Datenbankspiegelungssystem, indem Sie Ihr System zur Ressourcenliste des Monitors hinzufügen.

Überprüfen Sie den Status der Datenbankserver in einem Datenbankspiegelungssystem, indem Sie über Sybase Central eine Verbindung mit der Primärdatenbank herstellen. Informationen zur Datenbankspiegelung werden im Fensterausschnitt Gesundheit und Statistik angezeigt.

 Siehe auch

Auswahl des Primärservers durch Datenbankspiegelungssysteme
Verwaltung von Transaktionslogdateien in einem Datenbankspiegelungssystem
Verwenden eines Kopieknotens als Arbiter