sp_changesubscription (Transact-SQL)
適用対象: SQL ServerAzure SQL Managed Instance
キュー更新トランザクション レプリケーションに関係するスナップショットまたはトランザクション プッシュ サブスクリプションまたはプル サブスクリプションのプロパティを変更します。 他のすべての種類のプル サブスクリプションのプロパティを変更するには、sp_change_subscription_properties (Transact-SQL) を使用します。 sp_changesubscriptionは、パブリッシャー側のパブリケーション データベースで実行されます。
重要
リモート ディストリビューターを使用するパブリッシャーを構成する場合は、 job_login および job_passwordを含むすべてのパラメーターに指定された値がディストリビューターにプレーン テキストとして送信されます。 このストアド プロシージャを実行する前に、パブリッシャーとリモート ディストリビューターの間の接続を暗号化する必要があります。 詳細については、「データベース エンジンへの暗号化接続の有効化 (SQL Server 構成マネージャー)」を参照してください。
構文
sp_changesubscription [ @publication = ] 'publication'
, [ @article = ] 'article'
, [ @subscriber = ] 'subscriber'
, [ @destination_db = ] 'destination_db'
, [ @property = ] 'property'
, [ @value = ] 'value'
[ , [ @publisher = ] 'publisher' ]
引数
[ @publication = ] 'publication'
変更するパブリケーションの名前を指定します。 publicationは sysname で、既定値はありません
[ @article = ] 'article'
変更するアーティクルの名前を指定します。 article は sysname で、既定値はありません。
[ @subscriber = ] 'subscriber'
サブスクライバーの名前です。 サブスクライバー は sysname で、既定値はありません。
[ @destination_db = ] 'destination_db'
サブスクリプション データベースの名前を指定します。 destination_dbは sysname で、既定値はありません。
[ @property = ] 'property'
指定されたサブスクリプションに対して変更するプロパティです。 プロパティ は nvarchar(30)で、テーブル内のいずれかの値を指定できます。
[ @value = ] 'value'
指定した プロパティの新しい値です。 value は nvarchar(4000)で、テーブル内のいずれかの値を指定できます。
プロパティ | 値 | 説明 |
---|---|---|
distrib_job_login | エージェントが実行されている Microsoft Windows アカウントにログインします。 | |
distrib_job_password | エージェントを実行する Windows アカウントのパスワード。 | |
subscriber_catalog | OLE DB プロバイダーへの接続時に使用するカタログ。 このプロパティは、Microsoft SQL Server 以外のサブスクライバーに対してのみ有効です。 | |
subscriber_datasource | OLE DB プロバイダーで認識されるデータ ソースの名前。 このプロパティは、SQL Server 以外のサブスクライバーに対してのみ有効です。 | |
subscriber_location | OLE DB プロバイダーによって認識されるデータベースの場所。 このプロパティは、SQL Server 以外のサブスクライバーに対してのみ有効です。 | |
subscriber_login | サブスクライバーでのログイン名。 | |
subscriber_password | 指定されたログインの強力なパスワード。 | |
subscriber_security_mode | 1 | サブスクライバーに接続するときに Windows 認証を使用。 |
0 | サブスクライバーに接続するときは、SQL Server 認証を使用します。 | |
subscriber_provider | SQL Server 以外のデータ ソースの OLE DB プロバイダーが登録されている一意のプログラム識別子 (PROGID)。 このプロパティは、SQL Server 以外のサブスクライバーに対してのみ有効です。 | |
subscriber_providerstring | データ ソースを識別する OLE DB プロバイダー固有の接続文字列。 このプロパティは、SQL Server 以外のサブスクライバーに対してのみ有効です。 | |
subscriptionstreams | サブスクライバーに変更のバッチを並列で適用するために、ディストリビューション エージェントごとに許可される接続の数です。 SQL Server パブリッシャーでは、1 ~ 64 の範囲の値がサポートされています。 SQL Server 以外のサブスクライバー、Oracle パブリッシャー、またはピアツーピア サブスクリプションの場合、このプロパティは 0 である必要があります。 | |
subscriber_type | 1 | ODBC データ ソース サーバー |
3 | OLE DB プロバイダー | |
memory_optimized | bit | サブスクリプションがメモリ最適化テーブルをサポートしていることを示します。 memory_optimizedはビットであり、1 は true です (サブスクリプションはメモリ最適化テーブルをサポートしています)。 |
[ @publisher = ] 'publisher'
SQL Server 以外のパブリッシャーを指定します。 publisher は sysname で、既定値は NULL です。
Note
SQL Server パブリッシャーにはパブリッシャー を指定しないでください。
リターン コードの値
0 (成功) または 1 (失敗)
解説
sp_changesubscriptionは、スナップショットレプリケーションとトランザクション レプリケーションで使用されます。
sp_changesubscriptionは、キュー更新トランザクション レプリケーションに関連するプッシュ サブスクリプションまたはプル サブスクリプションのプロパティの変更にのみ使用できます。 他のすべての種類のプル サブスクリプションのプロパティを変更するには、sp_change_subscription_properties (Transact-SQL) を使用します。
エージェントのログインまたはパスワードを変更した後、変更を有効にするには、エージェントを停止して再起動する必要があります。
アクセス許可
sp_changesubscriptionを実行できるのは、sysadmin 固定サーバー ロールまたは固定データベース ロールdb_ownerメンバーだけです。
参照
sp_addsubscription (Transact-SQL)
sp_dropsubscription (Transact-SQL)
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示