jueves, 29 de septiembre de 2011

Como obtener información de parches instalados en Oracle

Antes de pasar un ambiente desde (por ejemplo) un área de desarrollo a pruebas, puede que queramos comparar que parches tenemos aplicados en cada ambiente, a modo de igualar dichos ambientes. Para esto tenemos que consultar los parches tanto a nivel de base de datos, como a nivel de aplicación (si procede)

Parches en la base de datos

Esto es muy simple y lo hacemos a través del utilitario opatch. Para eso nos vamos al directorio:
cd $ORACLE_HOME/OPatch
y ejecutamos el utilitario opatch con el parámetro lsinventory:
./opatch lsinventory
Así obtendremos la lista de parches instalados a nivel Oracle bastante preciso y detallado, incluyendo información de fecha en que fue aplicado y el listado de "bugs fixed".

Troubleshooting

Puede que, si tenemos varias bases de datos, no todas estén registradas en nuestro inventario y un problema común es que la ejecución anterior del utilitario opatch nos dará el siguiente error: Inventory load failed.

Para resolver esto, debiesemos editar el archivo inventory.xml ubicado en $ORACLE_BASE/oraInventory/ContentsXML/ En ese archivo deberemos añadir el "HOME NAME" faltante, como en el siguiente ejemplo:

HOME NAME="ORADB11_HOME6" LOC="/u11/oracle/app/oracle/product/database/11.1.0"
TYPE="O" IDX="6"

En donde LOC tiene la ruta del ORACLE_HOME e IDX es un número secuencial de cada HOME en la lista.



Parches a nivel aplicativo

Posteriormente, en el caso que tengamos un aplicativo e-Business Suite, podemos realizar la siguiente consulta en sqlplus o en nuestro cliente sql preferido:

select patch_name, applied_patch_id, patch_type, maint_pack_level, last_update_date
from applsys.ad_applied_patches
order by patch_name;

Con lo que obtendremos el listado de parches instalados a nivel aplicativo. Ojo, que puede que tengamos más de una línea con el mismo patch_name, ya que puede tener distintos applied_patch_id.

Con esta información en la mano, podemos proceder a igualar los ambientes instalando los componentes que falten en nuestro ambiente.

lunes, 12 de septiembre de 2011

Instalación de vmware tools en Linux Centos 6

En esta ocasión revisaremos la instalación, en vmware fusion, de sus herramientas vmware tools para Linux Centos 6.

Cabe mencionar que esta pauta es aplicable también para RedHat y para SuSE Linux.

CentOS lo puedes obtener desde el sitio oficial http://www.centos.org/.

Pre requisitos

Una vez instalado CentOS en vmware y antes de instalar vmware tools, deberás asegurarte de tener instalados:

  • make
  • gcc
  • kernel headers

Para ello, deberás tener instalados los paquetes de gcc y kernel-devel.

Comprobamos entonces que estén instalados, usando los siguientes comandos en el terminal, como usuario root o habiendo ejecutado "su -" en la ventana del terminal como nuestro usuario regular y ejecutamos:
# yum info gcc
# yum info kernel-devel


Si alguno, o ambos de estos paquetes no están instalados, los instalamos usando:

# yum install gcc
# yum install kernel-devel
o, para ambos:
# yum install gcc kernel-devel

A continuación deberemos verificar que el kernel y sus fuentes estén en la misma versión:
# uname -r (retorna el release del kernel compilado)
# rpm -q kernel-devel (retorna el release de los fuentes del kernel instalado)

Si hay alguna diferencia, deberemos actualizar, usando:
# yum -y upgrade kernel kernel-devel

Esto es importante, ya que de lo contrario podremos tener un error mayor en el kernel al compilarlo. Recordemos que la instalación de vmware-tools recompila el kernel (núcleo) del sistema operativo.

El reboot es recomendado si has instalado alguna actualización en este proceso, para que reconozca las variables.


Instalación vmware tools

Luego ya podemos ir a descomprimir el paquete de vmware tools. Si no lo tienes, descárgalo seleccionando desde vmware fusion el menú "Máquina Virtual" la opción "Instalar vmware tools". Luego puedes hacer doble click en el archivo comprimido y descomprimirlo en alguna carpeta, como /tmp

Ahora debemos ir al directorio donde descomprimimos vmware tools y ejecutar, como root (o vía "su -") el comando: 
# ./vmware-install.pl
vmware-config-tools.pl será llamado automáticamente durante este proceso. Es este segundo pl el que recompilará el kernel requiriendo los componentes antes instalados.

Todas las preguntas te entregarán una respuesta sugerida, acéptala a menos que quieras cambiar algún parámetro de instalación.

Finalmente, podremos ejecutar las herramientas de vmware (vmware tools) desde el terminal con el comando:
# /usr/bin/vmware-toolbox

Más información es desplegada por el instalador al terminar el proceso.

Espero les sirva.