プッシュ サブスクリプションのプロパティの表示または変更

適用対象:データベースのSQL Server (サポートされているすべてのバージョン) Azure SQL

このトピックでは、SQL Server Management Studio、Transact-SQL、またはレプリケーション管理オブジェクト (RMO) を使用して、SQL Serverのプッシュ サブスクリプション プロパティを表示および変更する方法について説明します。

注意

Azure SQL Managed Instance は、スナップショットおよびトランザクション レプリケーションのパブリッシャー、ディストリビューター、およびサブスクライバーの可能性があります。 Azure SQL Database のデータベースは、スナップショットとトランザクション レプリケーションのプッシュ サブスクライバーの可能性しかありません。 詳細については、Azure SQL Database および Azure SQL Managed Instance を使用したトランザクションのレプリケーションに関するページを参照してください。

SQL Server Management Studio を使用する

プッシュ サブスクリプション プロパティを表示および変更するには、以下の方法があります。

  • [サブスクリプションのプロパティ - <パブリッシャー>: <PublicationDatabase>] ダイアログ ボックス(SQL Server Management Studioから使用できます。

  • レプリケーション モニターの [すべてのサブスクリプション] タブ。 レプリケーション モニターの起動の詳細については、「Start the Replication Monitor」 (レプリケーション モニターの開始) を参照してください。

Management Studio でプッシュ サブスクリプション プロパティを表示および変更するには

  1. Management Studioでパブリッシャーに接続し、サーバー ノードを展開します。

  2. [レプリケーション] フォルダーを展開し、 [ローカル パブリケーション] フォルダーを展開します。

  3. 適切なパブリケーションを展開し、サブスクリプションを右クリックして、 [プロパティ] をクリックします。

  4. 必要に応じてプロパティを変更し、 [OK] をクリックします。

レプリケーション モニターでプッシュ サブスクリプション プロパティを表示および変更するには

  1. レプリケーション モニターの左ペインのパブリッシャー グループを展開し、パブリッシャーを展開して、パブリケーションをクリックします。

  2. [すべてのサブスクリプション] タブをクリックします。

  3. サブスクリプションを右クリックし、 [プロパティ] をクリックします。

  4. 必要に応じてプロパティを変更し、 [OK] をクリックします。

Transact-SQL の使用

プッシュ サブスクリプションのプロパティは、レプリケーションのストアド プロシージャを使用して、プログラムから変更できます。 使用するストアド プロシージャは、サブスクリプションが属するパブリケーションの種類によって異なります。

スナップショット パブリケーションまたはトランザクション パブリケーションのプッシュ サブスクリプションのプロパティを表示するには

  1. パブリッシャーのパブリケーション データベースで sp_helpsubscriptionを実行します。 @publication@subscriber、およびすべての値を@articleに指定します

  2. パブリッシャー側のパブリケーション データベースで、 sp_helpsubscriberinfoを実行し、 @subscriberを指定します。

スナップショット パブリケーションまたはトランザクション パブリケーションのプッシュ サブスクリプションのプロパティを変更するには

  1. パブリッシャー側のパブリケーション データベースで、 sp_changesubscriberを実行し、変更するサブスクライバー プロパティ の@subscriber とパラメーターを指定します。

  2. パブリッシャーのパブリケーション データベースで sp_changesubscriptionを実行します。 @publication@subscriber@destination_db、@articleのすべての値@propertyとして変更されるサブスクリプション プロパティ、新しい値を@valueとして指定します。 これにより、プッシュ サブスクリプションのセキュリティ設定が変更されます。

  3. (省略可) サブスクリプションのデータ変換サービス (DTS) パッケージのプロパティを変更するには、サブスクライバーのサブスクリプション データベースで sp_changesubscriptiondtsinfo を実行します。 @jobidのディストリビューション エージェント ジョブの ID と、次の DTS パッケージ プロパティを指定します。

    • @dts_package_name

    • @dts_package_password

    • @dts_package_location

    これにより、サブスクリプションの DTS パッケージ プロパティが変更されます。

    注意

    ジョブ ID は、 sp_helpsubscriptionを実行することで取得できます。

マージ パブリケーションのプッシュ サブスクリプションのプロパティを表示するには

  1. パブリッシャーのパブリケーション データベースで sp_helpmergesubscriptionを実行します。 @publicationと@subscriberを指定します

  2. パブリッシャーで、@subscriberを指定してsp_helpsubscriberinfoを実行します。

マージ パブリケーションのプッシュ サブスクリプションのプロパティを変更するには

  1. パブリッシャーのパブリケーション データベースで sp_changemergesubscriptionを実行します。 @publication@subscriber@subscriber_db@propertyとして変更されるサブスクリプション プロパティ、新しい値を@valueとして指定します。

例 (Transact-SQL)

レプリケーション管理オブジェクト (RMO) の使用

プッシュ サブスクリプション プロパティの表示や変更に使用する RMO クラスは、プッシュ サブスクリプションをサブスクライブするパブリケーションの種類によって異なります。

スナップショット パブリケーションまたはトランザクション パブリケーションに対するプッシュ サブスクリプションのプロパティを表示または変更するには

  1. ServerConnection クラスを使用して、パブリッシャーへの接続を作成します。

  2. TransSubscription クラスのインスタンスを作成します。

  3. PublicationNameDatabaseNameSubscriberNameSubscriptionDBName の各プロパティを設定します。

  4. ServerConnection プロパティ設定に、手順 1. の ConnectionContext を設定します。

  5. LoadProperties メソッドを呼び出して、オブジェクトのプロパティを取得します。 このメソッドから falseが返された場合、手順 3. で指定したサブスクリプションのプロパティが正しく定義されていないか、サブスクリプションが存在していません。

  6. (省略可) プロパティを変更するには、 TransSubscription の設定可能なプロパティに新しい値を設定し、 CommitPropertyChanges メソッドを呼び出します。

  7. (省略可) 新しい設定を表示するには、 Refresh メソッドを呼び出して、サブスクリプションのプロパティを再読み込みします。

マージ パブリケーションに対するプッシュ サブスクリプションのプロパティを表示または変更するには

  1. ServerConnection クラスを使用して、サブスクライバーへの接続を作成します。

  2. MergeSubscription クラスのインスタンスを作成します。

  3. PublicationNameDatabaseNameSubscriberNameSubscriptionDBName の各プロパティを設定します。

  4. ServerConnection プロパティ設定に、手順 1. の ConnectionContext を設定します。

  5. LoadProperties メソッドを呼び出して、オブジェクトのプロパティを取得します。 このメソッドから falseが返された場合、手順 3. で指定したサブスクリプションのプロパティが正しく定義されていないか、サブスクリプションが存在していません。

  6. (省略可) プロパティを変更するには、 MergeSubscription の設定可能なプロパティに新しい値を設定し、 CommitPropertyChanges メソッドを呼び出します。

  7. (省略可) 新しい設定を表示するには、 Refresh メソッドを呼び出して、サブスクリプションのプロパティを再読み込みします。

参照

レプリケーション モニターを使用して情報を表示し、タスクを実行する
レプリケーション セキュリティの推奨事項
パブリケーションのサブスクライブ