A
mediados de febrero del 2018 se liberó el nuevo patchset de la base de datos
Oracle 12.2.0.2 … perdón, ahora lo llaman 18.1.0.0. La versión 18c ya está
disponible para los servidores Exadata, Oracle Database Appliance y los
servicios de Cloud.
Con esta
noticia hice una mirada hacia atrás y observé que la versión Oracle 12c Release
2 ya tiene casi un año de liberada; y gracias a los Release Upgrades (la nueva
forma de parchar las bases de datos 12cR2) que se han ido publicando a lo largo
del año 2017 y, con el último, en enero 2018, se puede observar que la versión
12.2.0.1 es una versión ya bastante estable para poder ser utilizada en
ambientes de test y producción.
Por tal
motivo quiero compartir el procedimiento completo para que puedas hacer Upgrade
de tu base de datos hacia la versión Oracle 12c Release 2.
El
ejercicio de este artículo se basa en una migración de base de datos Oracle
12.1.0.2 hacia 12.2.0.1, sin embargo, a lo largo del mismo voy a ir señalando
que acciones extras se deben de tomar si tu base de datos origen es 11g.
La
información general del ambiente en el que vamos a trabajar es la siguiente.
12cR1
|
12cR2
|
|
Sistema Operativo
|
Oracle Linux 6.8
|
Oracle Linux 6.8
|
ORACLE_BASE
|
/u01/app/oracle/
|
/u01/app/oracle/
|
ORACLE_GRID_HOME
|
/u01/app/oracle/product/12.1.0/grid_1
|
/u01/app/oracle/product/12.2.0/grid_1
|
ORACLE_DB_HOME
|
/u01/app/oracle/product/12.1.0/db_1
|
/u01/app/oracle/product/12.2.0/db_1
|
Para esta
primera parte voy a enfocarme en la actualización de la Infraestructura
Grid. Posteriormente, en una segunda
parte, revisaremos el Upgrade de la base de datos.
PRE-REQUISITOS
1.
Revisión de la versión del Sistema Operativo
La
versión Oracle 12c Release 2 esta soportada solo para las versiones de sistema
Operativo específicas. Es importante
primero actualizar su Sistema Operativo para poder instalar y actualizar hacia
versión 12cR2.
Algunas
versiones soportadas son:
Para
nuestro ejercicio tenemos el sistema operativo Oracle Linux 6.8
[root@oracle12c
~]# cat /etc/oracle-release
Oracle Linux
Server release 6.8
[root@oracle12c ~]# uname -omr
4.1.12-37.4.1.el6uek.x86_64 x86_64 GNU/Linux
2.
Realizar Backup
Siempre
es recomendable realizar un backup de los binarios de Infraestructura Grid y
Base de datos. Además de realizar un
backup de las propias bases de datos.
3.
Definir el parámetro asm_diskstring
Antes de
realizar la actualización del Grid, es importante definir el parámetro asm_diskstring con el valor por
defecto que se utiliza en la configuración.
Para mi caso el valor es /dev/sd*
SQL> alter
system set asm_diskstring='/dev/sd*';
System altered.
SQL> show
parameter asm_diskstring
NAME TYPE VALUE
------------------------------------
----------- ----------------------
asm_diskstring string /dev/sd*
4.
Descargar instaladores y parches
Descargamos
los instaladores de la Infraestructura Grid y base de datos Oracle 12c Release
2 desde la página oficial de Oracle.
Es
importante descargar los últimos Release Update (en mi caso enero 2018) para
ambos binarios desde la página de Oracle Support.
Binario
|
Parche
|
Infraestructura Grid
|
27100009
|
Base de datos
|
27105253
|
Finalmente,
como parte de los pre-requisitos para actualizar la Infraestructura Grid a
Oracle 12cR2, es necesario aplicar el parche 21255373 sobre los binarios de las
versiones 12cR1 u 11gR2.
Ahora si
estamos listos para realizar el Upgrade de la Infraestructura Grid a Oracle 12c
Release 2.
Upgrade de IG a 12.2.0.1
1.
Aplicación del Parche 21255373
Se debe
tener una versión de OPATCH en 12.1.0.1.2 o superior para aplicar el parche.
[oracle@oracle12c
OPatch]$ ./opatch version
OPatch Version:
12.1.0.1.3
OPatch succeeded.
Copiamos
el parche 21255373 al servidor y lo descomprimimos en un directorio temporal.
[oracle@oracle12c
OPatch]$ cd /u01/Install/
[oracle@oracle12c
Install]$ unzip -q p21255373_121020_Linux-x86-64.zip
En este punto empieza la ventana de
mantenimiento. Debemos de detener los
servicios de base de datos.
[oracle@oracle12c
~]$ srvctl stop database -d orcl
Con el
usuario ROOT realizamos el análisis y la aplicación del parche.
[root@oracle12c
grid_1]# cd /u01/app/oracle/product/12.1.0/grid_1/OPatch
[root@oracle12c
OPatch]# ./opatchauto apply
/u01/Install/21255373 -analyze
OPatch
Automation Tool
Copyright (c)
2018, Oracle Corporation. All rights
reserved.
OPatchauto
version : 12.1.0.1.3
OUI version : 12.1.0.2.0
Running
from :
/u01/app/oracle/product/12.1.0/grid_1
opatchauto log
file:
/u01/app/oracle/product/12.1.0/grid_1/cfgtoollogs/opatchauto/21255373/opatch_gi_2018-03-03_13-19-04_analyze.log
…
opatchauto
succeeded.
[root@oracle12c
grid_1]# cd /u01/app/oracle/product/12.1.0/grid_1/OPatch/
[root@oracle12c
OPatch]# ./opatchauto apply
/u01/Install/21255373
OPatch
Automation Tool
Copyright (c)
2018, Oracle Corporation. All rights
reserved.
OPatchauto
version : 12.1.0.1.3
OUI version : 12.1.0.2.0
Running
from :
/u01/app/oracle/product/12.1.0/grid_1
…
Patch
Validation: Successful
Stopping CRS ...
Successful
Applying
patch(es) to "/u01/app/oracle/product/12.1.0/grid_1"
Patch
"/u01/Install/21255373/21255373" successfully applied to
"/u01/app/oracle/product/12.1.0/grid_1".
Starting CRS ...
Successful
Apply Summary:
Following
patch(es) are successfully installed:
GI Home: /u01/app/oracle/product/12.1.0/grid_1:
21255373
opatchauto
succeeded.
2.
Instalar Infraestructura Grid 12.2.0.1
A partir
de la versión Oracle 12c Release 2, la archivo ZIP con el instalador de la
Infraestructura Grid no cuenta con un comando runInstaller.
Para
poder instalar los binarios, se deben debe de copiar el archivo ZIP a la ruta
donde se quiere instalar la Infraestructura Grid y descomprimir el archivo. De esta manera se puede utilizar nuevos
utilitarios como Oracle ASM Filter Driver antes de realizar la configuración.
[oracle@oracle12c ~]$ mkdir -p
/u01/app/oracle/product/12.2.0/grid_1
[oracle@oracle12c ~]$ cd /u01/Install/
[oracle@oracle12c
Install]$ mv linuxx64_12201_grid_home.zip
/u01/app/oracle/product/12.2.0/grid_1/.
[oracle@oracle12c
Install]$ cd /u01/app/oracle/product/12.2.0/grid_1
[oracle@oracle12c
grid_1]$ unzip -q
linuxx64_12201_grid_home.zip
3.
Configurar la nueva Infraestructura Grid.
Una vez
que el archivo ZIP ha sido descomprimido, podemos observar que los archivos del
binario de Infraestructura Grid ya se encuentran en la ruta definida. Ahora, debemos realizar la configuración
mediante el comando gridSetup.sh en
una interface con soporte gráfico.
En mi
caso utilizo VNC.
[oracle@oracle12c grid_1]$ vncserver
New 'oracle12c.oracle.com:1 (oracle)' desktop is
oracle12c.oracle.com:1
Starting
applications specified in /home/oracle/.vnc/xstartup
Log file is
/home/oracle/.vnc/oracle12c.oracle.com:1.log
[oracle@oracle12c
grid_1]$ ./gridSetup.sh
Launching Oracle Grid Infrastructure Setup Wizard...
Como
vamos a realizar un Upgrade, elegimos la opción
Upgrade Oracle Grid Infrastructure.
Como no
tenemos Cloud Control configurado, dejamos esta pantalla en blanco.
Seleccionamos
los grupos de Sistema Operativo para cada rol.
Indicamos
nuestro ORACLE_BASE
Como
parte de la versión 12c, podemos decidir si los scripts de ROOT se ejecutan de
manera automática.
Se
verifican los Pre-requisitos y se corrigen si es posible.
La
memoria mínima para instalar Infraestructura Grid es de 8Gb. En mi caso solo tengo 4GB.
Verificamos
el Resumen y procedemos con la configuración de la nueva Infraestructura Grid.
Se
ejecutan los scripts con ROOT.
[root@oracle12c ~]# /u01/app/oracle/product/12.2.0/grid_1/rootupgrade.sh
Performing root user operation.
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME=
/u01/app/oracle/product/12.2.0/grid_1
Enter the full pathname of the local bin directory:
[/usr/local/bin]:
The contents of "dbhome" have not changed.
No need to overwrite.
The file "oraenv" already exists in
/usr/local/bin. Overwrite it? (y/n)
…
ASM has been upgraded and started successfully.
Creating OCR
keys for user 'oracle', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE
Successfully accumulated necessary OCR keys.
Creating OCR
keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node oracle12c successfully pinned.
2018/03/03
15:11:02 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.conf'
…
CRS-2793: Shutdown of Oracle High Availability
Services-managed resources on 'oracle12c' has completed
CRS-4133: Oracle High Availability Services has been
stopped.
CRS-4123: Oracle High Availability Services has been
started.
2018/03/03
15:31:55 CLSRSC-327: Successfully configured Oracle Restart for a standalone
server
4.
Aplicar el Release Update (RU) más reciente a la nueva
Infraestructura Grid.
Finalizado
el Upgrade de Infraestructura Grid a versión 12.2.0.1. Es muy importante aplicar el último Release Update para evitar
problemas de Bugs que pueda tener la versión base 12c Release 2.
En este
ejercicio utilizamos el RU de enero 2018 con numero de parche 27100009. Para aplicar el parche se necesita actualizar
el OPatch a la versión mínima de 12.2.0.1.6.
Se puede
descargar el parche 6880880 de la página de Oracle Support.
Actualizamos
el OPatch
[oracle@oracle12c
Install]$ cp p6880880_122010_Linux-x86-64.zip $ORACLE_HOME/.
[oracle@oracle12c Install]$ cd $ORACLE_HOME
[oracle@oracle12c
grid_1]$ mv OPatch OPatch.old
[oracle@oracle12c grid_1]$ unzip -q
p6880880_122010_Linux-x86-64.zip
[oracle@oracle12c
grid_1]$ cd ./OPatch
[oracle@oracle12c
OPatch]$ ./opatch version
OPatch Version: 12.2.0.1.12
Descomprimir
el parche 27100009 en un directorio temporal.
[oracle@oracle12c OPatch]$ cd /u01/Install/
[oracle@oracle12c Install]$ unzip -q
p27100009_122010_Linux-x86-64.zip
Con el
usuario ROOT, realizar el análisis y posterior aplicación del parche.
[root@oracle12c
OPatch]# ./opatchauto apply
/u01/Install/27100009 -oh /u01/app/oracle/product/12.2.0/grid_1 -analyze
OPatchauto
session is initiated at Sun Mar 4
00:15:14 2018
System
initialization log file is
/u01/app/oracle/product/12.2.0/grid_1/cfgtoollogs/opatchautodb/systemconfig2018-03-04_12-15-35AM.log.
…
--------------------------------Summary--------------------------------
Analysis for applying patches has completed successfully:
Host:oracle12c
SIHA Home:/u01/app/oracle/product/12.2.0/grid_1
==Following patches were SUCCESSFULLY analyzed to be
applied:
…
Patch: /u01/Install/27100009/27105253
Log: /u01/app/oracle/product/12.2.0/grid_1/cfgtoollogs/opatchauto/core/opatch/opatch2018-03-04_00-15-53AM_1.log
[root@oracle12c
OPatch]# ./opatchauto apply
/u01/Install/27100009 -oh /u01/app/oracle/product/12.2.0/grid_1
OPatchauto
session is initiated at Sun Mar 4
00:22:43 2018
System initialization log file is
/u01/app/oracle/product/12.2.0/grid_1/cfgtoollogs/opatchautodb/systemconfig2018-03-04_12-23-02AM.log.
Session log file is
/u01/app/oracle/product/12.2.0/grid_1/cfgtoollogs/opatchauto/opatchauto2018-03-04_12-23-08AM.log
The id for this session is FD47
…
Starting CRS service on home
/u01/app/oracle/product/12.2.0/grid_1
Postpatch operation log file location:
/u01/app/oracle/crsdata/oracle12c/crsconfig/hapatch_2018-03-04_01-03-52AM.log
CRS service started successfully on home
/u01/app/oracle/product/12.2.0/grid_1
OPatchAuto successful.
--------------------------------Summary--------------------------------
Patching is completed successfully. Please find the
summary as follows:
Host:oracle12c
SIHA Home:/u01/app/oracle/product/12.2.0/grid_1
Summary:
==Following patches were SUCCESSFULLY applied:
…
Patch: /u01/Install/27100009/27144050
Log:
/u01/app/oracle/product/12.2.0/grid_1/cfgtoollogs/opatchauto/core/opatch/opatch2018-03-04_00-26-29AM_1.log
Patch: /u01/Install/27100009/27335416
Log:
/u01/app/oracle/product/12.2.0/grid_1/cfgtoollogs/opatchauto/core/opatch/opatch2018-03-04_00-26-29AM_1.log
Una vez
finalizado la instalación y el parchado de la Infraestructura Grid podemos
proceder al Upgrade de la base de datos en la segunda parte de este artículo.
Exacto, ahora somos 12cR2, gracias por la documentación Jorge, ayudará mucho a la comunidad Oracle, incluyéndome.
ResponderBorrarEstamos para apoyar a la comunidad Yonogy!! Se viene la segunda parte en unos dias.
Borrarcuanto demora la instalacion del gid y del rdbms
ResponderBorrarHola Yary
BorrarVa a depender del expertise de la persona que lo realiza. Normalmente una persona que instala por primera vez, se puede tomar entre 4 a 6 horas.
Una persona con mayor experiencia lo puede hacer entre 2 a 4 horas.
Saludos
Jorge Z
Buenos días Jorge. Muchas Gracias. Adriana.
ResponderBorrarCon gusto Adriana !! Avisame si tienes dudas
Borrar