Configurar o trabalho do conjunto de transações para um Publicador Oracle
Aplica-se: SQL Server
O trabalho Xactset é um banco de dados Oracle criado pela replicação em execução em um Editor Oracle, para criar conjuntos de transações, quando o Log Reader Agent não está conectado ao Publicador. Você pode ativar e configurar esse trabalho do Distribuidor usando os procedimentos armazenados de replicação programaticamente. Para obter mais informações, consulte Ajuste de desempenho para Publicadores Oracle.
Habilitar o conjunto de trabalho de transação
No Editor Oracle, defina o parâmetro de inicialização job_queue_processes com um valor que seja suficiente para permitir a execução do trabalho Xactset. Para obter mais informações sobre esse parâmetro, veja a documentação de banco de dados para o Editor Oracle.
No Distribuidor, execute sp_publisherproperty (Transact-SQL). Especifique o nome do Publicador Oracle para @publisher, um valor de xactsetbatching para @propertynamee um valor de enabled para @propertyvalue.
No Distribuidor, execute sp_publisherproperty (Transact-SQL). Especifique o nome do Editor Oracle para @publisher, um valor de xactsetjobinterval para @propertyname, e o intervalo do trabalho, em minutos, para @propertyvalue.
No Distribuidor, execute sp_publisherproperty (Transact-SQL). Especifique o nome do Publicador Oracle para @publisher, um valor de xactsetjob para @propertynamee um valor de enabled para @propertyvalue.
Para configurar o trabalho de conjunto de transação
(Opcional) No Distribuidor, execute sp_publisherproperty (Transact-SQL). Especifique o nome do Editor Oracle como @publisher. Isso retorna as propriedades do trabalho Xactset no Publicador.
No Distribuidor, execute sp_publisherproperty (Transact-SQL). Especifique o nome do Editor Oracle para @publisher, o nome da propriedade do trabalho Xactset que está sendo definida para @propertyname, e as novas configurações de @propertyvalue.
(Opcional) Repita a etapa 2 para cada propriedade de trabalho Xactset que estiver sendo definida. Ao alterar a propriedade xactsetjobinterval , é necessário reiniciar o trabalho no Editor Oracle para que o novo intervalo entre em vigor.
Para exibir as propriedades do trabalho de conjunto de transação
- No Distributor, execute sp_helpxactsetjob. Especifique o nome do Editor Oracle como @publisher.
Para desativar o trabalho de conjunto de transação
- No Distribuidor, execute sp_publisherproperty (Transact-SQL). Especifique o nome do Publicador Oracle para @publisher, um valor de xactsetjob para @propertynamee um valor de disabled para @propertyvalue.
Exemplo
O exemplo a seguir habilita o trabalho Xactset
e define um intervalo de três minutos entre as execuções.
-- 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