• 検索結果がありません。

3. レプリケーションの設定

3.1 スナップショット レプリケーションの構築

ここではスナップショット レプリケーションの構築手順を説明します。

前提条件

スナップショット レプリケーションを構築するにあたって、SQL Server インスタンスがパブリッシャ ディ ストリビュータ用に 1 つ、サブスクライバ用に 1 つ、計 2 つ必要となります。今回のレプリケーション 構築では [既定のインスタンス] でインストールした [<コンピュータ名>] をパブリッシャ ディストリビュ ータに、 [名前付きインスタンス] で作成した [<コンピュータ名>¥SUBSCRIBER] をサブスクライバと して設定します。

上の画面はインスタンスを 2 つ作成した後、 SQL Server Management Studio を起動し 2 つのイ ンスタンスに接続している画面です。

パブリケーション、ディストリビューションの設定

それでは、実際にレプリケーションを構築しましょう。パブリケーションとディストリビューション、次にサ ブスクリプションの順に設定を行います。

1. SQL Server Management Studio を起動します。

2. [オブジェクト エクスプローラ] のコンソール ツリーから [<コンピュータ名>] ‐ [レプリケーショ ン] を順番に開き、 [ローカル パブリケーション] を右クリックしてショートカット メニューから [新 しいパブリケーション] をクリックします。[パブリケーションの新規作成ウィザード] が表示されま す。

3. [ディストリビュータ] 画面では、 [<コンピュータ名> を独自のディストリビュータとする] をクリック し、[次へ] をクリックします。この画面はディストリビュータの設定がすでに終了している場合、表 示されません。

パブリッシングとディストリビューションの削除

パブリッシャを削除したい場合や、再度ディストリビュータを設定したい場合はこれらを削除する必要があります。その 場合、[オブジェクト エクスプローラ] のコンソール ツリーの [<コンピュータ名>] [レプリケーション] を右クリックし、

表示されるショートカットメニューから [パブリッシングとディストリビューションの無効化] をクリックし、画面の指示にし たがい削除します。

4. [SQL Serverエージェントの起動] 画面では、 [はい、SQL Serverエージェントサービスを自動

的に開始するように構成します] をクリックし、[次へ] をクリックします。

5. [スナップショット フォルダ] 画面では、[スナップショット フォルダ] にパブリッシャとサブスクライ バが共にアクセスすることができるフォルダを指定し、[次へ] をクリックします。

6. [パ ブ リ ケ ー シ ョ ン デ ー タ ベ ー ス] 画 面 で は 、[デ ー タ ベ ー ス] ボ ッ ク ス の 一 覧 で

[AdventureWorks] をクリックし、[次へ] をクリックします。

7. [パブリケーションの種類] 画面では [スナップショット パブリケーション] をクリックし、[次へ] を クリックします。

8. [アーティクル] 画面では、必要な [パブリッシュするオブジェクト] のチェック ボックスをオンにし ます。ここではテーブル内の [Address]、[AddressType]、[AWBuildVersion] の 3 つのチェッ ク ボックスをオンにし、[次へ] をクリックします。

9. アーティクルに対して問題がある場合には [アーティクルの問題点] 画面が表示されます。内容 を確認して、[次へ] をクリックします。

10. [テーブル行のフィルタ選択] 画面では、そのまま [次へ] をクリックします。

データのフィルタリング

スナップショット レプリケートの場合など、大量のデータがパブリッシュされることになります。

特定のアーティクルに対してはできるだけ最小限のデータをパブリッシュしたい場合、フィルタを使用することができま す。

11.[スナップショット エージェント] 画面が表示されます。[スナップショットをすぐに作成し、サブスク リプションを初期化できるようにそのスナップショットを保持する] チェック ボックスをオンにし、

[次へ] をクリックします。

12. [エージェント セキュリティ] 画面が表示されます。[セキュリティ設定] をクリックし、[スナップショ ット エージェントのセキュリティ] ダイアログ ボックスで [SQL Serverエージェント サービスのア カウントで実行する] をクリックし [OK] をクリックします。[エージェント セキュリティ] 画面に戻っ たら [次へ] をクリックします。

13. [ウィザードのアクション] 画面が表示されます。[パブリケーションを作成する] チェック ボックス がオンになっていることを確認し、[次へ] をクリックします。

14. [ウィザードの完了] 画面が表示されます。

[パブリケーション名] ボックスに「AdventureWorksPublish」と入力し、[完了] をクリックします。

サブスクリプションの設定

サブスクリプションにはプッシュ サブスクリプションとプル サブスクリプションの 2 つがあります。ここ ではプッシュ サブスクリプションの設定に関して説明を行います。

1.SQL Server Management Studio を起動し、[オブジェクト エクスプローラ] のコンソール ツリー

を [<コンピュータ名>] ‐ [レプリケーション] ‐ [ローカル パブリケーション] の順番で開き、目的 のパブリケーションを右クリックして、ショートカット メニューから [新しいサブスクリプション] をクリ ックします。

