Oracle - AYUDA CON PASO DE UN BASE DE DATOS A OTRO EQUIPO

 
Vista:

AYUDA CON PASO DE UN BASE DE DATOS A OTRO EQUIPO

Publicado por JOHN (10 intervenciones) el 17/08/2005 21:15:37
TENGO UNA BASE DE DATOS EN UN EQUIPO LLAMADA POR DECIR ALGO PRUEBAS , EL EQUIPO DE ES DE 40 GB , PERO QUIERO PASAR TODA ESTA BASE DATOS A OTRO EQUIPO QUE TENGO CON UN DISCO DURO QUE ES DE 80 , EN ESTE EQUIPO YA INSTALE EL SOFTWARE DE ORACLE Y CREE LA BASE DE DATOS LLAMADA TAMBIEN PRUEBA , EN EL OTRO EQUIPO REALIZE LA COPIA DE TODA LA BASE DE DATOS , PERO TRATO DE IMPORTARLA EN EL NUEVO EQUIPO Y NO ME DEJA ADEMAS NO ME DEJA , TAMPOCO ENTRAR CON EL USUARIO , NO SE SI CREE EL USUARIO MAL O QUE , SI ALGUIEN ME PUEDE AYUDAR SE LO AGRADECERE DE TODO CORAZóN

DE ANTEMANO GRACIAS POR SU AYUDA

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AYUDA CON PASO DE UN BASE DE DATOS A OTRO EQUI

Publicado por Gustavo Alberto (6 intervenciones) el 26/08/2005 15:49:55
JJ_SYS_L....

Una manera facil y automatica es utilizando el RMAN del Oracle Enterprice Manager Console, con RMAN puedes realizar un Full Backup de la BD que deseas trasladar y luego crear una BD nueva en el equipo nuevo a partir del Full Backup
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:AYUDA CON PASO DE UN BASE DE DATOS A OTRO EQUI

Publicado por WalterBlaser (1 intervención) el 30/08/2005 15:09:02
Hola : pudiste hacer un export bien? para importarla tenes que tener la bases en estado de montado y no abierta, yo tamben estoy con un tema parecido, no llegue a importarla todavia.-
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDA CON PASO DE UN BASE DE DATOS A OTRO EQUIPO

Publicado por Carlos A. Calderón S. (1 intervención) el 15/05/2012 21:57:08
Puede hacerlo con el siguiente procedimiento para clonar la base de datos Oracle a partir de un respaldo en frío de los archivos de la base de datos fuente. Si un respaldo en frío de la base de datos está disponible, restáurelo en una nueva ubicación y vaya al paso 5.

1. Identificar los archivos de base de datos
Identificar todos los archivos de datos con la base de datos fuente iniciada. El guión tam_bd.sql desplegará todos los archivos de datos, temporales y registros para rehacer.
sqlplus "/ as sysdba"
@/ruta/tam_bd.sql

