jueves, 8 de mayo de 2008

CREO QUE ESTA FALLANDO LA BASE DE DATOS

Pues va el primero… por supuesto estamos hablando de un Base de Datos ORACLE.

Que debemos revisar cuando nos llaman y dicen, “creo que tenemos problemas con la Base de Datos porque la aplicación no responde” Después de eso empiezas a pensar “¿mmm será?” Y dado que no sabemos qué pasa y la persona que nos habla NO TIENE IDEA de que sucede, obviamente debemos revisar la “Base de Datos”

Primer punto…

“alert log”, ¿en donde lo encontramos? Generalmente estará en el directorio admin/SID/bdump. En este archivo encontramos la información cronológica de mensajes y errores, asi como ciertas tareas administrativas. El “alert log --> alter_SID.log” es uno de los que podemos obtener información valiosa de que está pasando con nuestra Base de Datos.

“listener log”, ¿en donde lo encontramos? Generalmente estará en el directorio $ORACLE_HOME/network/log. En este archivo podemos ver información de conexiones a la base de datos a través del listener.

Segundo punto…

Claro esta, entrar con el sqlplus a la Base de Datos, antes que nada si se tiene la opción de entrar con un “usuario mortal” hacerlo y ejecutar un simple query como

SELECT 1
FROM DUAL;

Otros serian checar como sysdba

SELECT *
FROM v$instance;

SELECT *
FROM v$resource_limit;

Ahora bien si ya sabes que es lo que generalmente pasa cuando “tenemos problemas con la base de datos es recomendable tener una serie de queries y/o scripts que nos regresen la información necesaria para saber que está pasando. En mi caso para las bases de datos que tengo a mi cargo algunas consultas muy simples pero que me dan de entrada mucha información de que está pasando.

SELECT status, TYPE, machine, COUNT (*)
FROM v$session
WHERE username = '&USUARIO_CON_PROBLEMAS'
GROUP BY status, TYPE, machine;

SELECT machine, COUNT (*)
FROM v$session
GROUP BY machine;

SELECT username, machine, COUNT (*)
FROM v$session
GROUP BY username, machine;

Tercer punto…

¿Tenemos jobs ejecutándose que estén fallando? ¿Tenemos entradas en el cron ejecutándose que estén fallando? ¿tenemos lleno algún filesystem y/o disco?

Con estos puntos, podemos empezar a analizar el “creo que tenemos problemas con la base de datos porque la aplicación no responde”.


No hay comentarios.: