Erstellen Sie ein Spiegelungssystem mit drei gespiegelten Datenbanken, die alle denselben Arbiterserver verwenden.
Voraussetzungen
In dieser Lektion wird davon ausgegangen, dass Sie die Rollen und Privilegien haben, die im Abschnitt "Privilegien" am Anfang dieser praktischen Einführung aufgeführt sind: Praktische Einführung: Datenbankspiegelungssysteme mit mehreren Datenbanken und einem gemeinsamen Arbiterserver erstellen.
Erstellen Sie folgende Verzeichnisse:
Erstellen Sie Kopien der SQL Anywhere 16-Beispieldatenbank (demo.db) mithilfe der Datei newdemo.bat. Führen Sie den folgenden Befehl aus:
newdemo.bat c:\server1\one.db |
Führen Sie den folgenden Befehl aus:
newdemo.bat c:\server1\two.db |
Führen Sie vom Verzeichnis c:\server1 aus den folgenden Befehl aus:
newdemo.bat c:\server1\three.db |
Starten Sie den Datenbankserver namens server_1:
dbsrv16 -n server1 -x tcpip(PORT=6871) -su sql c:\server1\one.db -xp on c:\server1\two.db -xp on c:\server1\three.db -xp on |
Es wird empfohlen, dass Sie die Option -su einbeziehen, um das Kennwort für die Dienstprogrammdatenbank anzugeben. Auf diese Weise können Sie ggf. eine Verbindung mit der Dienstprogrammdatenbank herstellen, um den Datenbankserver herunterzufahren.Siehe Einen Datenbankserver in einem Spiegelungssystem stoppen.
Stellen Sie von Interactive SQL aus eine Verbindung zur Datenbank "one" her und definieren Sie die erforderlichen Spiegelungsobjekte:
dbisql -c "UID=DBA;PWD=sql;SERVER=server1;DBN=one" |
Definieren Sie server1 als Partnerserver für Datenbank "one":
CREATE MIRROR SERVER server1 AS PARTNER connection_string='SERVER=server1;host=localhost:6871' state_file='c:\\server1\\server1state.txt'; |
Definieren Sie den Datenbankserver primary_one als logischen Primärserver für Datenbank "one":
CREATE MIRROR SERVER primary_one AS PRIMARY connection_string='SERVER=primary_one;host=localhost:6871,localhost:6872'; |
Definieren Sie server2 als Partnerserver für Datenbank "one":
CREATE MIRROR SERVER server2 AS PARTNER connection_string='SERVER=server2;host=localhost:6872' state_file='c:\\server2\\server2state.txt'; |
Definieren Sie den Datenbankserver mirror_one als logischen Spiegelserver für die Datenbank "one":
CREATE MIRROR SERVER mirror_one AS MIRROR connection_string='SERVER=mirror_one;host=localhost:6871,localhost:6872'; |
Definieren Sie den Arbiterserver:
CREATE MIRROR SERVER arbiter AS ARBITER connection_string='SERVER=arbiter;HOST=localhost:6870'; |
Setzen Sie die Spiegelungsoptionen für das Datenbankspiegelungssystem:
SET MIRROR OPTION authentication_string='abc'; |
Trennen Sie die Verbindung zu Interactive SQL.
Erstellen Sie eine Sicherungskopie der Datenbank im Verzeichnis c:\server2:
dbbackup -c "UID=DBA;PWD=sql;SERVER=server1;DBN=one" c:\server2 |
Stellen Sie von Interactive SQL aus eine Verbindung zur Datenbank "two" her und definieren Sie die erforderlichen Spiegelungsobjekte:
dbisql -c "UID=DBA;PWD=sql;SERVER=server1;DBN=two" |
Definieren Sie server1 als Partnerserver für Datenbank "two":
CREATE MIRROR SERVER server1 AS PARTNER connection_string='SERVER=server1;host=localhost:6871' state_file='c:\\server1\\server1state.txt'; |
Definieren Sie den Datenbankserver primary_two als logischen Primärserver für Datenbank "two":
CREATE MIRROR SERVER primary_two AS PRIMARY connection_string='SERVER=primary_two;host=localhost:6871,localhost:6872'; |
Definieren Sie server2 als Partnerserver für Datenbank "two":
CREATE MIRROR SERVER server2 AS PARTNER connection_string='SERVER=server2;host=localhost:6872' state_file='c:\\server2\\server2state.txt'; |
Definieren Sie den Datenbankserver mirror_two als logischen Spiegelserver für die Datenbank "two":
CREATE MIRROR SERVER mirror_two AS MIRROR connection_string='SERVER=mirror_two;host=localhost:6871,localhost:6872'; |
Definieren Sie den Arbiterserver:
CREATE MIRROR SERVER arbiter AS ARBITER connection_string='SERVER=arbiter;HOST=localhost:6870'; |
Setzen Sie die Spiegelungsoptionen für das Datenbankspiegelungssystem:
SET MIRROR OPTION authentication_string='def'; |
Trennen Sie die Verbindung zu Interactive SQL.
Erstellen Sie eine Sicherungskopie der Datenbank im Verzeichnis c:\server2:
dbbackup -c "UID=DBA;PWD=sql;SERVER=server1;DBN=two" c:\server2 |
Stellen Sie von Interactive SQL aus eine Verbindung zur Datenbank "three" her und definieren Sie die erforderlichen Spiegelungsobjekte:
dbisql -c "UID=DBA;PWD=sql;SERVER=server1;DBN=three" |
Definieren Sie server1 als Partnerserver für Datenbank "three":
CREATE MIRROR SERVER server1 AS PARTNER connection_string='SERVER=server1;host=localhost:6871' state_file='c:\\server1\\server1state.txt'; |
Definieren Sie den Datenbankserver primary_three als logischen Primärserver für Datenbank "three":
CREATE MIRROR SERVER primary_three AS PRIMARY connection_string='SERVER=primary_three;host=localhost:6871,localhost:6872'; |
Definieren Sie server2 als Partnerserver für Datenbank "three":
CREATE MIRROR SERVER server2 AS PARTNER connection_string='SERVER=server2;host=localhost:6872' state_file='c:\\server2\\server2state.txt'; |
Definieren Sie den Datenbankserver mirror_three als logischen Spiegelserver für die Datenbank "three":
CREATE MIRROR SERVER mirror_three AS MIRROR connection_string='SERVER=mirror_three;host=localhost:6871,localhost:6872'; |
Definieren Sie den Arbiterserver:
CREATE MIRROR SERVER arbiter AS ARBITER connection_string='SERVER=arbiter;HOST=localhost:6870'; |
Setzen Sie die Spiegelungsoptionen für das Datenbankspiegelungssystem:
SET MIRROR OPTION authentication_string='ghi'; |
Trennen Sie die Verbindung zu Interactive SQL.
Erstellen Sie eine Sicherungskopie der Datenbank im Verzeichnis c:\server2:
dbbackup -c "UID=DBA;PWD=sql;SERVER=server1;DBN=three" c:\server2 |
Starten Sie den Datenbankserver namens server_2:
dbsrv16 -n server2 -x tcpip(PORT=6872) -su sql c:\server2\one.db -xp on c:\server2\two.db -xp on c:\server2\three.db -xp on |
Starten Sie den Arbiterserver.
dbsrv16 -n arbiter -su sql -x tcpip(port=6870) -xf c:\arbiter\arbiterstate.txt -xa "AUTH=abc,def,ghi;DBN=one,two,three" |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |