Observação:

Implante os Microsserviços do Oracle GoldenGate entre Regiões no Oracle Cloud Infrastructure usando o Oracle Database

Introdução

A arquitetura de microsserviços (MA) do Oracle GoldenGate é uma ferramenta de replicação que permite gerenciar e configurar a replicação de dados em vários ambientes de banco de dados. Ele usa serviços RESTful e uma arquitetura baseada em microsserviços para simplificar o gerenciamento, a configuração e o monitoramento de implantações em nuvem.

image

Oracle GoldenGate 23ai:

Histórico de Avaliações do Oracle GoldenGate 23ai

image

Recursos do Oracle GoldenGate 23ai

image

Implementação do Oracle GoldenGate

Neste tutorial, usaremos bancos de dados de origem e destino como microsserviços do Oracle Database 23ai e do Oracle GoldenGate 23ai como serviço na OCI para replicar dados da região Ashburn do banco de dados de origem para a região San Jose do banco de dados de destino. O Oracle GoldenGate pode ser implantado em qualquer uma das regiões. Implantaremos o Oracle GoldenGate na região de San Jose e conectaremos o banco de dados de origem e destino usando a mesma implantação do Oracle GoldenGate.

image

Observação: : Este é um Diagrama simplificado. O nome da Rede Real pode ser diferente.

Ambiente:

Região do OCI Compartimento VCN Sub-rede CDB PDB Vault Chave Segredo Golden Gate
Ashburn Banco de Dados/NonProd VCN_ASH Pub/Pri_VCN_ASH VMDB1 VMDB1_PDB1 Vault_ASH NA NA NA
San José Banco de Dados/NonProd VCN_SJ Pub/Pri_VCN_SJ VMDB2 VMDB2_GG Vault_SJ GGKey oggadmin OGG_Dep_23ai

Público-alvo

Este tutorial se destina a administradores de sistema e usuários de banco de dados para aprender sobre os microsserviços do Oracle GoldenGate. Supõe-se que os leitores estejam familiarizados com a tecnologia do Oracle GoldenGate, tecnologias da Web, OCI e tenham uma compreensão geral das plataformas UNIX.

Objetivos

Pré-requisitos

Tarefa 1: Provisionar Implantação do Oracle GoldenGate

Para provisionar a implantação como serviço do Oracle GoldenGate no OCI, são necessárias políticas mínimas para o usuário que criará a implantação e as conexões. A tarefa adicional durante a manutenção é interromper e iniciar a implantação.

As seguintes políticas são obrigatórias:

allow group <identity-domain>/<group-name> to manage goldengate-family in compartment <compartment-name>
allow group <identity-domain>/<group-name> to manage virtual-network-family in compartment <compartment-name>
allow service goldengate to {idcs_user_viewer, domain_resources_viewer} in tenancy
allow group <identity-domain>/<group-name> to manage secret-family in <location>
allow group <identity-domain>/<group-name> to use keys in <location>
allow group <identity-domain>/<group-name> to use vaults in <location>
allow service goldengate to use keys in <location>
allow service goldengate to use vaults in <location>

Para provisionar a implantação do Oracle GoldenGate, vá para a Console do OCI e selecione a respectiva região e compartimento.

  1. Clique em Oracle Database e selecione GoldenGate.

  2. Selecione implantação e clique em Criar implantação.

  3. Digite o Nome da implantação, crie o Compartimento no qual a implantação do Oracle GoldenGate deve residir, selecione Implantação ou teste, digite a contagem de OCPUs. Mantivemos o dimensionamento automático desativado a partir de agora, o que pode ser ativado posteriormente. Selecione Sub-rede, tipo de licença e clique em Próximo.

    image

  4. Selecione o tipo de implantação, a Versão do Oracle GoldenGate e o nome da instância GoldenGate, digite Nome de usuário do administrador como oggadmin e forneça o nome do compartimento no qual o segredo é criado na seção Pré-requisitos, selecione o Segredo de senha no menu drop-down e clique em Criar.

    image

    Levará alguns minutos para que a implantação do Oracle GoldenGate seja criada. A implantação do Oracle GoldenGate será criada no compartimento (root)/Database/NonProd.

