Aplicando um Patch no Oracle 10g R2

Olá pessoal.

Nesse post iremos mostrar como aplicar um patch de correção numa base em Single Instance.Uma tarefa simples que não requer muita configuração.Porém é necessário salientar que os patchs mesmo sendo simples de se aplicar, é necessário atentar para quais correções ele irá fazer, e se é necessário efetuar rollback em algum outro patch aplicado.
A aplicação de patchs são necessárias quando é preciso corrigir algum bug, de SQL, PL-SQL,Funções, Códigos internos,binários etc.

Vamos ao que interessa:

Cenário:
SO: Oracle Enterprise Linux
BD : Oracle 10g R2 32 bits
PATCH: 4516865_LINUX.ZIP


1 - Descompactar o arquivo de patch:
[oracle@oralinux patchs]$ unzip p4516865_10201_LINUX.zip
Archive:  p4516865_10201_LINUX.zip
   creating: 4516865/
   creating: 4516865/files/
   creating: 4516865/files/install/
  inflating: 4516865/files/install/changePerm.sh
  inflating: 4516865/files/install/restrict.lst
   creating: 4516865/etc/
   creating: 4516865/etc/config/
  inflating: 4516865/etc/config/inventory
  inflating: 4516865/etc/config/actions
   creating: 4516865/etc/xml/
  inflating: 4516865/etc/xml/GenericActions.xml
  inflating: 4516865/etc/xml/ShiphomeDirectoryStructure.xml
  inflating: 4516865/README.txt
[oracle@oralinux patchs]$


2 - Uma recomendação mais que necessária é ler o arquivo README, pois nele irá descrever os passos necessários para aplicação do Patch:
Segue alguns dados.....
#------------------------------------------------- ------------------------
Patch # Provisório para erros Base: 4516865, 4747264, 4908101 e 5039292.
#------------------------------------------------- ------------------------
#
# DATA: seg 17 outubro 2005 00:49:20
# -------------------------------
# Patch Plataforma de: Linux x86
# # Versão do produto: 10.2.0.1
Produto # Patched: RDBMS
#
# Erros corrigidos por este patch:
# -------------------------
# 4516865: permissões erradas após a instalação, OH E DIRETÓRIOS SUBSEQUENTE
# 4747264: permissões erradas após a instalação CLIENTE DE 10gR2 (10.2.0.1)
# 4908101: NÃO DBA usuários não podem acessar $ OH / NETWORK / ADMIN & $ OH / LDAP - 4516865 APLICADA
# 5039292: RELAX permissão em $ OH / LDAP / ADMIN TAMBÉM
#
#
# Nota: Se você já aplicou o patch para o bug 4516865 certifique-se de
# Executa os comandos a seguir, antes de "reaplicação" este patch:
# ------------------------------------------------- --------------------------
#
# 1. cd $ ORACLE_HOME / install
# 2. chmod 755 changePerm.sh
# 3. chmod 644 restrict.lst
#

3 - Iniciar o Programa Opatch nas pasta de binários do Oracle no diretório $ORACLE_HOME/Opatch :
[oracle@oralinux db_1]$ ./OPatch/opatch apply -local /u01/patchs/4516865/
Invoking OPatch 10.2.0.1.0


versão do Installer temporário Oracle 10.2.0.1.0
Copyright (c) 2005, Oracle Corporation. Todos os direitos reservados..




Oracle Home       : /u01/app/oracle/product/10.2.0/db_1
Inventário Central: /u01/app/oracle/oraInventory
   de           : /u01/app/oracle/product/10.2.0/db_1/oraInst.loc
Versão de OPatch    : 10.2.0.1.0
Versão de OUI       : 10.2.0.1.0
Localização de OUI      : /u01/app/oracle/product/10.2.0/db_1/oui
Localização do arquivo de log: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch-2011_Oct_05_05-41-50-BRT_Wed.log


ApplySession aplicando o patch temporário '4516865' para OH '/u01/app/oracle/product/10.2.0/db_1'


Você selecionou a opção -local; portanto, o OPatch só aplicará o patch ao sistema local.


Fazendo backup de arquivos e inventário (não para rollback automático) do Oracle Home
Fazendo backup de arquivos afetados pelo patch "4516865" para restauração. Isso pode demorar um pouco...
Fazendo backup de arquivos afetados pelo patch "4516865" para rollback. Isso pode demorar um pouco...


Patch de componente oracle.rdbms.rsf, 10.2.0.1.0...
Copiando o arquivo para "/u01/app/oracle/product/10.2.0/db_1/install/changePerm.sh"
Copiando o arquivo para "/u01/app/oracle/product/10.2.0/db_1/install/restrict.lst"
ApplySession adicionando o patch temporário '4516865' ao inventário


OPatch succeeded.
[oracle@oralinux db_1]$


4 - Listando os patchs aplicados:
[oracle@oralinux db_1]$ ./OPatch/opatch lsinventory
Invoking OPatch 10.2.0.1.0


versão do Installer temporário Oracle 10.2.0.1.0
Copyright (c) 2005, Oracle Corporation. Todos os direitos reservados..




Oracle Home       : /u01/app/oracle/product/10.2.0/db_1
Inventário Central: /u01/app/oracle/oraInventory
   de           : /u01/app/oracle/product/10.2.0/db_1/oraInst.loc
Versão de OPatch    : 10.2.0.1.0
Versão de OUI       : 10.2.0.1.0
Localização de OUI      : /u01/app/oracle/product/10.2.0/db_1/oui
Localização do arquivo de log: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch-2011_Oct_20_01-12-00-BRT_Thu.log


Lsinventory Output file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/lsinv/lsinventory-2011_Oct_20_01-12-00-BRT_Thu.txt


--------------------------------------------------------------------------------
Produtos Instalados em Nível Superior (1):


Oracle Database 10g                                                  10.2.0.1.0
Há 1 produtos instalados neste Oracle Home.




Patches temporários (1) :


Patch  4516865      : applied on Wed Oct 19 21:25:40 BRT 2011
   Created on 14 Feb 2006, 00:22:00 hrs US/Pacific
   Bugs fixed:
     5039292, 4747264, 4908101, 4516865




--------------------------------------------------------------------------------


OPatch succeeded.

6 - Através do help podemos encontrar demais opções.

Até o próximo galera!
Emerson Martins
DBA.

Referencias:
Linux Recipes for Oracle DBA
www.oracle.com