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

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - データベース管理 » レプリケーション » Replication Server を使用したデータのレプリケート » チュートリアル:Replication Server を使用したデータのレプリケート

 

レッスン 5:プライマリ・データベースへの Replication Server 情報の追加

プライマリ・サイト・データベースを Replication Server インストール環境に加えるには、Replication Server のテーブルとプロシージャをそのデータベースに追加する必要があります。また、Replication Server が使用するユーザ ID を 2 つ作成してください。SQL Anywhere には SQL コマンド・ファイル rssetup.sql が付属していて、これらのタスクを実行します。

rssetup.sql コマンド・ファイルは、SQL Anywhere サーバで Interactive SQL ユーティリティから実行してください。

♦  rssetup スクリプトを実行するには、次の手順に従います。
  1. Interactive SQL から DBA 権限を持つユーザとして SQL Anywhere データベースに接続します。

  2. 次のコマンドを使用して rssetup スクリプトを実行します。

    read "install-dir\scripts\rssetup.sql"

    このスクリプトでは、install-dir に実際の SQL Anywhere インストール・ディレクトリを指定します。

    または、[ファイル] - [スクリプトの実行] を選択して、ファイルを検索します。

rssetup.sql によって実行されるアクション

rssetup.sql コマンド・ファイルは次の機能を実行します。

  • パスワード dbmaint を指定して、DBA 権限を持つユーザ dbmaint を作成します。これは、プライマリ・サイト・データベースに接続するために Replication Server が必要とするメンテナンス・ユーザ名とパスワードです。

  • パスワード sa を指定して、DBA 権限を持つユーザ sysadmin を作成します。これは、Replication Server がデータを表示するときに使用するユーザ ID です。

  • sadbmaintrs_systabgroup という名前のグループに追加します。

パスワードとユーザ ID

ハード・ワイヤされたユーザ ID (dbmaint と sa) とパスワードは、テストやチュートリアルには便利ですが、セキュリティを必要とするデータベースを実行するときには、パスワードだけでなくユーザ ID も変更してください。DBA 権限を付与されたユーザは、SQL Anywhere データベースに対する完全な権限を持ちます。

ユーザ ID sa とそのパスワードは、Replication Server のシステム管理者アカウントのユーザ ID とパスワードと一致させてください。SQL Anywhere では、現在のところ NULL パスワードは使用できません。

パーミッション

rssetup.sql スクリプトは、一部のパーミッション管理を含むいくつかのオペレーションを実行します。ここでは、rssetup.sql が行うパーミッション変更について説明します。ユーザがパーミッションを変更する必要はありません。

レプリケーションの際は、dbmaint ユーザと sa ユーザが所有者を明示的に指定しなくても、レプリケートするテーブルにアクセスできることを確認してください。そのためには、テーブル所有者のユーザ ID にグループ・メンバシップ・パーミッションが必要であり、dbmaint ユーザと sa ユーザはテーブル所有者グループのメンバでなければなりません。グループ・パーミッションを付与するには、DBA 権限が必要です。

たとえば、ユーザ DBA がテーブルを所有している場合は、DBA にグループ・パーミッションを付与してください。

GRANT GROUP
TO DBA;

次に、dbmaint ユーザと sa ユーザに DBA グループのメンバシップを付与してください。グループ・パーミッションを付与するには、DBA 権限またはグループ ID が必要です。

GRANT MEMBERSHIP
IN GROUP "DBA"
TO dbmaint ;
GRANT MEMBERSHIP
IN GROUP "DBA"
TO sa;