Tarefa 2: Fazer log-in na Console do Oracle GoldenGate

  1. Depois que a implantação do Oracle GoldenGate for concluída, abra a Implantação e clique em Iniciar Console.

    image

  2. Faça log-in usando a implantação do Oracle GoldenGate Nome do Usuário e Senha usados durante a criação da implantação.(Ex.oggadmin/senha)

    image

Tarefa 3. Preparar o Banco de Dados de Origem e de Destino

Observação: A partir do Oracle GoldenGate 23ai, a extração no nível raiz não é suportada. Isso implica que os privilégios de usuário são designados apenas no nível do PDB e o usuário c##ggadmin não é usado com o Oracle GoldenGate 23ai. O Oracle GoldenGate 23ai com o Oracle Database permite a implementação de bancos de dados plugáveis (PDBs) para origem e destino. A extração é registrada para um PDB específico, que é chamado de extração por PDB.

  1. Certifique-se de que o registro em log forçado esteja ativado no banco de dados de origem.

    select name, force_logging from v$database;
    ALTER DATABASE FORCE LOGGING;
    select name, force_logging from v$database;
    
  2. Ative o log complementar mínimo.

    SELECT supplemental_log_data_min "Minimum", supplemental_log_data_pk  "Primary key", supplemental_log_data_ui  "Unique Key",
    supplemental_log_data_fk  "Foreign Key",supplemental_log_data_all "All" FROM  v$database;
    
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    
    SELECT supplemental_log_data_min "Minimum", supplemental_log_data_pk  "Primary key", supplemental_log_data_ui  "Unique Key",
    supplemental_log_data_fk  "Foreign Key",supplemental_log_data_all "All" FROM  v$database;
    
  3. Altere o parâmetro para extração do Oracle GoldenGate.

    Show parameter enable_goldengate_replication
    show parameter streams_pool_size
    ALTER SYSTEM SET enable_goldengate_replication=TRUE SCOPE=BOTH;
    alter system set streams_pool_size=2G scope=both sid='*';
    Show parameter enable_goldengate_replication
    show parameter streams_pool_size
    
  4. Execute a consulta a seguir no banco de dados de origem (PDB).

    alter session set container=VMDB1_PDB1;
    create tablespace ggs_tbs;
    create tablespace gguser_tbs;
    create user GGADMIN identified by PPassword_123 default tablespace ggs_tbs quota unlimited on ggs_tbs profile C##GGADMINPROFILE;
    
    GRANT CONNECT, RESOURCE TO GGADMIN;
    GRANT CREATE ANY TABLE, ALTER ANY TABLE, DROP ANY TABLE, SELECT ANY TO GGADMIN;
    GRANT OGG_CAPTURE TO GGADMIN;
    grant select any dictionary to GGUSER;
    grant select any transaction to GGUSER;
    
  5. Execute a consulta a seguir no banco de dados de destino (PDB).

    alter session set container=VMDB1_GG;
    create tablespace ggs_tbs;
    create tablespace gguser_tbs;
    
    create user GGADMIN identified by PPassword_123 default tablespace ggs_tbs quota unlimited on ggs_tbs profile C##GGADMINPROFILE;
    
    GRANT CONNECT, RESOURCE TO GGADMIN;
    GRANT CREATE ANY TABLE, ALTER ANY TABLE, DROP ANY TABLE, SELECT ANY TO GGADMIN;
    GRANT OGG_APPLY, OGG_APPLY_PROCREP  TO GGADMIN;
    grant select any dictionary to GGUSER;
    grant select any transaction to GGUSER;
    

Tarefa 4. Criar Conexão com o Banco de Dados de Origem e de Destino