-- Guión tam_bd.sql
prompt Componentes de base de datos y su tamaño
set linesize 100
set pagesize 999
set feedback off
col nombre format a50
col mbytes format 99,999,999.99
break on report
compute sum label "Tamaño total" of total mbytes on report
select name nombre, bytes/1048576 mbytes
from (select name, bytes
from v$datafile
union all
select name, bytes
from v$tempfile
union all
select lf.member, l.bytes
from v$logfile lf, v$log l
where lf.group# = l.group#);

Crear el sistema de archivos respectivo, en este caso como ejemplo es llamado /oradata2 con un tamaño de 1 GB.
Desde unix:
crfs -v jfs2 -g rootvg -m /oradata2 -p'rw' -a size=1G -a agblksize='4096' -A yes -a ea=v2 –a

Asegurarse que el sistema de archivos de la base de datos clonada es lo suficientemente grande y tiene todos los directorios necesarios. Si la base de datos fuente tiene una estructura de archivos compleja, puede considerar modificar el anterior sql para producir un guión para copiar los archivos.

Si no queda bien /oradata2, eliminar el sistema de archivo.
Desde unix:
rmfs -r /oradata2

Montar el sistema de archivo para ponerlo a disposición.
Desde unix:
mount /oradata2

Cambiar modo de ejecución y dueño del sistema de archivos.
Desde unix:
chmod –R 2755 /oradata2
chown –R oracle:dba /oradata2

Crear el subdirectorio destino que contendrá los archivos de la base de datos nueva, bajo /oradata2.
Desde unix:
cd /oradata2
mkdir NUEVO_SID_BASE_DATOS

Crear el resto de subdirectorios acorde a OFA para la nueva base de datos.

2. Detener la base de datos
Detener la base de datos fuente.
Desde sqlplus:
shutdown immediate

3. Copiar los archivos a la nueva ubicación
Copiar (cp, scp o ftp) los archivos de la máquina/base de datos fuente al nuevo destino. No copiar los archivos de control existentes. Asegurarse que los archivos tienen los permisos y dueño correctos.

4. Iniciar la base de datos
Iniciar la base de datos fuente:
Desde sqlplus:
startup

5. Producir un pfile para la nueva base de datos
Este paso asume que se está usando un spfile. Si no es así, solamente haga una copia del pfile existente.
Desde sqlplus:
create pfile='init<NUEVO_SID_BASE_DATOS>.ora' from spfile;

Esto creará un nuevo pfile en el directorio $ORACLE_HOME/dbs.

Una vez creado, el nuevo pfile necesitará ser editado. Si la base de datos clonada va a tener un nuevo nombre, este deberá ser cambiado, así como cualquier ruta. Revise el contenido del archivo y realice las alteraciones que sean necesarias. También piense acerca de ajustar los parámetros de memoria. Si está clonado una base de datos de producción en una máquina lenta de desarrollo debe considerar reducir algunos valores.

Nota: Poner particular atención a la ubicación de los archivos de control.

6. Crear el archivo de control clonado
Crear el archivo de control para la nueva base de datos. Para hacer esto, conéctese a la base de datos fuente y produzca un vaciado del actual archivo de control.
Desde sqlplus:
alter database backup controlfile to trace as 'cbd_<nuevo_sid_base_datos>.sql';

Esto creará el archivo en el directorio $ORACLE_HOME/dbs.

El archivo requerirá una extensiva edición antes de que sea usado. Usando su editor favorito realice las siguientes alteraciones:
• Remueva todas las líneas desde arriba del archivo pero sin incluir la segunda línea 'STARTUP MOUNT' (está más o menos a la mitad del archivo)
• Remueva cualquier línea que empiece con --
• Remueva cualquier línea que empiece con un #
• Remueva cualquier línea en blanco en la sección 'CREATE CONTROLFILE'
• Remueva la línea 'RECOVER DATABASE USING BACKUP CONTROLFILE'
• Ubíquese el inicio del archivo en la línea 'CREATE CONTROLFILE'. Cambie la palabra 'REUSE' por 'SET'. El nombre de la base datos necesita ajustarse al nuevo nombre de la nueva base de datos (esto si requiere ser cambiado). Decida si la base de datos será puesta en modo de archivo o no
• Si las rutas están siendo cambiadas, altere el archivo para que refleje los cambios

Seguidamente se presenta un ejemplo de como puede verse una base de datos pequeña llamada BDP1 la cual no está en modo de archivo:

STARTUP NOMOUNT
CREATE CONTROLFILE SET DATABASE "BDP1" RESETLOGS FORCE LOGGING NOARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 453
LOGFILE
GROUP 1 '/oradata2/BDP1/redo01.log' SIZE 100M,
GROUP 2 '/oradata2/BDP1/redo02.log' SIZE 100M,
GROUP 3 '/oradata2/BDP1/redo03.log' SIZE 100M
DATAFILE
'/oradata2/BDP1/system01.dbf',
'/oradata2/BDP1/undotbs01.dbf',
'/oradata2/BDP1/cwmlite01.dbf',
'/oradata2/BDP1/drsys01.dbf',
'/oradata2/BDP1/example01.dbf',
'/oradata2/BDP1/indx01.dbf',
'/oradata2/BDP1/odm01.dbf',
'/oradata2/BDP1/tools01.dbf',
'/oradata2/BDP1/users01.dbf',
'/oradata2/BDP1/xdb01.dbf',
'/oradata2/BDP1/andy01.dbf',
'/oradata2/BDP1/psstats01.dbf',
'/oradata2/BDP1/planner01.dbf'
CHARACTER SET WE8ISO8859P1
;

ALTER DATABASE OPEN RESETLOGS;

ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata2/BDP1/temp01.dbf'
SIZE 104857600 REUSE AUTOEXTEND OFF;

7. Agregar una entrada al archivo oratab y establecer el ambiente
Editar el archivo /etc/oratab (o /opt/oracle/oratab) para agregar una entrada para la nueva base de datos.
Establecer el nuevo ambiente con '. oraenv' y verificar que está operando.
Desde unix:
echo $ORACLE_SID

Si esto no produce una salida, revisar el SID de la nueva base de datos e investigar.

8. Crear el archivo de clave de acceso
Crear un archivo de clave de acceso agregando una clave de acceso apropiada al final del comando.
Desde unix:
orapwd file=${ORACLE_HOME}/dbs/orapw${ORACLE_SID} password=<clave_de_acceso>

9. Crear el(los) nuevo(s) archivo(s) de control
Crear los nuevos archivos de control y abrir la base de datos:
sqlplus "/ as sysdba"
@/ruta/cbd_<nuevo_sid_base_datos>

Si todo lo planeado resulta se verá la instancia iniciar y el mensaje 'Control file created'. No obstante, es algo normal encontrar problemas en esta etapa, por lo que seguidamente se muestran un par de errores comunes y sus soluciones:

ORA-01113: file 1 needs media recovery
Probablemente olvidó detener la base de datos fuente antes de copiar los archivos de datos. Completar los pasos del 2 al 4.

ORA-01503: CREATE CONTROLFILE failed
ORA-00200: controlfile could not be created
ORA-00202: controlfile: '/oradata2/BDP1/control01.ctl'
ORA-27038: skgfrcre: file exists
Verificar doblemente el pfile creado en el paso 5. Asegurarse de que los archivos de control están apuntando a las ubicaciones correctas. Si los ajustes de los archivos de control están bien, asegúrese que los archivos de control no fueron copiados con el resto de los archivos de la base de datos. Si así fue, elimínelos o renómbrelos.

10. Ejecutar algunas verificaciones
Si el paso anterior fue exitoso, la base de datos deberá quedar abierta. Es aconsejable realizar algunas verificaciones en este punto:
• Verificar que la base de datos está abierta con:
select status from v$instance;
El status deber ser 'OPEN'.
• Asegurarse que los archivos de datos están todos bien con:
select distinct status from v$datafile;
Esto debe retornar solamente los status ONLINE y SYSTEM.
• Revisar el archivo de alertas.

11. Establecer el nombre global de la base de datos
La nueva base de datos aún tendrá el nombre global de la base de datos fuente. Ejecutar el siguiente comando para reajustarlo.
Desde sqlplus:
alter database rename global_name to <nuevo_sid_base_datos>;

Nota: <nuevo_sid_base_datos> se escribe sin comillas.

12. Crear un spfile
Desde sqlplus:
create spfile from pfile;

13. Cambiar la identificación de la base de datos
Si RMAN va a ser utilizado para respaldar la base de datos, la identificación de la base de datos debe ser cambiada. De todos modos, si RMAN no va a ser utilizado, no causa ningún daño el cambio de la identificación - y es una buena práctica el hacerlo.

Desde sqlplus:
shutdown immediate
startup mount
exit

Desde unix:
nid target=/

Preguntará si quiere cambiar la identificación de la base de datos. Responda con 'Y'. Una vez que ha terminado, inicie nuevamente la base de datos.

Desde sqlplus:
shutdown immediate
startup mount
alter database open resetlogs;

14. Configurar TNS
Agregar las entradas para la nueva base de datos en el listener.ora y tnsnames.ora como sea necesario. Reiniciar el receptor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar