Olá, pessoal! Hoje vamos continuar o nosso artigo mostrando como atualizar o seu Oracle RAC 11.2.0.2. Primeiro, vamos para um breve overview sobre os patches disponíveis para o Oracle Database. Os produtos Oracle contém diferentes tipos de patches disponíveis. Os principais são patchset, que é instalado com utilitário OUI, tem a convenção de nomenclatura ex: 10.2.0.5, 11.2.0.2 e 11.2.0.3 e a partir da release 11.2.0.2, os conjuntos de patch são fornecidos em pacotes de instalações completas do Oracle database, suportando atualizações out-of-place.
Outro patch disponível é o Merge LabelRequest (MLR), que contém a combinação de duas ou mais correções, é instalado com utilitário OPatch e o MLR requer a criação de um rótulo para um novo conjunto e código resultante da fusão em um Patch Set Exeption.
O Patch Set Update é um pacth cumulativo que contém correções de bugs recomendado e divulgados em uma programação trimestral. Como é instalado com o utilitário OPatch, o grid PSUs muitas vezes contém o Database PSU na mesma versão.
E por último, vamos para o Critical Patch Update (CPU), que contém correções relacionadas a segurança é divulgado trimestralmente.
O primeiro passo para atualização do Oracle RAC 11.2.0.2 é aplicar o patch (PSU) 12539000 (no mínimo). Esse patch irá corrigir o bug Rolling upgrade problem with ASM, de acordo com a nota 12539000.8. Ao escrever esse artigo já estava disponível o patch 17272753 para o grid infrastructure. Para mais informações, leia a seguinte nota publicada no My Oracle Support Patch 11.2.0.2 Patch Set – Availability and Known Issues (Doc ID 1179474.1).
Para atualização do meu RAC, eu apliquei o patch 16742320 do grid infrastructure que foi disponibilizado no mês de julho. Esse patch já estava disponível na minha máquina há algum tempo. Um procedimento muito importante é ler o readme do patch que deverá ser aplicado.
Com o utilitário OPatch iremos aplicar o patch para efetuar o upgrade do Oracle Rac. No diretório /u01/binarios/patch descompactei o arquivo zip que contém o patch que irá ser aplicado no grid Infrastructure; em seguida, com OPatch, passei os parâmetros auto e –och (Oracle Clusteware Home) para aplicar o patch.
[grid@ora-rac01 patch]$ pwd /u01/binarios/patch [grid@ora-rac01 patch]$ ls p16742320_112020_Linux-x86-64.zip [grid@ora-rac01 patch]$ unzip -t p16742320_112020_Linux-x86-64.zip [root@ora-rac01 patch]# opatch auto -och /u01/11.2.0/grid -olderver Executing /u01/11.2.0/grid/perl/bin/perl /u01/11.2.0/grid/OPatch/crs/patch11202.pl -patchdir /u01/binarios -patchn patch -och /u01/11.2.0/grid -paramfile /u01/11.2.0/grid/crs/install/crsconfig_params INC is /u01/binarios/patch/16459322/files/crs/install /u01/11.2.0/grid/crs/install /u01/11.2.0/grid/perl/lib/5.10.0/x86_64-linux- . . . /u01/11.2.0/grid/OPatch/ocm/bin/ocm.rsp Successfully unlock /u01/11.2.0/grid patch /u01/binarios/patch/16459322 apply successful for home /u01/11.2.0/grid patch /u01/binarios/patch/16619893 apply successful for home /u01/11.2.0/grid . . ACFS-9309: ADVM/ACFS installation correctness verified. CRS-4123: Oracle High Availability Services has been started. [root@ora-rac01 patch]#
Após termos aplicado com sucesso o patch 16742320 no grid infrastructure, verifiquei o histórico de aplicação de patch com utilitárioOPatch.
[grid@ora-rac01 ~]$ opatchlsinventory Oracle Interim Patch Installer version 11.2.0.3.5 Copyright (c) 2013, Oracle Corporation. All rights reserved. Oracle Home : /u01/11.2.0/grid Central Inventory : /u01/app/oraInventory from : /u01/11.2.0/grid/oraInst.loc OPatch version : 11.2.0.3.5 OUI version : 11.2.0.2.0 Log file location : /u01/11.2.0/grid/cfgtoollogs/opatch/opatch2013-10-14_00-02-30AM_1.log Lsinventory Output file location : /u01/11.2.0/grid/cfgtoollogs/opatch/lsinv/lsinventory2013-10-14_00-02-30AM.txt -------------------------------------------------------------------------------- Installed Top-level Products (1): Oracle Grid Infrastructure 11.2.0.2.0 There are 1 products installed in this Oracle Home. Interim patches (2) : Patch 16619893 : applied on Sun Oct 13 23:54:51 BRT 2013 Unique Patch ID: 16436553 Patch description: "Database Patch Set Update : 11.2.0.2.11 (16619893)" Created on 30 Jun 2013, 15:19:58 hrs PST8PDT Sub-patch 16056267; "Database Patch Set Update : 11.2.0.2.10 (16056267)" Sub-patch 14727315; "Database Patch Set Update : 11.2.0.2.9 (14727315)" Sub-patch 14275621; "Database Patch Set Update : 11.2.0.2.8 (14275621)" Sub-patch 13923804; "Database Patch Set Update : 11.2.0.2.7 (13923804)" Sub-patch 13696224; "Database Patch Set Update : 11.2.0.2.6 (13696224)" Bugs fixed: 9679507, 10350832, 13561951, 16855975, 12753253, 13080778, 10114837 10373381, 14461358, 10035737, 16742100, 12737666, 11076744, 11065646 . . . 10249791, 16007562, 11788856, 11664719, 9748749, 13554409, 11889177 Patch 16459322 : applied on Sun Oct 13 23:47:07 BRT 2013 Unique Patch ID: 16181562 Patch description: "Grid Infrastructure Patch Set Update : 11.2.0.2.10 (s)” Created on 4 Apr 2013, 03:23:00 hrs PST8PDT Bugs fixed: 16459322, 13696242, 13653086, 12827731, 12419353, 10425672, 10157506 9959110, 10272615, 10374874, 10314123, 10014392, 10057296, 10089120 . . . 13446398, 10193581, 12318560, 11804097, 10070563, 11058691, 13637590 13068077, 12591990 Rac system comprising of multiple nodes Local node = ora-rac01 Remote node = ora-rac02 -------------------------------------------------------------------------------- OPatch succeeded. [grid@ora-rac01 ~]$
Bem, agora o próximo passo, será executarmos o utilitário cluster verify. Esse passo é essencial para que nosso upgrade ocorra com sucesso.
[grid@ora-rac01 grid]$ ./runcluvfy.sh stage -pre crsinst -upgrade -n ora-rac01,ora-rac02 -rolling -src_crshome /u01/11.2.0/grid -dest_crshome /u01/app/11.2.0.3/grid -dest_version 11.2.0.3.0 Performing pre-checks for cluster services setup Checking node reachability... Node reachability check passed from node "ora-rac01" Checking user equivalence... User equivalence check passed for user "grid" Checking CRS user consistency CRS user consistency check successful Checking node connectivity... Checking hosts config file... Verification of the hosts config file successful . . . Checking OCR integrity... OCR integrity check passed Checking ASMLib configuration. Check for ASMLib configuration passed. Total memory check passed Available memory check passed Swap space check passed . . . User "grid" is not part of "root" group. Check passed Default user file creation mask check passed Checking consistency of file "/etc/resolv.conf" across nodes File "/etc/resolv.conf" does not have both domain and search entries defined domain entry in file "/etc/resolv.conf" is consistent across nodes search entry in file "/etc/resolv.conf" is consistent across nodes The DNS response time for an unreachable node is within acceptable limit on all nodes File "/etc/resolv.conf" is consistent across nodes UDev attributes check for OCR locations started... UDev attributes check passed for OCR locations UDev attributes check for Voting Disk locations started... UDev attributes check passed for Voting Disk locations Time zone consistency check passed . . ASM Running check passed. ASM is running on all specified nodes Oracle Cluster Voting Disk configuration check passed Clusterware version consistency passed Pre-check for cluster services setup was successful on all the nodes.
Após termos executado com sucesso o cluster verify, iremos executar o utilitário runInstaller para fazer o upgrade do grid infrastructure. No diretório /u01/binarios/grid executei o runInstaller.
[grid@ora-rac01 grid]$ ./runInstaller
Selecionamos a opção upgrade grid infrastructure:
Para o idioma, selecionei a opção Inglês.
No próximo passo automaticamente será selecionado os nós que fazem parte do nosso cluster:
Selecionamos os grupos para administração do ASM.
Especificamos a home que será instalado o binário do grid.
Em seguida, será verificado os pré-requisitos para instalação do grid infrastructure. Como já executamos o cluster verify, possivelmente todos os pré-requisitos estarão com o status de succeeded.
Agora iremos aguardar o instalador fazer os procedimentos de transferência de arquivos entre os nós do Cluster.
Ao terminar de copiar os arquivos binários para o servidores, será necessário executamos o script rootupgrade.sh (mas isso deverá aparecer nesta janela).
Iremos executar o script no primeiro nó e após o termino do script, será executado no segundo nó. Vejamos.
[root@ora-rac01 grid]# ./rootupgrade.sh Performing root useroperation for Oracle 11g The followingenvironmentvariables are set as: ORACLE_OWNER= grid ORACLE_HOME= /u01/app/11.2.0.3/grid Enterthefullpathnameofthe local bin directory: [/usr/local/bin]: The contentsof "dbhome" havenotchanged. No needtooverwrite. The contentsof "oraenv" havenotchanged. No needtooverwrite. The contentsof "coraenv" havenotchanged. No needtooverwrite. Entrieswillbeaddedtothe /etc/oratab file as neededby Database ConfigurationAssistantwhen a databaseiscreated Finishedrunninggenericpartof root script. Nowproduct-specific root actionswillbeperformed. Usingconfigurationparameter file: /u01/app/11.2.0.3/grid/crs/install/crsconfig_params Creating trace directory UserignoredPrerequisitesduringinstallation ASM upgrade hasstartedonfirst node. CRS-2791: Starting shutdown of Oracle High Availability Services-managedresourceson 'ora-rac01' CRS-2673: Attemptingto stop 'ora.crsd' on 'ora-rac01' CRS-2790: Starting shutdown of Cluster Ready Services-managedresourceson 'ora-rac01' CRS-2673: Attemptingto stop 'ora.registry.acfs' on 'ora-rac01' . . . CRS-2677: Stop of 'ora.gipcd' on 'ora-rac01' succeeded CRS-2673: Attemptingto stop 'ora.gpnpd' on 'ora-rac01' CRS-2677: Stop of 'ora.diskmon' on 'ora-rac01' succeeded CRS-2677: Stop of 'ora.gpnpd' on 'ora-rac01' succeeded CRS-2793: Shutdown of Oracle High Availability Services-managedresourceson 'ora-rac01' hascompleted CRS-4133: Oracle High Availability Services hasbeenstopped. OLR initialization - successful ReplacingClusterwareentries in inittab clscfg: EXISTING configurationversion 5 detected. clscfg: version 5 is 11g Release 2. Successfullyaccumulatednecessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operationsuccessful. Configure Oracle Grid Infrastructure for a Cluster ... succeeded Agora vamos executar o script no segundo nó. [root@ora-rac02 grid]# ./rootupgrade.sh Performing root useroperation for Oracle 11g The followingenvironmentvariables are set as: ORACLE_OWNER= grid ORACLE_HOME= /u01/app/11.2.0.3/grid Enterthefullpathnameofthe local bin directory: [/usr/local/bin]: The contentsof "dbhome" havenotchanged. No needtooverwrite. The contentsof "oraenv" havenotchanged. No needtooverwrite. The contentsof "coraenv" havenotchanged. No needtooverwrite. Entrieswillbeaddedtothe /etc/oratab file as neededby Database ConfigurationAssistantwhen a databaseiscreated Finishedrunninggenericpartof root script. Nowproduct-specific root actionswillbeperformed. Usingconfigurationparameter file: /u01/app/11.2.0.3/grid/crs/install/crsconfig_params Creating trace directory UserignoredPrerequisitesduringinstallation ASM upgrade hasstartedonfirst node. CRS-2791: Starting shutdown of Oracle High Availability Services-managedresourceson 'ora-rac02' CRS-2673: Attemptingto stop 'ora.crsd' on 'ora-rac02' . . . CRS-2793: Shutdown of Oracle High Availability Services-managedresourceson 'ora-rac02' hascompleted CRS-4133: Oracle High Availability Services hasbeenstopped. OLR initialization - successful ReplacingClusterwareentries in inittab clscfg: EXISTING configurationversion 5 detected. clscfg: version 5 is 11g Release 2. Successfullyaccumulatednecessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operationsuccessful. Configure Oracle Grid Infrastructure for a Cluster ... succeeded
Upgrade finalizado, agora para evidenciar nosso upgrade verificamos a versão ativa do cluster.
[root@ora-rac01 ~]# ps -ef |grepcss root 3611 1 0 01:52 ? 00:00:00 /u01/app/11.2.0.3/grid/bin/cssdmonitor root 3630 1 0 01:52 ? 00:00:00 /u01/app/11.2.0.3/grid/bin/cssdagent grid 3642 1 0 01:52 ? 00:00:02 /u01/app/11.2.0.3/grid/bin/ocssd.bin root 5122 5015 0 01:57 pts/1 00:00:00 grepcss [root@ora-rac01 ~]# crsctl query crsactiveversion Oracle Clusterware active version on the cluster is [11.2.0.3.0] [root@ora-rac01 ~]# crsctl query crsreleaseversion Oracle High Availability Services release version on the local node is [11.2.0.3.0] [root@ora-rac01 ~]# crsctl query crssoftwareversion Oracle Clusterware version on node [ora-rac01] is [11.2.0.3.0] [root@ora-rac01 ~]#
Bem, com isso finalizamos essa segunda parte do nosso artigo de atualização do Oracle RAC 11.2.0.2 para 11.2.0.3 com extensão do file system LVM.
Espero ter ajudado pessoal!