2 Replies Latest reply on Mar 11, 2019 10:12 PM by AlfonsoAlmonte

    Nuevo servidor con los datafiles, controlfiles y init del antiguo servidor

    AlfonsoAlmonte

      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