miércoles, 30 de abril de 2014

RMAN : ORA-19625: error identifying file


Si aparece este error al ejecutar el backup de archivelogs:

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup command at 04/30/2014 00:38:54
RMAN-06059: expected archived log not found, lost of archived log compromises recoverability
ORA-19625: error identifying file /u01/archive/orcl/orcl_1_450_114159731.arc
ORA-27037: unable to obtain file status
HPUX-ia64 Error: 2: No such file or directory

Additional information: 3



Es porque no encuentra el archive. Generalmente pasa cuando lo movemos hacia otro file system o lo depuramos manualmente por problemas de espacio.

Si tenemos el archive solicitado, lo tenemos que mover nuevamente a la ubicación donde lo trata de encontrar y ejecutar nuevamente el backup.

Si no lo tenemos al archive, tenemos que eliminarlo del catalogo:

$rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on Wed Apr 30 11:10:49 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORCL (DBID=114159731)


Ejecutamos un crosscheck que compara lo que hay en el catalogo con lo que esta en disco. Lo que no encuentra lo marca como expired (expirado).

RMAN> crosscheck archivelog all;

using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=493 devtype=DISK
validation failed for archived log
archive log filename=/u01/archive/orcl/orcl_1_450_114159731.arc recid=45347 stamp=846242043
validation succeeded for archived log
archive log filename=/u01/archive/orcl/orcl_1_451_114159731.arc recid=45348 stamp=846242180
Crosschecked 2 objects


Eliminamos del catalogo los archivelogs expirados.

RMAN>  delete expired archivelog all;

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=493 devtype=DISK

List of Archived Log Copies
Key     Thrd Seq     S Low Time  Name
------- ---- ------- - --------- ----
45347   1    450   X 30-APR-14 /u01/archive/orcl/orcl_1_450_114159731.arc

Do you really want to delete the above objects (enter YES or NO)? YES
deleted archive log
archive log filename=/u01/archive/orcl/orcl_1_450_114159731.arc recid=45347 stamp=846242043
Deleted 1 EXPIRED objects


Se puede ejecutar con la clausula noprompt para que elimine sin preguntar :
RMAN> delete noprompt expired archivelog all;


De esta forma nos queda consisente el catalogo y no vuelve a fallar el backup.



martes, 15 de abril de 2014

Que es ser DBA Oracle ?


La sigla DBA viene de DataBase Administrator que significa Administrador de Base de Datos. Es una especialidad de Tecnología de la Información, en ingles  IT (Information Technology).
El DBA es el responsable de la gestión, mantenimiento y operación de la Base de Datos Oracle.
Esto involucra :
■ Instalar el software de Oracle
■ Crear las bases de datos Oracle
■ Ejecutar actualizaciones de la base de datos y del software 
■ Administrar la Instacia: Subir/Bajar la Instancia de base de datos
■ Administrar las estructuras de almacenamiento de la base de datos.
■ Administrar los usuarios y la seguridad
■ Realizar el backup de la base y ejecutar las operaciones de recuperación si fuera necesario
■ Monitorear el estado de la base de datos y tomar acciones preventivas o de correción de acciones según se requiera para mantener la base operativa
■ Monitorear y realizar los ajustes (tuning)  de performance de la base 
■ Diagnosticar y reportar errores críticos al Soporte de Oracle 

En pequeñas o medianas instalaciones el rol del DBA lo puede cumplir una sola persona. En grandes instalaciones con gran cantidad de bases de datos y/o de gran volumen estas tareas suelen dividirse entre varios DBA's e inclusive algunos están especializados por ejemplo en tuning, seguridad o backups.