Depois que a implantação e o banco de dados do Oracle GoldenGate estiverem prontos, precisamos fazer uma conexão entre o serviço Oracle GoldenGate e o banco de dados.

  1. Faça log-in na Console do OCI, selecione a região e o compartimento.

  2. Clique em Oracle Database e selecione GoldenGate.

  3. Selecione Conexões e clique em Criar conexão.

  4. Digite o Nome da conexão, o Compartimento no qual você deseja que a conexão seja criada, Tipo do banco de dados e clique em Próximo.

    image

  5. Para criar uma conexão com o banco de dados de origem, digite as seguintes informações e clique em Criar.

    • Selecione Inserir informações do banco de dados, pois o banco de dados está em outra região.
    • String de conexão do banco de dados: Informe o IP como nome do host porque o nome do host exigiria que o DNS o resolvesse.
    • Nome do usuário do banco de dados: Digite GGADMIN que foi criado na Tarefa 3.
    • Senha do usuário do banco de dados: Informe a senha do usuário do banco de dados.
    • Método de roteamento de tráfego: Selecione Ponto Final Dedicado.
    • Modo de sessão: Selecione Direto.
    • Sub-rede Pública: Digite Subnet-VCN_SJ.

    image

    (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.192)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = vmdb1_pdbsub02090909270.vcnash.oraclevcn.com)))
    

    Depois que a conexão for criada, abra o detalhe da conexão em GoldenGate, clique em Implantação designada e Designar implantação.

    image

  6. Como origem, crie a conexão OGG_VMDB2_SJ com o banco de dados de destino e designe a implantação. Só diferença, como o Oracle GoldenGate e o Oracle Database estão na mesma região e VCN, podemos selecionar diretamente o banco de dados, conforme mostrado na captura de tela a seguir.

    image

    Como o banco de dados está na mesma Região, podemos selecionar diretamente o banco de dados e informar o nome de usuário e a senha do banco de dados para GGADMIN criado na Tarefa 3.

    image

  7. Valide a conexão de origem e destino no Oracle GoldenGate. Depois que uma conexão for criada, faça log-in na Console do Oracle GoldenGate. Clique em Conexões de Banco de Dados; ele mostrará todas as conexões. Clique em conexão de origem e destino e certifique-se de que ambas as conexões estejam sendo resolvidas.

    image

Tarefa 5: Configuração de Extração

  1. Adicione trandata.

    Observação: Certifique-se de ativar o suplemento no nível da tabela adicionando TRANDATA. Se o log complementar no nível do esquema já estiver ativado, você poderá ignorar essas etapas.

    1. Para adicionar trandata, primeiro precisamos estabelecer conexão com o banco de dados de origem na Console do Oracle GoldenGate. Clique na conexão do banco de dados de origem.

    2. Clique em +, selecione Tabela ou Esquema e informe o Nome da Tabela ou o Nome do Esquema.

      No caso de replicação no nível da tabela, selecione Tabela e informe o nome da tabela no formato <Schema_Name.Table_Name>.

    3. Selecione Todas as Colunas se a tabela não tiver chaves e selecione Preparar Modo CSN como agora.

      image

    4. Depois que trandata for adicionado, você poderá procurá-lo fornecendo o nome da tabela ou do esquema na barra de pesquisa, conforme mostrado na imagem a seguir.

      image

  2. Crie um Extract Integrado.

    1. Conecte-se à conexão OGG_VMDB1_PDB1_ASH do banco de dados de origem (PDB) na Console do Oracle GoldenGate e crie a Tabela CheckPoint.

      image

    2. Conecte-se à conexão OGG_VMDB1_PDB1_ASH do banco de dados de origem (PDB) na Console do Oracle GoldenGate e crie a Tabela de Heartbeat somente para o banco de dados de destino.

      image

  3. Adicione um Extract Integrado.

    1. Depois que o trandata for adicionado com sucesso, adicione o Extract Integrado para tabelas ou esquemas mencionados. Selecione a extração no menu de navegação do Oracle GoldenGate. Clique em + na seção de extração.

    2. Selecione Extração Integrada, digite Nome do Processo (máximo de 8 caracteres) e Descrição.

      image

    3. Selecione OracleGoldenGate como a credencial de origem Domínio no menu drop-down, credencial Alias, Trilha, Perfil de Criptografia e assim por diante.

      image

    4. Na seção Opção Gerenciada, selecione Nome do Perfil, Reinicialização Automática, Máximo de Repetições, Minutos de Atraso de Repetição, Janela Repetições e clique em Próximo.

      image

    5. Depois que o arquivo de parâmetros padrão for criado, adicione outros parâmetros necessários ao arquivo de parâmetros, se necessário, e clique em Criar.

      image

      Parâmetro usado na extração DEV.

      EXTRACT EX_VMDB1
      USERIDALIAS OGG_VMDB1_PDB1_ASH DOMAIN OracleGoldenGate
      EXTTRAIL et
      TABLE GG_ASH.*;
      
  4. Inicie o Extract Integrado.

    1. Depois que a extração for criada, clique em Iniciar.

      image

      Depois que a extração for executada com êxito, ela será mostrada no status Em Execução.

      image

    2. Expanda Processo de Extração, ele mostrará muitas seções, como Checkpoint, Estatísticas e Relatório. Atualmente você pode ver o relatório. Clique em Atualizar no lado direito para atualizar o relatório ou as estatísticas.

      image

