Oracle パブリッシャー用のトランザクション セット ジョブの構成 (レプリケーション Transact-SQL プログラミング)
Xactset ジョブは、Oracle パブリッシャーで実行されているレプリケーションがトランザクション セットを生成するために作成する Oracle データベース ジョブです。Oracle パブリッシャーにログ リーダー エージェントが接続されていない場合に使用されます。 このジョブは、レプリケーションのストアド プロシージャを使用し、ディストリビューターからプログラムによって有効化したり構成することができます。 詳細については、「Performance Tuning for Oracle Publishers」 (Oracle パブリッシャーのパフォーマンス チューニング) を参照してください。
トランザクション セット ジョブを有効にするには
Oracle パブリッシャーで、 job_queue_processes 初期化パラメーターに、Xactset ジョブを実行できるだけの十分な値を設定します。 このパラメーターの詳細については、Oracle パブリッシャー用データベースのマニュアルを参照してください。
ディストリビューターで、 sp_publisherproperty (Transact-SQL) を実行します。 @publisherの Oracle パブリッシャーの名前、@propertynameの場合は の
xactsetbatching
値、@propertyvalueの場合は のenabled
値を指定します。ディストリビューターで、 sp_publisherproperty (Transact-SQL) を実行します。 @publisherの Oracle パブリッシャーの名前、 @propertynameの
xactsetjobinterval
値、 ジョブ間隔 (分単位) を 指定@propertyvalue。ディストリビューターで、 sp_publisherproperty (Transact-SQL) を実行します。 @publisherの Oracle パブリッシャーの名前、@propertynameの場合は の
xactsetjob
値、@propertyvalueの場合は のenabled
値を指定します。
トランザクション セット ジョブを構成するには
(省略可能)ディストリビューターで、 sp_publisherproperty (Transact-SQL) を実行します。 @publisherの Oracle パブリッシャーの名前を指定します。 これにより、パブリッシャーの Xactset ジョブのプロパティが返されます。
ディストリビューターで、 sp_publisherproperty (Transact-SQL) を実行します。 @publisherの Oracle パブリッシャーの名前、@propertynameに設定する Xactset ジョブ プロパティの名前、および@propertyvalueの新しい設定を指定します。
(省略可) 設定対象の各 Xactset ジョブ プロパティについて、手順 2. を繰り返します。 プロパティを
xactsetjobinterval
変更する場合、新しい間隔を有効にするには、Oracle パブリッシャーでジョブを再起動する必要があります。
トランザクション セット ジョブのプロパティを表示するには
- ディストリビューターで sp_helpxactsetjobを実行します。 @publisherの Oracle パブリッシャーの名前を指定します。
トランザクション セット ジョブを無効にするには
- ディストリビューターで、 sp_publisherproperty (Transact-SQL) を実行します。 @publisherの Oracle パブリッシャーの名前、@propertynameの場合は の
xactsetjob
値、@propertyvalueの場合は のdisabled
値を指定します。
例
次の例では、 Xactset
ジョブを有効にし、実行間隔を 3 分に設定しています。
-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables
-- on the command line and in SQL Server Management Studio, see the
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".
DECLARE @publisher AS sysname;
SET @publisher = $(Publisher);
-- Enable the creation of transaction sets
-- at the Oracle Publisher.
EXEC sp_publisherproperty
@publisher = @publisher,
@propertyname = N'xactsetbatching',
@propertyvalue = N'enabled';
-- Set the job interval before enabling
-- the job, otherwise the job must be restarted.
EXEC sp_publisherproperty
@publisher = @publisher,
@propertyname = N'xactsetjobinterval',
@propertyvalue = N'3';
-- Enable the transaction set job.
EXEC sp_publisherproperty
@publisher = @publisher,
@propertyname = N'xactsetjob',
@propertyvalue = N'enabled';
GO
参照
Oracle パブリッシャーのパフォーマンス チューニング
Replication System Stored Procedures Concepts