Hace poco me encontré un cliente en dónde el directorio ORACLE_HOME estaba llegando al 100% lo que trajó muchos problemas para permitir nuevas conexiones a la base de datos. El tema es que es comencé a revisar todos los archivos que más espacio utilizaba la base de datos y me encontré con que de los 100Gb de espacio que tenía el disco dónde se encontraba el ORACLE_HOME, el espacio real que consumía dicho directorio era apenas de 4.5 GB, lo que me trajo la siguiente duda: ¿Quién estaba usando todo el espacio restante, y porqué tampoco había evidencia de más espacio utilizado?
Evidencias:
[fdonoso@fperpprd ~]# df -h /oracle/FSP
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/oraclevg-lvorafsp
109G 109G 104K 100% /oracle/FSP
Esa era la evidencia del espacio utilizado al momento de revisar. Luego de dar mucha vuelta al tema, decidí recurrir a la herramienta lsof para visualizar aquellos archivos que estaban siendo utilizados por algún proceso en particular.
Como mi ORACLE_HOME estaba en la ruta /oracle/FSP decidí ejecutar el siguiente comando para ver si había un archivo que aún estaba ocupando espacio y encontré lo siguiente:
lsof | grep FSP | sort -n -k 7 | tail -n 10
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEoracle 13594 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13596 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13598 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13600 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13602 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13604 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13606 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
oracle 13608 orafsp txt REG 253,26 228882030 5473 /oracle/FSP/11202/bin/oracle
rman 10978 orafsp 1w REG 253,26 105508769792 13988 /oracle/FSP/nohup.out (deleted)
Pongan atención en la última línea, ahí encontré que hay un archivo /oracle/FSP/nohup.out de más de 100GB de tamaño el cual fue borrado, pero que estaba siendo usado por un proceso rman 10978 que aún seguia activo. Por lo que el espacio aún estaba reservado a pesar que alguién lo intento borrar.
Por la urgencia del problema y dado que el cliente no tenía conexión a su ambiente productivo no me quedó otra alternativa que matar al proceso rman padre (luego a los días después me enteré que habían tirado un backup de una base de datos con la opción de trace, aún no sé porque generó tanto trace un proceso de respaldo, pero bueno : / ...)
Evidencias
orafsp> ps -fea | grep -i 10978
orafsp 10978 1 60 Apr18 ? 1-16:15:13 rman
orafsp 10978 1 60 Apr18 ? 1-16:15:13 rman
orafsp> kill -9 10978
Ahora apareció el problema del espacio liberado:
[fdonoso@fperpprd ~]# df -h /oracle/FSP
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/oraclevg-lvorafsp
109G 4.6G 99G 5% /oracle/FSP
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/oraclevg-lvorafsp
109G 4.6G 99G 5% /oracle/FSP
Espero que haya sido útil.
No comments:
Post a Comment