Fazer Upgrade de Microsserviços do Oracle GoldenGate Usando APIs REST

Conheça as etapas para fazer upgrade dos Microsserviços do Oracle GoldenGate usando as APIs REST.

Nesse momento, você deverá ter um novo home do Oracle GoldenGate 26ai MA e qualquer home de release anterior do Oracle GoldenGate MA.

Fazer Upgrade do Gerenciador de Serviços

Após a instalação da versão mais recente do Oracle GoldenGate MA, a próxima etapa é fazer upgrade do Service Manager.

Se estiver usando o XAG (Oracle Grid Infrastructure Agent), desative a instância GoldenGate antes de fazer upgrade do Service Manager:

 $ agctl disable goldengate <GoldenGate Name>

Ao fazer upgrade do Service Manager, você pode usar o seguinte exemplo de cURL para atualizar o home do Oracle GoldenGate:

curl -u adminname:adminpwd -X PATCH \
   https://hostname:port/services/v2/deployments/ServiceManager \
  -H 'cache-control: no-cache' \
  -d '{"oggHome":"new OGG_HOME_absolute_path", "status":"restart"}'

Nesta sintaxe, informe o novo caminho do diretório absoluto do diretório home do Oracle GoldenGate, como /u01/app/oracle/product/26ai/gghome_1.

Se não estiver usando XAG, verifique se o Gerenciador de Serviços está em execução no novo $OGG_HOME, usando o seguinte comando:

ps -ef | grep -i servicemanager

Se o Gerenciador de Serviços não estiver em execução, execute o seguinte comando para reiniciá-lo:

cd $NEW_OGG_HOME/bin
$ ./ServiceManager

Se estiver usando XAG, atualize os parâmetros GoldenGate –gg_home e --oracle_home:

$ agctl modify goldengate <GoldenGate Name>  --gg_home <New OGG_HOME directory> --oracle_home <New OGG_HOME directory>/lib/instantclient

OBSERVAÇÃO: se estiver usando o XAG, as implantações gerenciadas pelo Gerenciador de Serviços atualizado também DEVEM ser atualizadas. Não há suporte para executar implantações em um Gerenciador de Serviços usando uma release de software GoldenGate diferente ou OGG_HOME para o Gerenciador de Serviços.

Fazer Upgrade de uma Implantação

As implantações podem ser atualizadas na mesma etapa com o Gerenciador de Serviços ou podem ser atualizadas posteriormente após o upgrade do Gerenciador de Serviços.

Para fazer upgrade de uma implantação:

  1. Interrompa todos os processos Extract e Replicat normalmente:

    • Verifique a transação aberta (longa execução) e a Recuperação Vinculada, pois pode levar mais tempo para interromper o Extract normalmente.

    • Se quaisquer transações abertas desnecessárias estiverem visíveis, por exemplo, SEND EXTRACT group_name SHOWTRANS, essas transações poderão ser ignoradas ou imediatamente forçadas a serem interrompidas. Nesse caso, um checkpoint de Recuperação Vinculada pode ser recuperado usando o seguinte comando:

      SEND EXTRACT group_name, BR BRCHECKPOINT immediate

  2. (Somente Oracle GoldenGate for Oracle AI Database) O recurso Build Unificado exige que apenas o TNS_ADMIN seja ajustado para o software Oracle Database Client no Oracle GoldenGate.

    curl -k -u adminname:adminpwd -X PATCH
    \  https://server.oracle.com:9000/services/v2/deployments/uat_01
    \  -H 'cache-control: no-cache'
    \  -d '{"environment": [, {"name": "TNS_ADMIN" , "value": "/u01/app/oracle/network/admin"} ] }'

    Observação: ao fazer upgrade do 21c para o 26ai, essa etapa não é necessária. Se você estiver fazendo upgrade do Oracle GoldenGate 19c (ou anterior) para o 26ai, só precisará da variável de ambiente TNS_ADMIN.

    A variável de ambiente OGG_HOME pode detectar automaticamente as variáveis DATABASE_HOME, LD_LIBRARY_PATH e JAVA_HOME.

  3. (Somente Oracle GoldenGate for SQL Server) O Oracle GoldenGate 26ai for SQL Server no Linux inclui um driver ODBC para conectividade de banco de dados. Embora não seja necessário, recomenda-se utilizar o driver empacotado. Para usar o driver empacotado, duas novas variáveis de ambiente precisam ser criadas e qualquer arquivo odbc.ini criado anteriormente precisa ser atualizado. Adicione as seguintes variáveis do ambiente à implantação:

     curl -k -u adminname:adminpwd -X PATCH
     \  https://server.oracle.com:9000/services/v2/deployments/uat_01
     \  -H 'cache-control: no-cache'
     \  -d '{"environment": [ , {"name": "ODBCSYSINI" , "value": "*${OGG_HOME}/msodbc*"}
                           , {"name": "ODBCINI"    , "value": "*${OGG_HOME}/msodbc/odbc.ini*"}] }'

    Depois de criar as novas variáveis de ambiente, copie o arquivo odbc.ini existente para a pasta msodbc do Oracle GoldenGate e altere o valor do Driver ODBC de qualquer entrada DSN para o seguinte:

     Driver=Microsoft ODBC Driver for SQL Server
  4. Execute este comando cURL para fazer upgrade da implantação do Oracle GoldenGate:

     curl -u SM username: SM password -X PATCH
    http://hostname:servicemanager port/services/v2/deployments/Deployment-name
    
    -H 'cache-control: no-cache'
    
    -d '{"oggHome":" new OGG_HOME complete path","status":"restart"}'
  5. Iniciar todos os Extracts e Replicats.

    Se estiver usando XAG, reative a instância GoldenGate após fazer upgrade da implantação:

     $ agctl enable goldengate <GoldenGate Name>

Quando o Gerenciador de Serviços e a implantação forem reiniciados, o upgrade será concluído.

Observação: Para o Oracle GoldenGate para PostgreSQL, consulte Etapas de Pós-Upgrade antes de iniciar qualquer Extract.