Recuperar Base de Datos usando RMAN

Voy a explicar en esta entrada, de forma sencilla y resumida, los pasos a seguir para recuperar una base de datos Oracle haciendo uso de la herramienta RMAN.

Supongamos que se produce cualquier error accidental del tipo de borrar algún datafile. La forma inmediata de recuperar la base de datos es haciendo uso de RMAN. Para ello, este es el procedimiento:

  • Parar la base de datos.

SQL> SHUTDOWN IMMEDIATE;

$ rman target=/ catalog rman_user@cadena_conexión

RMAN> STARTUP MOUNT;

RMAN> RESTORE DATABASE;

RMAN> RECOVER DATABASE;

RMAN> ALTER DATABASE OPEN RESETLOGS;

RMAN> EXIT;

  • Bajar la base de datos, desde SQLPLUS.

SQL> SHUTDOWN IMMEDIATE;

  • Levantar la base de datos.

SQL> CONN / AS SYSDBA

SQL> STARTUP;

Otras entradas en mi blog relacionadas con RMAN:

About these ads

28 Responses to Recuperar Base de Datos usando RMAN

  1. roque dice:

    como harias para recuperarla en otro servidor?

  2. jop89s dice:

    Hay unos cuantos entornos de recuperación frente a desastres (o pérdidas de información en la base de datos Oracle), y el que presento en este artículo es de los más simples; recuperación completa de una base de datos en el mismo servidor. Para recuperar en otro servidor hay unos requisitos que se deben de cumplir:

    * Tener instalado el software de Oracle (a ser posible, de la misma versión y al mismo nivel de parcheo que el del servidor dónde se hizo la copia).

    * Haber creado una base de datos en blanco, con el mismo SID.

    * Tener acceso al catálogo de recuperación desde el nuevo servidor.

    En este caso, es evidente que el primer paso sería innecesario (parar la base de datos). Todo lo demás, sería igual.

    A ver si me animo y pongo el artículo relativo a clonar la base de datos usando RMAN.

  3. roque dice:

    gracias por responder yo pude clonar una bd en otro servidor pero se conecta ala principal para leer el catalogo.
    Mi pregutna es que solo instalando el soft de bd en otro servidor y poniendole el mismo sid y me coencto al catalogo me lo vas a reconocer como si fuera la bd que se rompio?
    y otra pregunta fuera de este contexto me pdoes mandar un mail con la respuesta o que este blog me notifique asi no entro a para ver si me respondiste? , espero que no sea mucha molestia desde ya muchas gracias.

  4. Daniels dice:

    Hola, nesecito saber como puedo recuperar una BD oracle de dos formas (Siempre con RMAN):

    – Recuperar un datafile, archivo de log o un tablespace especifico.

    – Recuperar la base de dato desde el ultimo full backup, y luego actualizarla con los redolog hasta justo antes que ocurriera un error X.

    Si alguien pudiese ayudarme.

    De antemano Gracias.

  5. Tux Dueñas dice:

    Muy buena explicacion. Gracias por el APORTE– haber si nos amplias un poco sobre el uso de los comandos y algunas diferencias entre ellos…

  6. ARIEL ARAIZA dice:

    Que tal:
    Perdí el archivo *.mdf de mi BD de SQL server 2000, accidentalmente fué borrado, sólo tengo el *.log. ¿Puedo recuperar mi BD a partir del log?… ¿como lo hago?

    Gracias por todo…..

  7. jop89s dice:

    Para Ariel Araiza,

    En este blog trato sobre asuntos de Oracle, y más concretamente, Oracle sobre Linux. La herramienta RMAN es exclusiva de Oracle, no tiene nada que ver con Microsoft SQL Server. Lo siento mucho, pero no tengo conocimientos suficientes sobre SQL Server como para responder a tu pregunta.

  8. luis dice:

    Hola, necesito ver el contenido de una cinta hecha con RMAN, y estoy muy nuevo con esta interface, prodrias darme algún consejo.

    Gracias.

    Luis

  9. Xavi dice:

    muy malo el post

    • jop89s dice:

      Evidentemente, no es una entrada brillante, pero a mi me sirve de referencia: no pretendo que le guste a todo el que la lea. Me sirvió para recuperar mi base de datos, y si el procedimiento le puede servir también a alguien más, pues bien. Y si no, pues bien también :)

  10. Mike del Castillo dice:

    Se me dano mi base de datos, no tenia backup, lo unico que tengo son todos los archivos que se encuentran en la carpeta oradata, es decir los archivos con ext, ora, dbf, ctl y los redo01..03.

    Como puedo recuperar todas mis objetos y hacer que funcione como la tenia enteriormente..

    Gracias por tu ayuda..

    Por cualquier cosa mi correo es mike_casti@hotmail.com

    • jop89s dice:

      Va a ser difícil. ¿Has intentado abrir la base de datos en modo ‘nomount? ¿Si haces un startup, en que estado se queda la base de datos?

      • Ghost dice:

        A mi me paso lo mismo y despues de hacer un startup me dice Base de datos montada y seguido a eso me presenta los errores ORA-01172 y ORA 01151

  11. Jose María dice:

    Buenas tardes a todos.

    Hemos perdido una BD Oracle 9i y he montado otra en blanco para recuperarla. Lo único que tenemos son las ‘piezas’ de RMAN en nocatalog.

    Mi pregunta es: ¿Como la recupero desde el RMAN recien instalado? ¿como me conecto y le digo donde están las piezas y como las recupero?

    Muchas gracias y un saludo.

  12. Julio Cruz dice:

    Hola

    A raiz de un apagon, al parecer se daño un datafile:

    SQL> shutdown abort
    ORACLE instance shut down.
    SQL> startup
    ORACLE instance started.

    Total System Global Area 838860800 bytes
    Fixed Size 1222168 bytes
    Variable Size 117443048 bytes
    Database Buffers 717225984 bytes
    Redo Buffers 2969600 bytes
    Database mounted.
    ORA-01113: file 19 needs media recovery
    ORA-01110: data file 19: ‘/u02/app/oracle/oradata/mfh/p00d0002.dbf ‘

    al parecer con el RMAN puedo solucionar este problema, pero lo que no me queda claro es el catalogo, como se configura ?, ya viene configurado ?

    • jop89s dice:

      El tema que me cuentas es complicado, porque entiendo que no has hecho copias con rman de esa base de datos. RMAN no hace copias automáticamente de tu base de datos; tiene que haber una interacción del operador, bien directamente, bien indirectamente (mediante la planificación de copias automáticas). Si no has hecho ninguna copia, no vas a poder usar RMAN para recuperar ese datafile, porque con la base de datos en ese estado ya no puedes configurar el catálogo para hacer las copias; necesitas tener la base de datos operativa y en buen funcionamiento para configurar el catálogo.

      Tal y como tienes ese datafile, lo que puedes hacer es chequear su estado desde el sistema operativo mediante el comando ‘dbv’ (database verify utility) porque lo más probable es que tenga algún tipo de corrupción lógica; después de eso, lo único que te queda es intentar un ‘recover nombre_data_file’ o un ‘restore nombre_datafile’. Si eso no te funciona, desde aquí no te puedo dar más soporte; necesitaría más detalles (la salida de los comandos anteriores, por ejemplo).

      Por otro lado, en mi blog tengo alguna entrada más acerca de RMAN.

      Configurar un catálogo de recuperación:

      http://juanfran.wordpress.com/2007/06/11/crear-y-configurar-un-catalogo-rman/

      Recuperar un datafile (el que deberías usar si tuvieras copias con rman):

      http://juanfran.wordpress.com/2009/06/17/recuperar-datafile-con-rman/

      Ejemplos de uso de rman:

      http://juanfran.wordpress.com/2009/06/18/ejemplos-de-uso-de-rman/

  13. urobros dice:

    Buenos días,

    buena introducción. Me está sirviendo como punto de partida para iniciar una restauración de BD :D Grax.

    Saludos

  14. Pingback: Crear y Configurar un Catálogo RMAN « Blog Técnico

  15. Pingback: Borrar catálogo RMAN « Blog Técnico

  16. Pingback: Recuperar datafile con RMAN « Blog Técnico

  17. Pingback: Ejemplos de uso de RMAN « Blog Técnico

  18. Mario Roberto dice:

    Hola… :)

    Tengo dos respaldos, uno del día 12 de Febrero y el otro del día 15 de Febrero.

    Qué pasos debo seguir si es que quiero restaurar el respaldo del 12 de Febrero.

    La base de datos se llama Curso (como ejemplo).

    Saludos.

  19. Pingback: Los números de 2010 « Blog Técnico

  20. Pingback: Los números de 2010 « Blog Técnico

  21. Ingrid dice:

    Hola, de que forma puedo recuperar una base de datos, teniendo los archivos *.dbf, *.ctl, *.log, etc., es decir a partir de una copia directa de todo el directorio de donde se encontraba la base de datos original, ya que el servidor fallo con uno de sus discos, no se realizo ninguna backup logico (exportacion) como indique solo una copia tipo:
    copy d:\oracle a otra ubicación ejm: x:\abc\oracle, y ahora tengo en otro servidor en una nueva instalacion pero con una base de datos inicial en 0, es posible hacer esto para la versión oracle 10g 10.0.1?

  22. alvaro dice:

    puedes explicarme por favor que hace el resetlogs? gracias

  23. Pingback: Recuperar Base de Datos usando RMAN « Blog Técnico | IManzana

  24. Luis dice:

    Buenas, veo que hace tiempo subiste esta info, espero que estes por ahí aun, asi veo si me puedes ayudar con mi problema, te comento lo que ando buscando, tengo 2 pcs configuradas igual, lo que quiero es sacar todas las transacciones de la pc 1 y llevarla a las pc 2 y cargarlas ahi, por lo que lei creo que las transacciones se guardan en los redolog, configure el modo archivelog en ambas pc y se estan generando unos archivelog pero no tengo ni idea que mas tengo que hacer, si me pudieras ayudar te lo agradeceria!

    saludos!

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

A %d blogueros les gusta esto: