Migrando de Goldengate 11 para Goldengate 12 passo a passo

Olá amigos.

Recentemente tive que fazer algumas migrações de Goldengate, tive que fazer uma documentação detalhada do procedimento, então aproveitei para compartilhar com vocês, bom divertimento:

  1. Procedimento detalhado de upgrade de Oracle Goldengate 11g para Oracle Goldengate 12c.

    1. Baixar o binário do 12c pelo site Edelivery e copiar para a maquina onde será feito o upgrade.
    2. Definir um home de instalação padrão para o Goldengate 12c
      1. SUGESTÃO:   /u01/app/oracle/product/goldengate12c
    3. Definir uma janela de parada total das transações na produção entre 1 e 2 horas para executar o procedimento de upgrade dos binários do Goldengate
    4. Pegar o SCN do banco no momento antes de parar o extrator
      1. sqlplus / as sysdba
      2. select current_scn from v$database;
    5. Conectar no Goldengate 11.
      1. cd $GG_HOME
      2. ./ggsci
    6. Garantir que não há mais nenhuma transação na base de dados de origem e também garantir que todas as ultimas transações foram replicadas na base de destino antes de parar os extratores e replicadores.
      1. Parar todas aplicações que apontam para essa base de dados
      2. Parar o listener
  • Parar os Jobs internos
  1. Parar as execuções via Crontab “se existir”
  2. Parar os jobs externos via ferramentas, por exemplo “Control M, Patrol, NetBackup, TSM, etc”
  3. Garantir via sqlplus que não há mais nenhum usuário externo ou transação ativa.
  1. Parar o Extrator editar o parameter file e retirar o “Format release 11.2”
    1. GGSCI> INFO EXTRACT group, SHOWCH
    2. GGSCI> SEND EXTRACT group, SHOWTRANS
  • SEND EXTRACT group, {SKIPTRANS | FORCETRANS} transaction_ID [THREAD n] [FORCE]
  1. GGSCI> SEND EXTRACT group, BR BRCHECKPOINT IMMEDIATE
  2. — parar dms e ddls no banco, melhor fazer em uma janela
  3. GGSCI> SEND EXTRACT group LOGEND
  • GGSCI> STOP EXTRACT group
  1. Parar o Pump editar o parameter file e retirar o “Format release 11.2”
    1. GGSCI> SEND EXTRACT group LOGEND
    2. GGSCI> STOP EXTRACT group
  2. Fazer o etrolover no pump para fechar o trail file atual.
    1. GGSCI> ALTER EXTRACT group ETROLLOVER
    2. — The command should return “Rollover performed.”
  • GGSCI> INFO EXTRACT group, DETAIL
  1. GGSCI> ALTER EXTRACT pump, EXTSEQNO seqno, EXTRBA RBA
  1. Parar o Replicador e se for necessário, reposicionar o Replicador no novo Pump versão 12 do trail file.
    1. GGSCI> info REPLICAT group
    2. GGSCI> STOP REPLICAT group
  • GGSCI> ALTER REPLICAT group, EXTSEQNO seqno, EXTRBA RBA
  1. Verificar se tem algum processo do Goldengate travado com o camando “os”, caso exista matar com o comando “kill -9”
    1. pf -ef |grep ggate
    2. kill -9
  2. Rodar no banco de dados como sysdba os scripts para desinstalar o Goldengate 11G
    1. sqlplus / as sysdba
    2. @ddl_disable
  • @ddl_remove     log >> ddl_remove_spool.txt
  1. @marker_remove   log >> marker_remove_set.txt
  1. Garantir que não esteja rodando nenhum DDL nem DML no banco de dados.
    1. Script para verificar transações ativas
    2. select t.start_time, s.sid,s.serial#,s.username,s.status,s.schemaname,s.osuser,s.process,s.machine,s.terminal,s.program,s.module,s.type, to_char(s.logon_time,’DD/MON/YY HH24:MI:SS’) logon_time from v$transaction t, v$session s where s.saddr = t.ses_addr and s. status = ‘ACTIVE’ order by start_time
  • Script para matar as transações ativas se for necessário
  1. select ‘alter system kill session ”’||s.sid||’,’||s.serial#||”’ immediate;’, s.osuser,s.machine,s.module, CEIL(24*(SYSDATE-t.START_DATE)) from v$session s, v$transaction t WHERE S.SADDR=T.SES_ADDR and CEIL(24*(SYSDATE-t.START_DATE))>12;
  1. Fazer backup do binário do Goldengate 11
    1. tar -cvf backupgg11.tar
  2. Instalar binário do Goldengate 12C via Universal Installer

https://docs.oracle.com/goldengate/1212/gg-winux/GIORA/install.htm#GIORA162

Oracle GoldenGate 12c Using Universal Installer1
Enter the appropriate GoldenGate directory where you want to install binaries. Provide the Oracle home location so that GoldenGate can use the shared library libnnz12.so. Modify the port if a different one is required. The Manager process can also be selected to start up after the installation is completed.

Oracle GoldenGate 12c Using Universal Installer2
Review the information provide before starting the install process.

Oracle GoldenGate 12c Using Universal Installer3
Installation in progress.

Oracle GoldenGate 12c Using Universal Installer4
Installation completed.

Oracle GoldenGate 12c Using Universal Installer5
Once the installation is complete you can confirm by checking the contents of Inventory.

Fig-6

  1. Copiar o GLOBALS do home antigo para o novo home 12C do Goldengate
  2. Copiar os arquivos de parâmetro .prm do home antigo para o novo home do Goldengate
  3. Atualizar as variáveis de ambiente para refletir no o novo Home 12C “GG_HOME”
  4. Verificar a versão atual e os patches do ambiente através do “opatch lsinventory”
  5. Upgrade da tabela de checkpoint checkpointtable para versão 12c do Goldengate
    1. GGSCI> DBLOGIN [{SOURCEDB} data_source]|[, database@host:port] |{USERID {/| user id}[, PASSWORD password] [algorithm ENCRYPTKEY {keyname |DEFAULT}] |USERIDALIAS alias [DOMAIN domain]}
    2. GGSCI> UPGRADE CHECKPOINTTABLE [owner.table]
  6. Se conectar no banco de dados como sysdba e rodar o ulg.sql
  7. sqlplus / as sysdba
  8. @ulg.sql — o ulg apaga e recria trandatas das tabelas, para isso ele faz um lock exclusivo nessas tabelas, esse script deverá ser executado somente se houver certeza que não há nenhuma transação ou alteração nessas tabelas envolvidas na replicação durante sua execução.
  • Após rodar o ulg com sucesso seguir adiante, caso contrario abrir chamado na Oracle My Suporte para resolver o problema.
  1. Criar os objetos de replicação de DDL e tabelas de controle do Goldengate.
    1. @marker_setup
    2. Para ativar a replicação de ddl tem que ter uma tablespace exclusiva para o Goldengate
  • @ddl_setup
  1. @role_setup
  2. grant da role gerada para o usuario do Goldengate
  3. @ddl_pin gguser
  • @ddl_enable.sql
  1. Ajustar o novo parâmetro de banco de dados referente ao Goldengate “se 11.2.0.4”.
    1. Alter system set ENABLE_GOLDENGATE_REPLICATION=TRUE
  2. Conceder os privilegios necessários para usar o Extract integrado – já deixar preparado
    1. exec dbms_goldengate_auth.grant_admin_privilege(‘GG_ADMIN’)
  3. Ajustar o parâmetro Streams pool size se for usar Extract integrado(1Gb a 5Gb)
    1. alter system set streams_pool_size=5G
  4. Recriar extracts datapumps e replicats
    1. Para facilitar o processo de criação de todos os processos,pode ser criado um arquivo obey, por exemplo gg11_OBEY_add.oby
    2. Colocar o parâmetro NOUSEANSISQLQUOTES no Globals para permitir o Goldengate entender as aspas duplas.
  • Caso o parâmetro não tenha efeito o utilitário convprm deverá ser usado para fazer essas conversões de aspas duplas e aspas simples.

Sobre Alexandre Pires

ORACLE OCS Goldengate Specialist, OCE RAC 10g R2, OCP 12C, 11g, 10g , 9i e 8i - Mais de 25 anos de experiência na área de TI. Participei de projetos na G&P alocado na TOK STOK, EDINFOR alocado na TV CIDADE "NET", 3CON Alocado no PÃO DE AÇUCAR, DISCOVER alocado na VIVO, BANCO IBI e TIVIT, SPC BRASIL, UOLDIVEO alocado no CARREFOUR e atualmente na ORACLE ACS atendendo os seguintes projetos: VIVO, CLARO, TIM, CIELO, CAIXA SEGUROS, MAPFRE, PORTO SEGURO, SULAMERICA, BRADESCO SEGUROS, BANCO BRADESCO, BASA, SANTANDER, CNJ, TSE, ELETROPAULO, EDP, SKY, NATURA, ODEBRESHT, NISSEI, SICREDI, CELEPAR, TAM, TIVIT, IBM, SMILES, CELEPAR, SERPRO,OKI,BANCO PAN, etc
Esse post foi publicado em GOLDENGATE, UPGRADE e marcado , . Guardar link permanente.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s