All Things Oracle

Sincronización detenida / ORA-01274

Recientemente una amiga se comunicó conmigo pues tenía una emergencia: su base de datos standby había dejado de sincronizar. Revisando el archivo alert.log se encontró el error ORA-01274, llegándose a la conclusión que se había agregado un datafile en la base de datos primaria y al tratar de replicar el cambio en el standby, este datafile no se había creado por falta de espacio en disco.

Ayer por la noche, en el foro de Oracle Technet, alguien reportaba una situación similar, pero en este caso el origen del error era menos claro, el resultado el mismo: no se replicó la creación de uno o más datafiles. ¿Qué hacer en una situación como esta?

Ya antes me había tocado ayudar a otros DBAs en la resolución de este problema, la clave está en seguir los pasos indicados en la nota 221130.1 Recovery failed with error 1274 ORA-19502 ORA-27063 skgfospo SVR4 Error 28.

En escenarios como este, en los que no se logra crear un datafile en la base de datos standby, el datafile es registrado en el controlfile con un nombre similar a UNNAMED0000 y la sincronización se suspende con el error  ORA-1274: cannot add datafile.

Los pasos a seguir para superar el impasse son:

1. Desactivar el manejo automático de archivos

SQL> alter system set standby_file_management = manual scope=memory;
2. Hallar el nombre del datafile no creado
SQL> select name from v$datafile where name like '%UNNAMED%';
NAME
--------------------------------------------------------
e:\oracle\product\10.2.0\database\UNNAMED00033
3. Crear el datafile faltante
SQL> alter database create datafile 
'e:\oracle\product\10.2.0\database\UNNAMED00033' as 'e:\oradata\orcl\dat04.dbf';
4. Activar el manejo automático de archivos
SQL> alter system set standby_file_management = auto scope=memory;
Ahora ya se puede reiniciar el recovery, ¡problema resuelto!
¿Te pareció interesante este artículo?, ¿te quedaron algunas dudas?, ¿quieres sugerirme un tema a tratar?, pues déjame tus comentarios o ¡contáctame ahora mismo!

Agregue un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Posts Relacionados

Primer post de una serie dedicada al arte de parchar Oracle. Empezamos con el parchado in-place, la forma más común y también la más peligrosa.
Aprenda a descargar los parches de Oracle, tanto manualmente como de forma automatizada, usando el utilitario getMOSPatch.
Link a articulo publicado en Toad World, sobre como aplicar un patch out-of-place a Grid Infrastructure, usando un Golden Image.

¿Necesitas Ayuda?

Completa estos datos y estaré en contacto a la brevedad.