Cómo restaurar la base de datos Oracle a partir de archivos de datos intactos
1. Hay copias de seguridad de archivos de datos, archivos de control y archivos de registro. 1. El servidor ha reinstalado el sistema operativo y también se ha reinstalado Oracle. Si el Oracle reinstalado tiene la misma estructura que la base de datos previamente dañada, entonces la recuperación en este momento es relativamente simple.
1) Elimine todos los archivos de datos, archivos de control y archivos de registro de la base de datos recién creada. Copie los archivos de datos, archivos de control y archivos de registro de la base de datos original al directorio correspondiente.
2)
Cmd>sqlplus /nolog
Sql>conn como sysdba
Nombre de usuario: sistema
Contraseña: (La contraseña aquí es la contraseña para la base de datos recién creada)
Sql>apagado inmediato
Sql>inicio nomount
Sql>alterar montaje de base de datos< / p>
En este momento, verifique si la base de datos se puede montar. A veces le indicará que no hay un archivo de contraseña y que no se puede encontrar el archivo PWDdemo.ora. Verifique el directorio correspondiente (en la base de datos) y encontrará que el archivo existe. Cabe señalar en este momento que el archivo de contraseña es el archivo de contraseña generado al crear una instancia después de la instalación de una nueva base de datos. Ahora, estamos usando el archivo de control y el archivo de datos de la base de datos anterior. base de datos anterior para abrir la base de datos anterior, por lo que en este momento, es necesario volver a crear un archivo de contraseña.
Sql>apagado inmediato
Sql>host orapwd file=c:/oracle9i/database/PWDdemo.ora contraseña=oracle
Entradas=10 (ingresar directorio de base de datos)
Sql>iniciar nomount
Sql>alterar montaje de base de datos
Sql>alterar apertura de base de datos
Abrir la base de datos
p> p>2. Si el directorio de instalación de la nueva base de datos es diferente del directorio de la base de datos original, puede reconstruir el archivo de control para abrir la base de datos en este momento. Porque la dirección del archivo de datos registrada en el archivo de control original es diferente de la ubicación del archivo de datos existente. Esta es la misma situación que la segunda a continuación. Por supuesto, también puede crear la misma estructura de directorios que la base de datos original en este momento (siempre que recuerde la estructura de directorios de la base de datos original. A lo que debe prestar atención es a la ubicación del archivo de control registrado en el parámetro). archivo y la ubicación del archivo de datos registrado en el archivo de control.
Nota: Necesitamos conocer los archivos que deben leerse durante las tres etapas de apertura de la base de datos
Sql>startup nomount (lea el archivo de parámetros en este momento) p>
Sql>alterar el montaje de la base de datos (lea el archivo de control de acuerdo con la dirección del archivo de control registrada en el archivo de parámetros)
Sql>alterar la apertura de la base de datos (lea los datos de acuerdo con la dirección del archivo de datos registrada en el archivo de control, abra la base de datos)
2. Solo se realizan copias de seguridad de los archivos de datos, pero no hay archivos de control ni de registro.
Dado que solo hay copias de seguridad de archivos de datos y no hay archivos de control ni de registro, la base de datos solo se puede restaurar reconstruyendo los archivos de control en esta vez. Los dos métodos siguientes se utilizarán para presentar cómo restaurar la base de datos reconstruyendo el archivo de control.
1) Instale únicamente el software de la base de datos, cree una instancia creando un nuevo servicio Oracle y consulte el archivo de datos. A continuación se utiliza la demostración del nombre de la instancia como ejemplo de explicación.
1. Cree un directorio para almacenar archivos relacionados con la demostración.
Es decir:: La dirección de almacenamiento de varios tipos de archivos.
C:/documentos y configuración/mkdir c:/demo
C:/documentos y configuración/mkdir c:/demo/bdump
C:/ documentos y configuraciones/mkdir c:/demo/udump
C:/documentos y configuraciones/mkdir c:/demo/cdump
C:/documentos y configuraciones/mkdir c:/ demo/pfile
C:/documents and settings/mkdir c:/demo/create
C:/documents and settings/mkdir c:/demo/oradata
C:/documents and settings/mkdir c:/demo/oradata/demo (colocar archivo de datos, archivo de registro, archivo de control)
2. Cree un archivo de parámetros de inicialización (pfile)
Este archivo pfile se puede copiar desde otras bases de datos que pueden ejecutarse normalmente y modificarse. (Determine si otras bases de datos que se ejecutan normalmente usan pfile o spfile. Si pfile se puede copiar directamente, si es spfile, se puede crear un pfile basado en spfile)
El pfile copiado debe modificarse: p> p>
background_dump_dest=c:/demo/bdump
core_dump_dest=c:/demo/cdump
user_dump_dest=c:/demo/udump
control_files="c:/demo/oradata/demo/CONTROL01.CTL", "c:/demo/oradata/demo/CONTROL02.CTL", "c:/demo/oradata/demo/CONTROL03.CTL") p>
dispatchers="(PROTOCOL=TCP) (SERVICE=demoXDB)"(nombre de instancia)
dispatchers="(PROTOCOL=TCP) (SERVICE=demoXDB)"
db_domain=""
db_name=demo
3. Crear archivos de contraseña y servicio de Oracle
C:/documents and settings/oradim — nuevo — sid demo —intpwd oracle
4. Configurar monitoreo y servicios
Usar net manager para configurar (configuración de instancia de demostración)
5. Copie la copia de seguridad del archivo de datos a el directorio especificado.
Aquí está c:/demo/oradata/demo
6. Reconstruir el archivo de control
C:/Documents and Settings/hefan>sqlplus /nolog
SQL* Plus : Versión 9.2.0.1.0 - Producción el lunes 29 de diciembre 10:57:07 2008
Copyright (c) 1982, 2002, Oracle Corporation.
SQL>. conn as sysdba
Ingrese el nombre de usuario: system
Ingrese la contraseña:
Conectado.
SQL> apagado inmediato
ORA-01507: base de datos no instalada
La rutina ORACLE ha sido cerrada.
SQL> inicio nomount file= c:/demo/pfile/initdemo.ora
La rutina ORACLE ha sido iniciada.
Área global total del sistema 135338868 bytes
Tamaño fijo 453492 bytes
Tamaño variable 109051904 bytes
Búfers de base de datos 25165824 bytes
Redo Buffers 667648 bytes
SQL> @d:/controlfile.sql
El archivo de control ha sido creado
El contenido de Controlfile.sql es el siguiente : (aquí también puede ingresar el siguiente contenido directamente en sql> para crear el archivo de control)
CREAR ARCHIVO DE CONTROL REUTILIZAR BASE DE DATOS "demo" RESETLOGS NOARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
p>MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 226
LOGFILE
GRUPO 1 ' c:/demo/oradata/ demo/redo01.log' TAMAÑO 50M,
GRUPO 2 'c:/demo/oradata/demo/redo02.log' TAMAÑO 50M,
GRUPO 3 'c:/demo/oradata/demo/redo03.log' TAMAÑO 50M
ARCHIVO DE DATOS
'c:/demo/oradata/demo/system01.dbf',
'c: /demo/oradata/demo/odm01.dbf',
'c:/demo/oradata/demo/indx01.dbf',
'c :/demo/oradata/demo /tools01.dbf',
'c:/demo/oradata/demo/undotbs01.dbf',
'c:/demo/oradata/ demo/users01.dbf',
'c:/demo/oradata/demo/xdb01.dbf',
'c:/demo/oradata/demo/cwmlite01.dbf' ,
'c:/demo/oradata/demo/drsys01.dbf',
'c:/demo/oradata/demo/example01.dbf'
JUEGO DE CARACTERES zhs16gbk
Nota: No hay ningún archivo de registro en este momento, por lo que solo se pueden realizar resetlogs. Si hay un archivo de registro, no se necesitan resetlogs aquí, noresetlogs será suficiente