同じ監視サーバを使用する 3 つのミラーリングされたデータベースで構成されるデータベースミラーリングシステムを作成します。
前提条件
このレッスンでは、このチュートリアルの開始時に、権限のセクションで一覧されているロールと権限を持っていることを前提としています。 チュートリアル:監視サーバを共有している複数データベースでデータベースミラーリングシステムを作成する
次のディレクトリを作成します。
newdemo.bat を使用して、SQL Anywhere 16 サンプルデータベース (demo.db) のコピーを作成します。次のコマンドを実行します。
newdemo.bat c:\server1\one.db |
次のコマンドを実行します。
newdemo.bat c:\server1\two.db |
c:\server1 ディレクトリから、次のコマンドを実行します。
newdemo.bat c:\server1\three.db |
server1 という名前のデータベースサーバを起動します。
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 |
-su オプションを含めてユーティリティデータベースのパスワードを指定することをおすすめします。そうすることで、必要に応じてユーティリティデータベースに接続してデータベースサーバをシャットダウンできるようになります。ミラーリングシステムのデータベースサーバの停止を参照してください。
Interactive SQL からデータベース one に接続し、必要なミラーリングオブジェクトを定義します。
dbisql -c "UID=DBA;PWD=sql;SERVER=server1;DBN=one" |
server1 をデータベース one のパートナサーバとして定義します。
CREATE MIRROR SERVER server1 AS PARTNER connection_string='SERVER=server1;host=localhost:6871' state_file='c:\\server1\\server1state.txt'; |
データベースサーバ primary_one をデータベース one の論理プライマリサーバとして定義します。
CREATE MIRROR SERVER primary_one AS PRIMARY connection_string='SERVER=primary_one;host=localhost:6871,localhost:6872'; |
server2 をデータベース one のパートナサーバとして定義します。
CREATE MIRROR SERVER server2 AS PARTNER connection_string='SERVER=server2;host=localhost:6872' state_file='c:\\server2\\server2state.txt'; |
データベースサーバ mirror_one をデータベース one の論理ミラーサーバとして定義します。
CREATE MIRROR SERVER mirror_one AS MIRROR connection_string='SERVER=mirror_one;host=localhost:6871,localhost:6872'; |
監視サーバを定義します。
CREATE MIRROR SERVER arbiter AS ARBITER connection_string='SERVER=arbiter;HOST=localhost:6870'; |
データベースミラーリングシステムのミラーリングオプションを設定します。
SET MIRROR OPTION authentication_string='abc'; |
Interactive SQL との接続を切断します。
c:\server2 ディレクトリにデータベースのバックアップコピーを作成します。
dbbackup -c "UID=DBA;PWD=sql;SERVER=server1;DBN=one" c:\server2 |
Interactive SQL からデータベース two に接続し、必要なミラーリングオブジェクトを定義します。
dbisql -c "UID=DBA;PWD=sql;SERVER=server1;DBN=two" |
server1 をデータベース two のパートナサーバとして定義します。
CREATE MIRROR SERVER server1 AS PARTNER connection_string='SERVER=server1;host=localhost:6871' state_file='c:\\server1\\server1state.txt'; |
データベースサーバ primary_two をデータベース two の論理プライマリサーバとして定義します。
CREATE MIRROR SERVER primary_two AS PRIMARY connection_string='SERVER=primary_two;host=localhost:6871,localhost:6872'; |
server2 をデータベース two のパートナサーバとして定義します。
CREATE MIRROR SERVER server2 AS PARTNER connection_string='SERVER=server2;host=localhost:6872' state_file='c:\\server2\\server2state.txt'; |
データベースサーバ mirror_two をデータベース two の論理ミラーサーバとして定義します。
CREATE MIRROR SERVER mirror_two AS MIRROR connection_string='SERVER=mirror_two;host=localhost:6871,localhost:6872'; |
監視サーバを定義します。
CREATE MIRROR SERVER arbiter AS ARBITER connection_string='SERVER=arbiter;HOST=localhost:6870'; |
データベースミラーリングシステムのミラーリングオプションを設定します。
SET MIRROR OPTION authentication_string='def'; |
Interactive SQL との接続を切断します。
c:\server2 ディレクトリにデータベースのバックアップコピーを作成します。
dbbackup -c "UID=DBA;PWD=sql;SERVER=server1;DBN=two" c:\server2 |
Interactive SQL からデータベース three に接続し、必要なミラーリングオブジェクトを定義します。
dbisql -c "UID=DBA;PWD=sql;SERVER=server1;DBN=three" |
server1 をデータベース three のパートナサーバとして定義します。
CREATE MIRROR SERVER server1 AS PARTNER connection_string='SERVER=server1;host=localhost:6871' state_file='c:\\server1\\server1state.txt'; |
データベースサーバ primary_three をデータベース three の論理プライマリサーバとして定義します。
CREATE MIRROR SERVER primary_three AS PRIMARY connection_string='SERVER=primary_three;host=localhost:6871,localhost:6872'; |
server2 をデータベース three のパートナサーバとして定義します。
CREATE MIRROR SERVER server2 AS PARTNER connection_string='SERVER=server2;host=localhost:6872' state_file='c:\\server2\\server2state.txt'; |
データベースサーバ mirror_three をデータベース three の論理ミラーサーバとして定義します。
CREATE MIRROR SERVER mirror_three AS MIRROR connection_string='SERVER=mirror_three;host=localhost:6871,localhost:6872'; |
監視サーバを定義します。
CREATE MIRROR SERVER arbiter AS ARBITER connection_string='SERVER=arbiter;HOST=localhost:6870'; |
データベースミラーリングシステムのミラーリングオプションを設定します。
SET MIRROR OPTION authentication_string='ghi'; |
Interactive SQL との接続を切断します。
c:\server2 ディレクトリにデータベースのバックアップコピーを作成します。
dbbackup -c "UID=DBA;PWD=sql;SERVER=server1;DBN=three" c:\server2 |
server2 という名前のデータベースサーバを起動します。
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 |
監視サーバを起動します。
dbsrv16 -n arbiter -su sql -x tcpip(port=6870) -xf c:\arbiter\arbiterstate.txt -xa "AUTH=abc,def,ghi;DBN=one,two,three" |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |