Oracle Software Patching com o OPLAN

Por Rogerio Eguchi
Publicado em Julho 2018

Revisado por Francisco Riccio



Esse artigo demonstrará ao leitor como utilizar-se do utilitário OPlan para gerar um guia de aplicação de patch no Oracle.


Introdução

O OPlan é um utilitário que facilita o processo de instalação de patches provendo um guia, passo a passo, com instruções específicas para a atualização do seu ambiente.

O processo tradicional de instalação de patch é baseado na leitura/entendimento do arquivo README.html e execução dos comandos necessários para a aplicação do patch.

Com a utilização do OPlan você coletará automaticamente as configurações do seu ambiente e receberá as instruções para a atualização.

As instruções cobrem os processos de instalação e rollback do patch bem como documentam múltiplas metodologias de instalação: in-place ou out-of-place.



Download do OPlan

Você conseguirá a última versão do utilitário OPlan no My Oracle Support, através do patch 6880880.


Configurações suportadas

Product Family

Product

Patch Type

Release

Plataform

Oracle Database

Oracle Exadata Database Machine

Recommended Bundle Patches

12.1.0.2
12.1.0.1

Linux x86-64, Solaris x86-64, Solaris SPARC (64 bit)

 

Oracle GI/RAC running on normal clusters

GI PSU and DB PSU

12.1.0.2
12.1.0.1

Linux x86-64, Solaris x86-64, Solaris SPARC (64 bit)

 

Oracle SIHA/SIDB

GI PSU and DB PSU

12.1.0.2
12.1.0.1

Linux x86-64, Solaris x86-64, Solaris SPARC (64 bit)


Para versões anteriores a 12c, favor consulta o MOS note 1306814.1.




Limitações conhecidas

  1. Oracle Data Guard não é suportado

    1. OPlan pode ser usado para criar um patch plan para Oracle homes rodando configurações de Oracle Data Guard, porém o OPlan não considerará esse ambiente elegível à um “Data Guard Standby-First Patch Apply”.

    2. Utilize o documento MOS 1265700.1 - Oracle Patch Assurance - Data Guard Standby-First Patch Apply.

  2. Configurações com Oracle Home compartilhado não são suportados pelo OPlan.

  3. Single Instance Databases utilizando a mesma configuração não são suportados.



Patching com o OPlan

Inicialmente vamos atualizar para a última versão do OPatch:

    1. Remova a versão anterior: rm –rf $ORACLE_HOME/OPatch

    2. Descompacte o arquivo:  unzip p6880880_<version_platform>.zip -d $ORACLE_HOME/OPatch

O OPlan será instalado no diretório $ORACLE_HOME/OPatch/oplan

Opcionalmente você pode realizar o download do oplan através do patch 11846294.



Faça agora o download do patch que será aplicado através do OPlan.

Para esse artigo, vou utilizar o Patch 27010941 - Combo of OJVM Component 12.1.0.2.180116 DB PSU + DB BP 12.1.0.2.180116, composto por dois patches:

    1. Patch 27001733 - Oracle JavaVM Component 12.1.0.2.180116 Database PSU

    2. Patch 27010930 - Database Proactive Bundle Patch 12.1.0.2.180116

Porém somente o Patch 27010930 pode ser instalado via oplan. Essa informação consta no arquivo README.html do patch.


Configure a variável ORACLE_HOME e com o usuário dono do home execute:

- $ORACLE_HOME/OPatch/oplan/oplan  generateApplySteps <bundle patch location>

Exemplo:

/u01/app/12.1.0.2/grid/OPatch/oplan/oplan  generateApplySteps /u01/disks/27010941/27010930/




Um arquivo com as instruções para aplicar o patch 27010930 foi gerado nos formatos TEXT e HTML.

Por recomendação da Oracle, revise o arquivo HTML ApplyInstructions.html ao invés do arquivo TEXT.

  • Overview do sistema: é gerado um diagrama que representa a configuração do ambiente:


  • São informadas as opções que podem ser utilizadas para se aplicar o patch em questão:

    1. Out-of-Place Patching: Apply Patch to a Cloned Oracle Home and Switch.

      Essa é a opção recomendada pela Oracle. Consiste em clonar o ORACLE_HOME e aplicar o patch no clone. Os recursos do cluster são parados no OH original e iniciados no OH clone, já atualizado. Caso necessário o rollback, utilize o método Switchback para voltar ao OH original.

      Vantagens: Zero downtime, melhor opção para diagnóstico em caso de problemas e rollback rápido já que o patch não é aplicado no OH original.

      Desvantagens: Consome mais tempo e tem um número maior de etapas.


    2. In-Place Patching: Apply Patch to Existing Oracle Homes.

      Nessa opção o patch é aplicado diretamente nos ORACLE_HOME’s especificados e consome menos tempo. Você pode utilizar essa opção de duas formas:

      • Rolling Mode: Os recursos em execução são parados, atualizados e reiniciados, node a node, em sequência. Dessa forma temos sempre um node do cluster ativo e o serviço do banco disponível, mas o tempo para atualização é maior.

        Quando utilizamos o método rolling, podemos utilizar os comandos OPatch Auto ou OPatch. A principal diferença entre os utilitários refere-se a maior facilidade de diagnóstico do OPatch em caso de falha no processo de atualização.

        O artigo OTN Aplicando o Oracle Database Bundle Patch em ambiente Oracle 12.1 RAC Multitenantdemonstra como utilizar-se do OPatch Auto.


      • Non-Rolling Mode: Todos os recursos do cluster serão parados antes de se iniciar a atualização. Esse método é mais rápido do que o método rolling porém requer indisponibilidade do serviços.



Instruções de Patching

O arquivo ApplyInstructions.html contém todas as instruções para se aplicar o patch:



Você deve escolher o método desejado e clicar em Show Steps ou Show Content.

Exemplo:





Agora você deve clicar em cada um dos 29 passos para verificar o comando a ser executado.

Por exemplo, vou clicar nos passos 2.1.1 e 2.1.2.

Leia a instrução e o comando a ser aplicado:




Conclusão

O OPlan é um utilitário que fornecerá ao DBA um guia detalhado para facilitar a aplicação de patch no ambiente.

Com esse guia, o DBA poderá consultar todas as etapas e comandos necessários para concluir o processo de atualização de forma correta e segura.


Referências

Oracle Software Patching with OPLAN (Doc ID 1306814.1)
https://blogs.oracle.com/xpsonha/patching-for-exadata:-introducing-oplan




Rogerio Bacchi Eguchi é um DBA Oracle Sênior com extensa experiência em ambientes OLTP de missão crítica e que empregam as tecnologias da "Oracle Maximum Availability Architecture". Atuou como DBA em empresas como Oracle, UOL, UOLDiveo, PagSeguro e atualmente atua como DBA/DMA na TOTVS. Possui as certificações Oracle OCP 8i, 9i, 10g, 11g, 12c e OCE Exadata. Atua também como SysAdmin/DEVOPS onde é certificado Linux RHCE. Entusiata de novas tecnologias como big data, automações e cloud computing. Compartilha conhecimento no blog reguchi.wordpress.com e twitter @reguchi_br.

Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.