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 » SQL Anywhere サーバ データベース管理 » 高可用性と読み込み専用のスケールアウトシステム » SQL Anywhere の読み込み専用スケールアウト

 

チュートリアル:パートナサーバをコピーノードに変換する

このチュートリアルでは、システムを停止しないで、データベースミラーリングシステム内のパートナサーバを、読み込み専用スケールアウトシステム内のコピーノードに変換する方法について説明します。

前提条件

このチュートリアルでは、チュートリアル:データベースミラーリングシステムの作成で説明しているデータベースミラーリングシステムを利用します。

MANAGE ANY MIRROR SERVER システム権限が必要です。

デフォルトでは、ALTER DATABASE...SET PARTNER FAILOVER 文を使用するには SERVER OPERATOR システム権限が必要です。 -gd データベースサーバオプションを使用すると、必要な権限を変更できます。

内容と備考

このチュートリアルでは、すべてのデータベースサーバが同じコンピュータ上で実行されていることを想定しています。ただし、運用環境では、各データベースサーバを別々のコンピュータにインストールする必要があります。

異なるコンピュータで実行されているデータベースサーバでこのチュートリアルを使用する場合は、接続文字列内の localhost への参照を実際のコンピュータ名に変更する必要があります。

 ♦ タスク
  1. 変換するパートナサーバに接続し、パートナサーバがミラーロールであることを確認します。変換できるのはミラーロールを持つパートナのみです。コピーノードに変換しようとするサーバがプライマリサーバの場合は、プライマリサーバとミラーサーバのロールが切り替わるように、フェイルオーバを開始する必要があります。たとえば、mirror_server2 に接続します。

    dbisql -c "UID=DBA;PWD=sql;SERVER=mirror_server2;HOST=localhost:6872"

    データベースサーバプロパティ MirrorRole から、サーバの現在のロールが返されます。次の文を実行します。

    SELECT DB_PROPERTY( 'MirrorRole' );

    Primary が返された場合は、次の文を実行してフェイルオーバを開始します。

    ALTER DATABASE SET PARTNER FAILOVER;

    現在のプライマリデータベースが停止し、再起動します。

  2. プライマリサーバに接続します。

    dbisql -c "UID=DBA;PWD=sql;SERVER=mirror_demo_primary;HOST=localhost:6871,localhost:6872"
  3. 定義を次のように変更します。

    • タイプ PRIMARY のミラー定義を更新し、変換しようとしているパートナの接続情報を削除します。

    • タイプ MIRROR のミラー定義を削除します。

    • コピーノードに変換しようとしているサーバのパートナ定義を変更します。

    次の文を実行します。

    ALTER MIRROR SERVER mirror_demo_primary
    connection_string='SERVER=mirror_demo_primary;HOST=localhost:6871';
      
    DROP MIRROR SERVER mirror_demo_mirror; 
     
    ALTER MIRROR SERVER mirror_server2 AS COPY FROM SERVER PRIMARY;

    これらの設定変更の一部として両方のパートナサーバ上のデータベースが再起動しますが、サーバ自身は実行を続けます。データベースの再起動中、データベースへの接続は切断されます。

  4. (省略可) ミラーリングシステムを破棄する場合は、監視サーバを削除します。次の文を実行します。

    DROP MIRROR SERVER demo_arbiter; 
  5. SYSMIRRORSERVER システムビューの内容を表示し、mirror_server2 がコピーノードに変換されたことを確認します。次のコマンドを実行します。

    dbisql -c "UID=DBA;PWD=sql;SERVER=mirror_demo_primary" "SELECT server_name, server_type FROM SYSMIRRORSERVER" 

結果

これで、ミラーサーバが読み込み専用スケールアウトのコピーノードになります。