Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
Este tópico descreve como criar uma publicação a partir de uma base de dados Oracle no SQL Server utilizando o SQL Server Management Studio ou Transact-SQL.
Prerequisites
- Antes de criar uma publicação, deve instalar o software Oracle no Microsoft SQL Server Distributor e deve configurar a base de dados Oracle. Para mais informações, consulte Configurar um Oracle Publisher.
Usando o SQL Server Management Studio
Crie um instantâneo ou uma publicação transacional a partir de uma Base de Dados Oracle com o Assistente de Nova Publicação.
Na primeira vez que criar uma publicação a partir de uma base de dados Oracle, deve identificar o Oracle Publisher no SQL Server Distributor (não é necessário fazer isto para publicações subsequentes da mesma base de dados). A identificação do Oracle Publisher pode ser feita através do Assistente de Nova Publicação ou da caixa de diálogo Propriedades do Distribuidor - <Distribuidor>; este tópico mostra a caixa de diálogo Propriedades do Distribuidor - <Distribuidor>.
Para identificar o Publicador Oracle no Distribuidor do SQL Server
No SQL Server Management Studio, estabeleça ligação à instância do SQL Server que o Oracle Publisher irá utilizar como Distribuidor e, em seguida, expanda o nó do servidor.
Clique com o botão direito na pasta Replicação e depois clique em Propriedades do Distribuidor.
Na página Publishers da caixa de diálogo Propriedades do Distribuidor - <Distribuidor>, clique em Adicionar e depois em Adicionar Oracle Publisher.
Na caixa de diálogo Ligar ao Servidor , clique no botão Opções .
No separador Login:
Introduza o nome da instância da base de dados Oracle ou selecione Explorar para mais na caixa combinada de instâncias do servidor .
Selecione Autenticação Padrão Oracle (recomendada) ou Autenticação Windows.
Se selecionar Windows Autenticação: o servidor Oracle deve estar configurado para permitir ligações usando credenciais Windows (para mais informações, consulte a documentação Oracle); e deve estar atualmente iniciado sessão com a mesma conta Microsoft Windows que especificou para o esquema de utilizador administrativo de replicação.
Se selecionar Autenticação Padrão do Oracle, introduza o nome de utilizador e a palavra-passe do esquema do utilizador administrativo de replicação que criou no Oracle Publisher durante a configuração.
No separador Propriedades de Ligação, selecione um tipo de Publicador Gateway ou Complete.
A opção Completar foi concebida para fornecer publicações instantâneas e transacionais com o conjunto completo de funcionalidades suportadas para a edição Oracle. A opção Gateway fornece otimizações específicas de design para melhorar o desempenho em casos em que a replicação funciona como um gateway entre sistemas. A opção Gateway não pode ser usada se planeia publicar a mesma tabela em várias publicações transacionais. Uma tabela pode aparecer no máximo numa publicação transacional e em qualquer quantidade de publicações de instantâneo se selecionar Gateway.
Clique em Conectar, que cria uma ligação ao Oracle Publisher e configura-o para replicação. A caixa de diálogo Ligar ao Servidor fecha e é devolvido à caixa de diálogo Propriedades do Distribuidor - <Distribuidor> .
Note
Se houver algum problema na configuração da rede, receberá um erro neste ponto. Se tiver problemas ao ligar-se à base de dados Oracle, consulte a secção "O Distribuidor SQL Server não consegue ligar-se à instância da base de dados Oracle" em Resolução de Problemas Oracle Publishers.
Selecione OK.
Criar uma publicação a partir de uma base de dados Oracle
Liga-te à instância do SQL Server que o Oracle Publisher irá usar como Distribuidor e depois expande o nó servidor.
Expande a pasta de Replicação .
Clique com o botão direito na pasta Publicações Locais e depois clique em Nova Publicação Oracle.
Na página Oracle Publisher do New Publication Wizard, selecione o Oracle Publisher. Se o Oracle Publisher não estiver exibido, clique em Adicionar Oracle Publisher, que o guia pelos passos do procedimento anterior.
Na página Tipo de Publicação , selecione Publicação Instantânea ou Publicação Transacional.
Na página de Artigos , selecione os objetos da base de dados que quer publicar.
Opcionalmente, pode filtrar as colunas da tabela expandindo uma tabela e, em seguida, desmarcando a caixa de verificação de uma ou mais colunas. Clique em Propriedades do Artigo para visualizar e modificar as propriedades do artigo e para especificar mapeamentos alternativos de tipos de dados, se necessário. Para mais informações sobre mapeamentos de tipos de dados, consulte Especificar Mapeamentos de Tipos de Dados para um Oracle Publisher.
Na página de Linhas da Tabela de Filtros , aplica opcionalmente filtros para publicar um subconjunto de dados de uma ou mais tabelas.
Na página do Snapshot Agent, desmarque Criar um snapshot imediatamente apenas se tiver criado todos os objetos e adicionado todos os dados necessários à base de dados da subscrição.
Na página de Segurança do Agente, especifique as credenciais do Snapshot Agent (para todas as publicações) e do Log Reader Agent (para publicações transacionais). Os agentes executam e fazem ligações ao SQL Server Distribuidor usando o contexto da conta Microsoft Windows que especifica. Os agentes fazem ligações à base de dados Oracle usando o contexto da conta que especificou como o esquema de utilizador administrativo de replicação. Para mais informações, consulte Configurar um Oracle Publisher.
Para mais informações sobre as permissões exigidas por cada agente, consulte Modelo de Segurança de Agente de Replicação e Melhores Práticas de Segurança de Replicação.
Na página Ações do Assistente, pode, opcionalmente, criar um script para a publicação. Para obter mais informações, consulte Scripting Replication.
Na página Completar o Assistente , especifique um nome para a publicação.
Usando Transact-SQL
Depois de a base de dados Oracle ser configurada como Publisher, pode criar uma publicação transacional ou snapshot da mesma forma que faria a partir de um Microsoft SQL Server Publisher, utilizando procedimentos armazenados do sistema.
Para criar uma Publicação Oracle
Configura a base de dados Oracle como um Publisher. Para mais informações, consulte Configurar um Oracle Publisher.
Se não existir um distribuidor remoto, configure o distribuidor remoto. Para mais informações, consulte Configurar Publicação e Distribuição.
No Distribuidor remoto que o Publicador Oracle utilizará, execute sp_adddistpublisher (Transact-SQL). Especifique o nome Transparent Network Substrate (TNS) da instância da base de dados Oracle para @publisher e um valor de ORACLE ou ORACLE GATEWAY para @publisher_type.
Specifyo modo de segurança utilizado ao ligar do Oracle Publisher ao SQL Server Distributor remoto é um dos seguintes:Para utilizar a Autenticação Padrão do Oracle, a predefinida, especifique o valor 0 para @security_mode, o nome de início de sessão do esquema do utilizador administrativo de replicação que criou no Publicador Oracle durante a configuração para @login e a palavra-passe para @password.
Importante
Quando possível, solicite que os usuários insiram credenciais de segurança em tempo de execução. Se guardar credenciais num ficheiro script, deve proteger o ficheiro para evitar acessos não autorizados.
Para usar Windows Autenticação, especifique um valor de 1 para @security_mode.
Note
Para utilizar a Autenticação do Windows, o servidor Oracle tem de estar configurado para permitir ligações com credenciais do Windows (para obter mais informações, consulte a documentação da Oracle); e tem de ter sessão iniciada atualmente com a mesma conta do Microsoft Windows que especificou para o esquema do utilizador administrativo da replicação.
Crie um trabalho de Agente Leitor de Registos para a base de dados da publicação.
Se não tiver a certeza se existe um trabalho de Agente Leitor de Registo para uma base de dados publicada, execute sp_helplogreader_agent (Transact-SQL) no Distribuidor usado pela Oracle Publisher na base de dados de distribuição. Especifique o nome do Oracle Publisher para @publisher. Se o conjunto de resultados estiver vazio, então deve ser criado um trabalho de Agente Leitor de Logs.
Se já existir um trabalho de Agente Leitor de Registos para a base de dados da publicação, avance para o passo 5.
No Distribuidor usado pela Oracle Publisher na base de dados de distribuição, execute sp_addlogreader_agent (Transact-SQL). Especifique as credenciais Windows sob as quais o agente corre para @job_login e @job_password.
Note
O parâmetro @job_login deve corresponder ao login fornecido no passo 3. Não forneça informações de segurança do publicador. O agente Log Reader liga-se ao Publisher usando as informações de segurança fornecidas no passo 3.
No Distribuidor na base de dados de distribuição, execute sp_addpublication (Transact-SQL) para criar a publicação. Para mais informações, consulte Criar uma Publicação.
No Distribuidor, na base de dados de distribuição, execute sp_addpublication_snapshot (Transact-SQL). Especifique o nome da publicação usado no passo 4 para @publication e as credenciais Windows sob as quais o Snapshot Agent corre para @job_name e @password. Para usar a Autenticação Padrão Oracle ao ligar-se à Publisher, deve também especificar um valor 0 para @publisher_security_mode e a informação de login Oracle para @publisher_login e @publisher_password. Isto cria um trabalho de Snapshot Agent para a publicação.