2. [サブスクリプションの新規作成ウィザード] 画面が表示されます。[次へ] をクリックします。

3. [パブリケーション] 画面では、現在設定されているパブリッシャをクリックします。[パブリッシャ] ボ ッ ク ス に て 使 用 す る パ ブ リ ッ シ ャ を ク リ ッ ク し 、[デ ー タ-ベ ー ス と パ ブ リ ケ ー シ ョ ン] 内 の

[AdventureWorksPublish] をクリックして、[次へ] をクリックします。

4. [ディストリビューション エージェントの場所] 画面では、 [ディストリビュータ <コンピュータ名>

ですべてのエージェントを実行する (プッシュ サブスクリプション)] をクリックし、[次へ] をクリッ クします。

5. [サブスクライバ] 画面では、対象となるサブスクライバを設定します。[サブスクライバの追加] -

[SQL Server サブスクライバの追加] をクリックし、[サーバーへの接続] 画面を使用して接続を

行います。接続が完了すると [<コンピュータ名>¥SUBSCRIBER] が追加されますので、[サブスク リプション データベース] にて [新しいデータベース] をクリックします。[新しいデータベース] 画面が表示されますので、データベース名に「AdventureWorksSubscribe」を入力し [OK] をク リックします。[サブスクライバ] 画面に戻ったら、[次へ] をクリックします。

6. [ディストリビューション エージェント セキュリティ] 画面では、対象となるサブスクライバの右端の

列の [….] をクリックします。アカウント指定の画面では [SQL Server エージェント サービスの

アカウントで実行する] をクリックし、[OK] をクリックします。[ディストリビューション エージェント セキュリティ] 画面に戻ったら [次へ] をクリックします。

7. [同期スケジュール] 画面では、[サブスクライバ] 欄に [<コンピュータ名>¥SUBSCRIBER] が設 定されていることを確認し、対象のサブスクライバの [エージェント スケジュール] にて [連続実 行する] をクリックし、[次へ] をクリックします。

8. [サブスクリプションの初期化] 画面では、[次の場合に初期化] の列のリストボックスから [初回 同期時] をクリックし、[次へ] をクリックします。

9. [ウィザードのアクション] 画面では、[サブスクリプションを作成する] チェック ボックスがオンにな っていることを確認し、[次へ] をクリックします。

10. [ウィザードの完了] 画面にて、ウィザードで設定した内容が表示されます。

[完了] をクリックします。

11. [オブジェクト エクスプローラ] のコンソール ツリーから [SQL Server エージェント] を右クリッ クし、ショットカット メニューの [開始] をクリックします。

スナップショットの配信

これまでの設定でスナップショット レプリケーションの設定が終了しましたので、実際にスナップショ ットを配信してみましょう。

1. SQL Server Management Studio を起動し、[オブジェクト エクスプローラ] のコンソール ツリ

ーを [<コンピュータ名>¥SUBSCRIBER] ‐ [データベース] ‐ [AdventureWorksSubscribe] - [テーブル] の順番で開きます。まだ、スナップショット配信を行っていないため、サブスクライバ側 のテーブルには何も表示されていません。

2. [ローカル パブリケーション] - [AdventureWorksPublish] を右クリックして、ショートカット メニ ューから [スナップショット エージェントの状態表示] をクリックします。

3. [スナップショット エージェントの状態表示] 画面が表示されます。

[開始] をクリックします。エージェントの実行が終了したら [閉じる] をクリックします。

4. [<コンピュータ名>¥SUBSCRIBER] ‐ [データベース] ‐ [AdventureWorksSubscribe] ‐ [テ ーブル] の順番で開き、テーブルの内容を確認しましょう。スナップショット配信が行われているこ とが確認できます。

スケジュール設定に関して

今回は手動でスナップショット エージェントを動作させていますが、スケジューラを使用して配信を行う ことも多いと思います。ここではスケジュールを設定して配信する方法について説明します。

1. SQL Server Management Studio を起動し、[オブジェクト エクスプローラ] のコンソール ツリ

ーを [<コンピュータ名>¥インスタンス名] ‐ [レプリケーション] ‐ [ローカル パブリケーション] の 順番で開き、目的のパブリケーションを右クリックしてショートカット メニューから [レプリケーション モニタの起動] をクリックします。[レプリケーション モニタ] 画面が表示されます。

2. [オブジェクト エクスプローラ] のコンソール ツリーを [レプリケーション モニタ] ‐ [マイ パブリ ッシャ] ‐ [<コンピュータ名>] の順番で開き、 目的のパブリケーションをクリックします。次に [警 告およびエージェント] タブをクリックし、[このパブリケーションに関連付けられたエージェントおよ びジョブ] 内に表示されているジョブをクリックします。対象のジョブを右クリックしてショートカット メニューから [プロパティ] をクリックします。

3. 左ペインの [ページの選択] より [スケジュール] をクリックします。[スケジュールの一覧] より変 更したいスケジュールをクリックし、[編集] をクリックします。

関連したドキュメント