Saludos, Quisiera saber como realizar respaldo de una BD 24x7 y como realizar la recuperación de la misma, el sistema operativo en la que manejo la BD es Solaris8 instalados en un NETRAX1
Para poder hacer backups en caliente es necesario que tengas la base de datos funcionando en modo ARCHIVELOG. Cualquier backup que quieras hacer en caliente se basa en: - Hacer copia de los ficheros de un tablespace, - Hacer copia de los archivos de REDO LOG archivados. - Hacer copia de los archivos de REDO LOG online. - Hacer copia del fichero del control. Adicionalmente te recomiendo que también hagas copias de: - Fichero de inicialización de la instancia(INITsid. ORA). - Ficheros de configuración de red del servidor(SQLNET. Ora, listener. ORA y TNSNAMES. ORA). Te envío un script que yo utilizo para hacer backup de una de mis bases de datos. El script se ejecuta desde sql*plus todas las noches: -- ******************************************************************** -- *************** Script de backup de CLI1 *************************** -- ******************************************************************** set feedback off; set verify off; set heading off; -- Creamos el directorio de backup en el caso que no exista host MD E:\backup -- Borramos el anterior backup host DEL E:\backup\*.* /Q -- Traza del backup spool e:\backup\backup.log; -- Backup de tablespace SYSTEM Alter tablespace SYSTEM begin backup; host copy E:\ORACLE\ORADATA\CLI1\SYSTEM01.DBF E:\backup Alter tablespace SYSTEM end backup; -- Backup de tablespace USERS Alter tablespace USERS begin backup; host copy F:\ORACLE\ORADATA\CLI1\USERS01.DBF E:\backup Alter tablespace USERS end backup; -- Backup de tablespace TOOLS Alter tablespace TOOLS begin backup; host copy F:\ORACLE\ORADATA\CLI1\TOOLS01.DBF E:\backup Alter tablespace TOOLS end backup; -- Backup de tablespace INDX Alter tablespace INDX begin backup; host copy F:\ORACLE\ORADATA\CLI1\INDX01.DBF E:\backup Alter tablespace INDX end backup; -- Backup de tablespace DRSYS Alter tablespace DRSYS begin backup; host copy F:\ORACLE\ORADATA\CLI1\DR01.DBF E:\backup Alter tablespace DRSYS end backup; -- Backup de tablespace MAXIMO Alter tablespace MAXIMO begin backup; host copy H:\ORACLE\ORADATA\CLI1\MAXIMO.DBF E:\backup Alter tablespace MAXIMO end backup; -- Backup de tablespace ROLLBACK_DATA Alter tablespace ROLLBACK_DATA begin backup; host copy G:\ORACLE\ORADATA\CLI1\ROLLBACK_DATA.DBF E:\backup Alter tablespace ROLLBACK_DATA end backup; -- Backup de tablespace TEMPORARY Alter tablespace TEMPORARY_DATA begin backup; host copy F:\ORACLE\ORADATA\CLI1\TEMPORARY_DATA.DBF E:\backup Alter tablespace TEMPORARY_DATA end backup; -- Backup de tablespace OEM_REPOSITORY Alter tablespace OEM_REPOSITORY begin backup; host copy F:\ORACLE\ORADATA\CLI1\OEM_REPOSITORY.ORA E:\backup host copy F:\ORACLE\ORADATA\CLI1\OEM_REPOSITORY2.ORA E:\backup Alter tablespace OEM_REPOSITORY end backup; -- Forzamos cambio de redo log alter system switch logfile; -- Esperamos a que el proceso ARCHIVE copie el REDO LOG exec dbms_lock.sleep(120); -- Copiamos los REDO LOG archivados host COPY C:\ora81\oradata\PROD\ARCHIVE\*.* E:\backup -- Borramos los REDO LOG archivados host del C:\ora81\oradata\PROD\ARCHIVE\*.* /Q -- Hacemos copia del fichero de control alter database backup controlfile to 'E:\backup\Control.Ctl'; -- Copiamos los REDO LOG online host COPY G:\ORACLE\ORADATA\CLI1\REDO03.LOG E:\backup; host COPY G:\ORACLE\ORADATA\CLI1\REDO02.LOG E:\backup; host COPY G:\ORACLE\ORADATA\CLI1\REDO01.LOG E:\backup; exit; Adicionalmente puedes hacer exports diarios de los usuarios(o tablas) Que te interesen; aunque recuerda que mediante export la recuperación sólo será hasta el momento del backup. Mi recomendación es que si no lo ves muy claro, te instales la misma versión de Oracle que tienes en producción en un PC(con Linux o incluso Windows 2000) y que pruebes los procedimientos de backup y recuperación que quieres implantar en producción. Recordarte también que en entorno Windows existen herramientas como Recovery Manager que ayudan bastante en la realización de backups.