Tarefa 6: Carregamento de Dados Inicial

  1. Faça dump de exportação baseado em SCN do esquema mencionado no PDB de origem.

    $mkdir -p /u01/app/oracle/dump
    
    SQL>  alter session set container=VMDB1_PDB1;
    set lines 300 pages 100
    col DIRECTORY_NAME for a30
    col DIRECTORY_PATH for a100
    select DIRECTORY_NAME,DIRECTORY_PATH from dba_directories where DIRECTORY_NAME='DUMP' ;
    
    create directory dump as '/u01/app/oracle/dump';
    grant read,write on directory DUMP to GG_ASH;
    
    SQL> select current_scn from v$database;
    
    CURRENT_SCN
    -----------
       20049713
    
    expdp GG_ASH/PPassword_123@VMDB1_PDB1_ASH directory=dump dumpfile=GG_ASH.dmp logfile=GG_ASH.log schemas=GG_ASH FLASHBACK_SCN=20049713
    
  2. Importe os dados no PDB de destino.

    Observação: Neste tutorial, concedemos acesso de DBA ao GG_ash, mas você pode conceder acesso de acordo com o requisito.

    $mkdir -p /u01/app/oracle/dump/
    SQL> alter session set container=VMDB2_GG1;
    SQL> create user GG_ash identified by PPassword_123 default tablespace ggs_tbs quota unlimited on ggs_tbs ;
    SQL> grant DBA to GG_ash;
    SQL> create directory dump as '/u01/app/oracle/dump';
    SQL> grant read,write on directory DUMP to GG_ASH;
    [oracle@sjvmdb2 admin]$ cp /tmp/GG_ASH.dmp /u01/app/oracle/dump/GG_ASH.dmp
    [oracle@sjvmdb2 admin]$ impdp GG_ASH/PPassword_123@VMDB2_GG1 directory=dump dumpfile=GG_ASH.dmp logfile=imp_GG_SJ.log
    

Tarefa 7: Configuração do Replicat

  1. Criar Replicat Integrado.

    1. Para adicionar trandata, primeiro precisamos fazer a conexão com o banco de dados de origem na Console do Oracle Goldengate. Selecione Replicar no painel esquerdo e clique em + em Replicar.

    2. Selecione Replicat Integrado, digite Nome do Replicat, Descrição e clique em Próximo.

      image

    3. Informe a Trilha de Replicação (a mesma fornecida no Processo de Extração - Tarefa 5), o Perfil de Criptografia, o Domínio, o Alias, a Tabela CheckPoint (criada durante a Extração - Tarefa 5) e o Local do log.

      image

    4. Na seção Opção Gerenciada, selecione Nome do Perfil, Reinicialização Automática, Máximo de Repetições, Atraso de Repetição, Janela Repetições e clique em Próximo.

      image

    5. Uma vez criado o arquivo de parâmetros padrão. Adicione outros parâmetros necessários no arquivo de parâmetros, se necessário, e clique em Criar.

      image

  2. Inicie o processo Replicat em flashback_SCN.

    1. Depois que o processo Replicat for criado, clique em três pontos e em Start with Options.

      image

    2. Selecione Ponto Inicial como Após o CSN e o número do CSN, que é o número do SCN que usamos como SCN de flashback durante a exportação. Ative Filtrar Duplicações e clique em Iniciar.

      image

    3. Clique em Replicar, ele mostrará muitas seções, como Checkpoint, Estatísticas e Relatório. Clique em Relatório e Atualizar no lado direito para atualizar o relatório ou as estatísticas.

      image

Tarefa 8: Validar Replicação de Dados

  1. Depois que Extract e Replicat forem configurados, faça log-in na Console do Oracle GoldenGate e clique em Home. Você pode ver que Extract e Replicat estão em execução.

  2. Insira alguns dados no banco de dados de origem (PDB), o mesmo deve refletir no banco de dados de destino (PDB).

    image

  3. Conecte ao banco de dados de origem.

    image

  4. Estabelecer conexão com o banco de dados de destino.

    image

Confirmações

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal Oracle Learning YouTube. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.