Saludos,
El servidor de la empresa donde laboro el disco duro dejo de leer y tuve que llevar el disco a un recuperador de discos forense para recuperar la data de la misma, pude recuperar los controlfiles(ctl),datafiles(dbf) y el init(init$OracleSID.ora). Este fue todo el procedimiento que realice para recuperar y subir todos los archivos al nuevo servidor
Ambiente el nuevo servidor como el antiguo servidor. Sucede que llego a montar la base de datos pero no me abre la base de datos.
Archivos Recuperados:
- CONTROL01.CTL
- CONTROL02.CTL
- CONTROL03.CTL
- REDO01.LOG
- REDO02.LOG
- REDO03.LOG
- SYSAUX01.DBF
- SYSTEM01.DBF
- TEMP01.DBF
- UNDOTBS01.DBF
- USERS01.DBF
- SPFILETAVERAS.ORA
Mis de DBF recuperados de la base de datos.
- FINANCE.DBF
- FINANCE_INDEX.DBF
- FINANCE_INDEX2.DBF
Realizo la instalación basica de oracle enterprice, creo la ruta original de los DBF de la base de datos del antiguo servidor:
D:\oracle\Finance
A partir de esto, continuo y me conecto a la base de datos
C:\>sqlplus sys/password as sysdba
Una vez conectado continuo con crear los tablespace de mi base de datos
SQL>CREATE tablespace FINANCE
datafile 'D:\oracle\Finance\FINANCE.DBF'
autoextend on
maxsize unlimited;
SQL>CREATE tablespace FINANCE_IN
datafile 'D:\oracle\Finance\FINANCE_INDEX.DBF',
'D:\oracle\Finance\FINANCE_INDEX1.DBF'
autoextend on
maxsize unlimited;
Mi siguiente paso es crear un nuevo init a partir del init spfile que tenemos con nuestra base de datos encencida
SQL>CREATE pfile FROM spfile
El que no sabe donde se guarda el nuevo archivo generado, su ruta es en D:\\oracle\product\10.2.0\db_1\database\init$ORACLE_SID.ora. Cambia los valores del init nuevo con los valores de tu antiguo servidor.
En mi caso me creo el pfile en la ruta siguiente ---> D:\oracle\product\10.2.0\db_1\database\INITtaveras.ORA
Crear la nueva ruta para los controlfiles, en mi caso esta fue la ruta que hice C:\Users\Administrador\Desktop\oradata\
NOTA: En este nuevo archivo de init tienes que poner la nueva ruta de los controlfiles, ya que no puedes cambiar la ruta de los controlfiles de la nueva instalacion porque todo esto se realiza con la base de datos encendida. Ojo, reemplazar la ruta de los controlfiles que tienes ahora con la base de datos encendida con la nueva ruta que le pondras a los controlfiles.
--------------INFORMACION DEL INIT DE MI ANTIGUO SERVIDOR----------------
taveras.__db_cache_size=1384120320
taveras.__java_pool_size=8388608
taveras.__large_pool_size=8388608
taveras.__shared_pool_size=159383552
taveras.__streams_pool_size=8388608
*.audit_file_dest='D:\oracle\product\10.2.0\admin\taveras\adump'
*.background_dump_dest='D:\oracle\product\10.2.0\admin\taveras\bdump'
*.compatible='10.2.0.3.0'
*.control_files='C:\Users\Administrador\Desktop\oradata\control01.ctl','C:\Users\Administrador\Desktop\oradata\control02.ctl','C:\Users\Administrador\Desktop\oradata\control03.ctl'
*.core_dump_dest='D:\oracle\product\10.2.0\admin\taveras\cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=32
*.db_name='taveras'
*.db_recovery_file_dest='D:\oracle\product\10.2.0\flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(protocol=TCP)'
*.job_queue_processes=10
*.nls_language='MEXICAN SPANISH'
*.nls_territory='MEXICO'
*.open_cursors=300
*.pga_aggregate_target=1572864000
*.processes=500
*.remote_login_passwordfile='EXCLUSIVE'
*.sessions=555
*.sga_target=1572864000
*.shared_servers=50
*.star_transformation_enabled='TRUE'
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='D:\oracle\product\10.2.0\admin\taveras\udump'
SQL> exit
>sqlplus sys/password as sysdba
Apagar base de datos
SQL>shutdown immediate
Ahora ahi que trabajar con los archivos recuperados del servidor anterior. Ahora con la base de datos apagada renombra los siguientes archivos de la ruta donde se encuentran los archivos DBF de la base de datos nueva. Su ruta es D:\oracle\product\10.2.0\oradata\taveras.
NOTA: No renombrar los controlfiles porque ya tienes los controlfiles del antiguo servidor en otra ruta.
Archivos a renombrar
REDO01.log
REDO02.log
REDO03.log
SYSAUX01.DBF
SYSTEM01.DBF
TEMP01.DBF
UNDOTBS01.DBF
USERS01.DBF
En mi caso los renombre de esta forma:
REDO01RENAME.log
REDO02RENAME.log
REDO03RENAME.log
SYSAUX01RENAME.DBF
SYSTEM01RENAME.DBF
TEMP01RENAME.DBF
UNDOTBS01RENAME.DBF
USERS01RENAME.DBF
Eliminar los nuevos DBF creados por el tablespace, en mi caso la ruta es D:\oracle\Finance
Entonces elimine FINANCE.DBF, FINANCE_INDEX.DBF Y FINANCE_INDEX1.DBF
Ahora si puedo copiar y pegar mis archivos recuperados.
Pegue los archivos FINANCE.DBF, FINANCE_INDEX.DBF Y FINANCE_INDEX1.DBF de mi antiguo servidor a la ruta D:\oracle\Finance
Pegue los archivos REDO01.log, REDO02.log, REDO03.log, SYSAUX01.DBF, SYSTEM01.DBF, TEMP01.DBF, UNDOTBS01.DBF, USERS01.DBF a la ruta D:\oracle\product\10.2.0\oradata\taveras
Luego de esto procedemos a subir la base de datos con el archivo init que creamos anteriormente. Recordar que mi archivo de init creado es INITtaveras.ORA, el de ustedes sera INIT$ORACLE_SID
SQL>startup pfile=D:\oracle\product\10.2.0\db_1\database\INITtaveras.ORA
Con la base de datos arriba, ahora creamos el nuevo spfile a partir del nuevo init con el que subimos la base de datos.
SQL>CREATE spfile FROM pfile;
Detemos la base de datos
SQL>SHUTDOWN IMMEDIATE
Ahora podemos iniciarla normalmente
SQL>STARTUP
Hasta el procedimiento de recuperar una base de datos con los archivos fisicos de un servidor antiguo para ponerlos al servidor nuevo. Recuerden que este procedimiento es para quienes no tienen RMAN instalado