Detalhes do Suporte a Objetos e Operações no Oracle DML
Aqui está uma lista de objetos e operações do Oracle que o Oracle GoldenGate suporta para a captura e replicação de operações DML.
Banco de Dados de Contêiner Multitenant
O Oracle GoldenGate captura e entrega um banco de dados contêiner multitenant. Consulte Configurar um Banco de Dados Contêiner Multitenant.
O Oracle GoldenGate não suporta replicação de ponta a ponta Root-Child do contêiner de aplicativos
Tabelas, Views e Views Materializadas
As seguintes operações DML são suportadas para tabelas regulares, tabelas organizadas por índice, tabelas agrupadas e views materializadas:
-
INSERT -
UPDATE -
DELETE -
Operações de controle de transação associadas
A partir do Oracle GoldenGate 23ai, os seguintes recursos estão disponíveis para tabelas:
-
Coluna 4K em tabelas com tamanho de linha inferior a 4 MB
-
Blockchain e Tabelas Imutáveis
Consulte Limitações de Suporte para Blockchain e Tabelas Imutáveis para obter detalhes.
Dica:
Você pode usar a view do dicionário de dados DBA_GOLDENGATE_SUPPORT_MODE para exibir informações sobre o nível de suporte do processo de captura do Oracle GoldenGate para as tabelas do seu banco de dados. O valor PLSQL de DBA_GOLDENGATE_SUPPORT_MODE indica que a tabela é suportada nativamente, mas requer registro em log complementar procedural. Para mais informações, consulte DBA_GOLDENGATE_SUPPORT_MODE. Se precisar exibir todas as tabelas que não têm índices exclusivos primários e não nulos, você poderá usar o DBA_GOLDENGATE_NOT_UNIQUE. Para obter mais informações, consulte DBA_GOLDENGATE_NOT_UNIQUE.
Limitações do Suporte para Tabelas Regulares
Essas limitações se aplicam ao Extract.
-
O Oracle GoldenGate suporta tabelas que contêm qualquer número de linhas.
-
Uma linha pode ter até 4 MB de comprimento. Se o Oracle GoldenGate estiver configurado para incluir a imagem anterior e posterior de uma coluna em seu escopo de processamento, o comprimento máximo de 4 MB será aplicado ao comprimento total da imagem anterior mais o comprimento da imagem posterior. Por exemplo, se houver operações
UPDATEem colunas que estão sendo usadas como um identificador de linha, as imagens antes e depois serão processadas e não poderão exceder 4 MB no total. As imagens antes e depois também são necessárias para colunas que não são identificadores de linha, mas são usadas como colunas de comparação na detecção e resolução de conflitos (CDR). As colunas de caracteres que permitem mais de 4 KB de dados, como umCLOB, só têm os primeiros 4 KB de dados armazenados na linha e contribuem para o tamanho máximo da linha de 4 MB. Colunas binárias que permitem mais de 4kb de dados, como umBLOB, os primeiros 8 KB de dados são armazenados na linha e contribuem para o tamanho máximo da linha de 4 MB. -
O Oracle GoldenGate suporta o número máximo de colunas por tabela que é suportado pelo banco de dados.
-
O Oracle GoldenGate suporta o tamanho máximo de coluna suportado pelo banco de dados.
-
O Oracle GoldenGate oferece suporte a tabelas que contêm somente uma coluna, exceto quando a coluna contém um dos seguintes tipos de dados:
-
LOB -
LONG -
LONG VARCHAR -
Nested table -
Tipo Definido pelo Usuário (UDT)
-
VARRAY -
XMLType
-
-
Defina
DBOPTIONS ALLOWUNUSEDCOLUMNantes de replicar de e para tabelas com colunas não usadas. -
O Oracle GoldenGate suporta tabelas com estes atributos de particionamento:
-
Particionamento da faixa
-
Particionamento do Intervalo de Particionamento de Hash
-
Particionamento do Composto
-
Particionamento Baseado em Coluna Virtual
-
Particionamento de Referência
-
Particionamento de Lista
-
-
O Oracle GoldenGate suporta tabelas com colunas virtuais, mas não captura dados de alteração para essas colunas ou aplica dados de alteração a elas: O banco de dados não grava colunas virtuais no log de transações e o Oracle AI Database não permite DML em colunas virtuais. Pela mesma razão, os dados de carregamento inicial não podem ser aplicados a uma coluna virtual. Você pode mapear os dados de colunas virtuais para colunas de destino não virtuais.
-
O Oracle GoldenGate não considerará um índice/exclusivo com colunas virtuais.
-
O Oracle GoldenGate suporta replicação de/para o Oracle Exadata. Para suportar a compactação HCC (Exadata Hybrid Columnar Compression), a compatibilidade do banco de dados de origem deve ser definida como 11.2.0.0.0 ou superior.
-
O Oracle GoldenGate suporta TDE (Transparent Data Encryption).
-
O Oracle GoldenGate suporta instruções
TRUNCATEcomo parte de seu suporte a replicação de DDL ou como funcionalidade independente do suporte a DDL. -
O Oracle GoldenGate suporta a captura de carga direta
INSERT, com exceção da inserção de caminho direto do SQL*Loader para Binário XML e Objeto XML Relacional. O log complementar deve ser ativado e o banco de dados deve estar no modo de log de arquivamento. Os métodos de carga direta a seguir são suportados.-
dica
/*+ APPEND */ -
dica
/*+ PARALLEL */ -
SQLLDRcomDIRECT=TRUE
-
-
O Oracle GoldenGate suporta totalmente a captura de objetos compactados para Extract.
-
O Oracle GoldenGate suporta transações distribuídas XA e PDML.
-
O Oracle GoldenGate suporta operações DML em tabelas com a opção
FLASHBACK ARCHIVEativada. No entanto, o Oracle GoldenGate não suporta DDL que crie tabelas com a cláusulaFLASHBACK ARCHIVEou DDL que crie, altere ou exclua o próprio arquivo de dados de flashback.
Limitações do Suporte para Exibições
Essas limitações se aplicam ao Extract.
-
O Oracle GoldenGate suporta captura de uma view quando o Extract está no modo de carga inicial (capturando diretamente da view de origem, não do redo log).
-
O Oracle GoldenGate não captura dados de alteração de uma view, mas suporta a captura das tabelas subjacentes de uma view.
Limitações do Suporte para Views Materializadas
As views materializadas são suportadas pelo Extract com as seguintes limitações.
-
As views materializadas criadas
WITH ROWIDnão são suportadas. -
O log de view materializada pode ser criado
WITH ROWID. -
A tabela de origem deve ter uma chave primária.
-
Não há suporte para truncamentos de views materializadas. Você pode usar uma instrução
DELETE FROM. -
DML (mas não DDL) de uma atualização completa de uma view materializada é suportada. Se for necessário suporte a DDL para esse recurso, abra um caso de suporte do Oracle GoldenGate.
-
Para Replicat, o comando
Create MVdeve incluir a cláusulaFOR UPDATE -
As views materializadas podem ser replicadas ou as tabelas básicas subjacentes, mas não ambas.
Limitações de suporte para blockchain e tabelas imutáveis
A partir do Oracle AI Database 26ai, são suportadas tabelas imutáveis e blockchain. Veja a seguir as operações suportadas para o recurso:
Suporte para replicação unidirecional
-
Ambas as versões da tabela blockchain v1 (introduzida no Oracle Database 19.10) e v2 (introduzida no Oracle AI Database 26ai), bem como as versões da tabela imutável v1 (introduzida no Oracle Database 19.11) e v2 (introduzida no Oracle AI Database 26ai) são suportadas para todos os Replicats, exceto pelo Replicat coordenado.
-
Interoperabilidade entre tipos e versões:
-
Suporte para replicação de blockchain e tabelas imutáveis de qualquer versão na origem para tabelas convencionais no destino.
-
Não há suporte para replicação de tabelas convencionais na origem para qualquer blockchain e tabelas imutáveis de qualquer versão no destino.
-
-
A Replicação de DML, DDL e Procedural deve estar ativada. Para Replicação de Procedimento, a tabela Blockchain deve ser anexada.
-
As operações de exclusão de linhas expiradas não são replicadas. A expiração é gerenciada por cada sistema de banco de dados separadamente.
Suporte para Replicação Bidirecional (Ativo-Ativo)
-
Suporte somente para a versão v2.
-
Suporte para Replicat paralelo somente no modo integrado e Replicat integrado.
-
O ACDR deve ser configurado. O ACDR para blockchain e tabelas imutáveis contém os seguintes métodos de resolução:
-
Timestamp Mais Recente
-
Observação: nenhum outro método de resolução (como grupo de Colunas ou resolução delta) é suportado. Não há suporte para CDR manual.
-
-
Uma blockchain ou tabela imutável pode ter no máximo uma chave primária ou restrição exclusiva e não pode ter índices exclusivos.
-
A chave primária ou a restrição de chave exclusiva em blockchain ou tabelas imutáveis para ACDR usa índices não exclusivos.
-
O ACDR só gerencia conflitos INSERT-INSERT porque blockchain e tabelas imutáveis são tabelas somente INSERT. O ACDR adiciona duas colunas ocultas para timestamp (
CDRTS$ROW) e visibilidade (ORABCTAB_INVISIBLE$).
Essas colunas ocultas funcionam da seguinte forma:
ACDR resolverá um conflito e manterá as duas cópias da linha. Ela marcará uma INSERT em conflito que normalmente teria sido descartada ou substituída como logicamente inválida, definindo a coluna oculta
ORABCTAB_INVISIBLE$como 1. Como resultado, pode haver várias linhas com o mesmo valor de chave, mas no máximo 1 linha para cada chave será válida e terá oORABCTAB_INVISIBLE$definido como 0. -
Captura Automática de DML
O Oracle GoldenGate suporta as seguintes operações DML com o modo de captura automática:
-
O parâmetro
TABLEEXCLUSIONé suportado. -
O parâmetro
TABLEé suportado. -
O Extract grava os registros DML da tabela fornecidos pelo banco de dados para captura automática no arquivo de trilha.
Particionamento do Sistema
O particionamento do sistema é um recurso do Oracle AI Database que permite a criação de uma tabela com partições nomeadas. Uma tabela particionada pelo sistema não é mantida pelo banco de dados. Cada DML deve especificar a partição na qual a linha deve residir. Extrair e todos os modos de Replicat suportam o particionamento do sistema. Cada cabeçalho de registro de arquivo de trilha pertencente a uma tabela particionada pelo sistema inclui o nome da partição. A partir do Oracle GoldenGate 21c, um Registro de Nome de Partição (PNR) será gerado para tabelas particionadas do sistema, se ele estiver incluído no parâmetro PARTITION.
Consulte PARTITION \| PARTITIONEXCLUDE na Referência de Parâmetros e Funções do Oracle GoldenGate.
Sequências e Colunas de Identidade
-
As colunas de identidade são suportadas pelo banco de dados Oracle 18c em diante e exigem Extract, Parallel Replicat no modo Integrado ou Integrated Replicat.
Observação: A replicação de sequências geradas pelo sistema para colunas de Identidade não é suportada.
-
O Oracle GoldenGate suporta a replicação de valores de sequência e colunas de identidade em uma configuração de alta disponibilidade unidirecional e ativo-passivo.
-
O Oracle GoldenGate garante que os valores da sequência de destino sempre serão maiores que os da origem (ou iguais a eles, se o cache for zero).
Limitações de Suporte para Sequências
Essas limitações se aplicam ao Extract.
-
O Oracle GoldenGate não suporta a replicação de valores de sequência em uma configuração bidirecional ativo-ativo.
-
O tamanho do cache e o intervalo de incremento das sequências de origem e de destino devem ser idênticos. O cache pode ser de qualquer tamanho, incluindo 0 (
NOCACHE). -
A sequência pode ser definida como ciclo ou não, mas os bancos de dados de origem e de destino devem ser definidos da mesma maneira.
-
As tabelas com colunas de sequência padrão são excluídas da replicação do Extract.
Objetos e Operações Não Suportados no Oracle DML
Estes são objetos ou operações Oracle adicionais que não são suportados pelo Extract:
-
REFsão suportados nativamente para compatibilidade com o Oracle Database 12.2 e versões posteriores, mas não com base em chave primáriaREFs(PKREFs) -
Valores de sequência em uma configuração bidirecional ativo-ativo
-
Repetição do Banco de Dados
-
Tabelas criadas como
EXTERNAL