Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

migrando de 8 a 9i

Estas en el tema de migrando de 8 a 9i en el foro de Oracle en Foros del Web. hola a tod@s, soy nuevo por aqui, pero ya he encontrado cosas interesantes en este foro :) me ha sido encargada la migración de una ...
  #1 (permalink)  
Antiguo 26/09/2007, 08:53
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
migrando de 8 a 9i

hola a tod@s, soy nuevo por aqui, pero ya he encontrado cosas interesantes en este foro :)
me ha sido encargada la migración de una base de datos que está sobre una instalación corrupta de oracle 8 a una instalación nueva de 9i
soy programador, pero nunca he utilizado el oracle :( ya tengo todo instalado y preparado para migrar la base de datos, pero no tengo muy claro cómo se hace.
un técnico me ha indicado estos pasos:

1. replicar los tablespaces y filespaces del mismo modo que están en la instalacion 8
2. crear un usuario en la 9i
3. vincular el usuario a esos tablespaces y filespaces
4. importar la base de datos antigua (dmp)

en el paso 1, me han pedido el listado de archivos del directorio de la BD orant/oradata/XXX; segun parece para intuir como se replicaran los tablespaces
en el paso 2 no se como se hace eso en el 9i
en el paso 4, basta con el dmp (en este caso 20mb)?
no habrá que crear una base de datos del mismo nombre antes de vincular?

estoy un poco perdido, no tengo mucho tiempo y es una base de datos para el ministerio de pesca de mozambique que tengo que dejar instalada antes de irme

gracias por vuestra atención
  #2 (permalink)  
Antiguo 26/09/2007, 22:51
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 11 meses
Puntos: 11
Re: migrando de 8 a 9i

Primero debes crear los tablespaces tal y como son en la ruta que tienes en la 8i (de preferencia ya que los blog dan problema si no es la misma ruta)

ej:

creamos el tablespace y le nombramos "miprueba"

Código PHP:
 CREATE TABLESPACE "miprueba" 
    
LOGGING 
    DATAFILE 
'C:\oracle\midata\TAB_FICHERO.dat' SIZE 20M 
    AUTOEXTEND ON NEXT  5M MAXSIZE  500M 
    EXTENT MANAGEMENT LOCAL 
    SEGMENT SPACE MANAGEMENT  AUTO

Luego crear el usuario en este paso nombraremos al usuario Owner como "prueba0001" para efectos didacticos

Código PHP:
CREATE USER prueba0001 IDENTIFIED BY prueba0001
le das los privilegios necesarios (DBA si va a ser un owner)

Código PHP:
GRANT CONNECTRESOURCEDBA TO prueba0001
Asignamos el tablespace al usuario

Código PHP:
ALTER USER prueba0001
  
DEFAULT TABLESPACE miprueba
  TEMPORARY TABLESPACE miprueba

Ya cuando tengas todo listo (usuarios, tablespaces, roles y privilegios dados) simplemenhte deberas realaizar una iportacion de tu archivo backup de 8i

ej:

Código PHP:
imp userid=system file=backup81.dmp log=importa.log fromuser=prueba0001 touser=prueba0001 
OJO: el fromuser es el nombre del owner en la 8i y el touser el owner de la 9i (en tu caso los deberas dejar iguales)
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #3 (permalink)  
Antiguo 27/09/2007, 00:57
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

muchas gracias linterns! por cierto, navegando por la web antes de postear ya me había quedado con lo de las puñaladas... que tensión! :P
ahora mismo voy al ministerio, estaré toda la mañana e intentaré probar lo que me envías. no se ni donde tengo que ejecutar los comando, pero lo encontrare.
me había olvidado que la 8 y la 9 no están en la misma máquina, por si eso afecta en algo.
este es el contenido de la carpeta en la 8:


entonces el tablespace tendría que ser "SIRENODATA.dat" ?? que size? autoextend?
estoy muy perdido, y tengo poco tiempo, pero si no lo termino de instalar, aqui no tienen capacidad para terminar la instalación. hago todo lo que puedo

gracias de nuevo
  #4 (permalink)  
Antiguo 27/09/2007, 04:19
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

bueno, bueno, esto es lo que he avanzado hasta ahora:
con los scripts que me has dado he creado el tablespace, el usuario, los permisos y le he asignado el tablespace.
el problema viene al importar, dice que tiene exito (yo no veo ninguna base de datos por aqui), pero da este problema:

Código PHP:
Ficheiro de exportaþÒo criado por EXPORT:V08.01.07 via percurso convencional

Aviso
os objectos foram exportados por SIRENOnÒo por si

foi efectuada a importaþÒo no conjunto de caracteres WE8MSWIN1252 e no conjunto
de caracteres NCHAR AL16UTF16
cliente da exportaþÒo utiliza o conjunto de caracteres WE8ISO8859P1 
(conversÒo d
e conjunto de caracteres possÝvel
)
servidor da exportaþÒo utiliza o conjunto de caracteres NCHAR WE8ISO8859P1 (conv
ersÒo de conjunto de caracteres possÝvel
)
a importar objectos do utilizador SIRENO para SIRENO;
IMP-00017falha na instruþÒo seguinte com o erro ORACLE 1435:
 
"ALTER SESSION SET CURRENT_SCHEMA= "SIRENO;"" 
repite el error 1435 unas 20 veces antes de terminar

sin embargo, si ejecuto solo el comando "imp", y sigo los pasos (sin mucha idea de lo que me pide), salen errores como estos:

Código PHP:
IMP-00017falha na instruþÒo seguinte com o erro ORACLE 1658:
 
"CREATE TABLE "IEONUBOSIDAD" ("NUBCOD" VARCHAR2(1) NOT...

IMP-00017: falha na instruþÒo seguinte com o erro ORACLE 942:
 "
ALTER TABLE "IEODESMAR" ADD CONSTRAINT "... 
tb termina con "exito", pero naranjas de la china.
no se muy bien por donde seguir; tengo algun contacto con el creador de la BD, pero es complicado

gracias
  #5 (permalink)  
Antiguo 27/09/2007, 08:55
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 11 meses
Puntos: 11
Re: migrando de 8 a 9i

No se si te diste cuenta pero a mi se me pasó por alto mencionarte que la parte de la recuperacion no es desde la consola SQL; sino desde un ambiente DOS.... posicionate en el subdirectorio BIN de oracle y ahi teclea la prete de importacion de datos; o en el PATH pion la ruta del BIN.

Recuerda que el backup de la 8i (el backup no la base de datos) debe estar en el subdirectorio donde estar realizando la sentencia IMP.

Aqui hay un mini manualito para ambiente Unix pero la idea es la misma

MANUAL
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #6 (permalink)  
Antiguo 28/09/2007, 01:53
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

ya había hecho el imp en DOS :)
de ahí los mensajes de error. estoy bloqueado, tendré que crear más usuarios, existentes en la instalación en 8?
no se que probar, y en internet no encuentro nada

JELP
  #7 (permalink)  
Antiguo 28/09/2007, 05:42
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

ya he conseguido importar!!
error: habia puesto ; al final del comando DOS (...)
salía un error que el usuario XXX no existia. lo cree, y ya no da errores :)
ahora tengo que comprobar si me puedo conectar, e instalar la aplicación.
linterns, muchas gracias, sin ti no hubiera llegado hasta aqui :)
  #8 (permalink)  
Antiguo 28/09/2007, 10:52
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 11 meses
Puntos: 11
Re: migrando de 8 a 9i

cualquier cosa ya sabes que estamos por aqui
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #9 (permalink)  
Antiguo 01/10/2007, 09:41
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

lo dicho, todo ha ido bien, ahora estoy investigando como demonios se corre la aplicación que tengo aqui, que consiste en una carpeta con archivos .fmx en su mayoría.
necesito un servidor, evidentemente, y googleando no me queda muy claro, qué necesito?? solo quiero algo ligero, pero me estoy descargando el ODS y el OAS (developer y application suite) pero las 10g. espero que tengan el forms server o lo que sea que necesito. espero que no de problemas de compatibilidad, al ser una aplicacion desarrollada en entorno 8
voy por buen camino? alguna sugerencia? una vez instalado, se instala la aplicacion y listo? a ver como la conecto... y lo mas importante, espero que al ejecutar la aplicacion y conectarla, no de fallos.

sigo intentándolo
  #10 (permalink)  
Antiguo 01/10/2007, 12:39
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

Hola.
Si te vas a instalar el Oracle developer suite 10g, no estoy seguro que te rule bien contra una 9i.
Otra cosa. Si tienes los FMX ( ejecutables ) pero no tienes los FMB ( fuentes ), vas a tener un problema : Todos los FMX que tengan llamadas a paquetes de base de datos te van a cascar.
Como supongo que tendrás los fuentes, tienes que abrirlos y compilarlos de nuevo para que te cojan el timestamp correcto de los paquetes.
  #11 (permalink)  
Antiguo 01/10/2007, 16:22
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 8 meses
Puntos: 7
Re: migrando de 8 a 9i

"Como supongo que tendrás los fuentes, tienes que abrirlos y compilarlos de nuevo para que te cojan el timestamp correcto de los paquetes."

nunca habia escuchado eso, solo es necesaria una recompilacion de los fuentes cuando cambias de plataforma (sistema operativo) y nada que ver con los paquetes que usen

antes de bajarte oracle developer suite y el application server debes de saber en que version esta desarrollada tu aplicacion, una vez que lo sepas entonces si te descargas lo necesario
__________________
Blogzote.com :-) Mi blog
  #12 (permalink)  
Antiguo 02/10/2007, 00:48
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

Cita:
Iniciado por kikolice Ver Mensaje
nunca habia escuchado eso, solo es necesaria una recompilacion de los fuentes cuando cambias de plataforma (sistema operativo) y nada que ver con los paquetes que usen
Hola, pues otra cosa mas que sabes, ya sabes que el saber no ocupa lugar.
Si tu tienes un fmx que está generado contra una 8i por ejemplo y corres ese fmx contra una 10g, aunque tenga los mismos paquetes y demas, tienes un 99% de posibilidades de que te cierre el FMX o que te salte un ORA-04062.
La solución es facil, generar otra vez el FMX contra la BBDD actual. Ese mismo problema te suele aparecer cuando subes una nueva versión de la especificación de un paquete. Los fmx pierden por decirlo de alguna manera " el puntero " a ese paquete y al hacer la llamada te salta el error ORA-04062
  #13 (permalink)  
Antiguo 02/10/2007, 01:45
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 8 meses
Puntos: 7
Re: migrando de 8 a 9i

aqui hay una nota que habla sobre ese error

http://www.dba-oracle.com/t_ora_0406...en_changed.htm

aunque habla de problemas en cambios a paquetes o procedimientos, hablando de cambios de versiones de bases de datos te concedo la razon, lo mejor es recompilar la aplicacion, aqui dejo un link con un bat para recompilar masivamente los forms

http://www.blogzote.com/2006/04/19/c...-oracle-forms/
__________________
Blogzote.com :-) Mi blog
  #14 (permalink)  
Antiguo 02/10/2007, 03:43
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

Muy parecido al bat que utilizo yo, je je je je je

Un saludo
  #15 (permalink)  
Antiguo 02/10/2007, 12:01
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

chic@s, tengo instalado el oracle forms developer 6i, y ejecutando el runtime de este modo:
d:\oracle\oraDev\bin\ifrun60.EXE MODULE=ENTRADA.FMX USERID=usuario\pass@SID USESDI=YES

que era como se accedía cuando funcionaba, me ocurre lo que jc3000 predecía, cierra el fmx. intentamos "recompilar" con el bat que dice kikolice:
for %%f IN (*.fmb) do ifcmp60 userid=usuario\pass@SID module=%%f output_file=%%f.fmx batch=yes module_type=form compile_all=yes window_state=minimize

lo procesa, no da errores, pero tampoco parece que haga nada.

como genero los fmx contra la base de datos, como sugiere jc3000??

gracias
  #16 (permalink)  
Antiguo 02/10/2007, 14:51
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

¿ a que te refieres con que " lo procesa, no da errores, pero tampoco parece que haga nada" ?

¿ No te genera el FMX ?

Lo que te pone kikolice esta bien. Yo utilizo basicamente el mismo .bat que te pone el ( te lo pongo de corrido, mañana te lo confirmo ) :

for %%f IN *.fmb do call ifcmp60.exe userid=usuario/pass@SID module=%%f batch=yes module_type=form compile_all=yes window_state=minimize
  #17 (permalink)  
Antiguo 03/10/2007, 04:34
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

si ejecuto:
ifcmp60 userid=XXX/YYY@prova module=ENTRADA.fmb output_file=ENTRADA.fmx batch=yes module_type=form compile_all=yes window_state=minimize

sale el oracle forms compiler, no dice nada, se cierra, y en la línea de comando no dice nada. tampoco encuentro ningún fmx generado
  #18 (permalink)  
Antiguo 03/10/2007, 06:23
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

Creo que es por que el userid y el module está al contrario.

Yo uso dos bat, hazlo como te pongo

BAT1.BAT :

FOR %%f IN (*.fmb) DO CALL BAT2.BAT%%f

BAT2.BAT :

IFCMP60.EXE module=%1 userid=user/pass@bbdd module_type=FORM compile_all=YES batch=YES window_state=MINIMIZE

Esto yo lo uso todos los dias y funciona, así que te tiene que funcionar a ti, ya nos contarás que tal te ha ido
  #19 (permalink)  
Antiguo 03/10/2007, 12:04
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

hola chicos, después de mucho pelearnos con variables de entorno y versiones y demás, hemos conseguido compilar:

for %%f IN (*.fmb) do ifcmp60 module=%%f userid=sireno/masteriip@prova batch=yes module_type=form compile_all=yes window_state=minimize

nos genera algunos fmx, y en los que no nos da estos errores:

Compiling WHEN-BUTTON-PRESSED trigger on EJECUTAR item in BLOCK24 data block...
Compilation error on WHEN-BUTTON-PRESSED trigger on EJECUTAR item in BLOCK24 data block:
PL/SQL ERROR 201 at line 2, column 29
identifier 'IEOPUE' must be declared
PL/SQL ERROR 0 at line 2, column 15
SQL Statement ignored
PL/SQL ERROR 341 at line 2, column 8
declaration of cursor 'COM' is incomplete or malformed
PL/SQL ERROR 0 at line 3, column 5
Item ignored

cómo podemos continuar? tenemos que resolver dependencias entre los ficheros? podemos evitar estos errores modificando la base de datos?

muchas gracias... seguimos peleando
  #20 (permalink)  
Antiguo 04/10/2007, 00:27
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

Bueno, vamos avanzando.

Ese error que te dá es que en la declaración de un cursor ( COM ) se está haciendo referencia a una tabla, campo, o variable que no existe o si es una tabla-campo o no existe o no tienes permisos para verla. Tambien puede ser un pl.

Busca en los fmb's que no te han compilado, en el cursor COM, que es eso de IEOPUE. Tiene pinta de ser un campo, pero verificalo y nos cuentas.
  #21 (permalink)  
Antiguo 05/10/2007, 07:32
 
Fecha de Ingreso: septiembre-2007
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: migrando de 8 a 9i

chicos, lo hemos conseguido!!
al final hemos instalado el forms 6i, con lo que estaban construidos los forms, y copiando los tnsnames.ora del servidor todo ha ido bien
los problemas venian por variables de entorno y esas movidas

muchisimas gracias :))
  #22 (permalink)  
Antiguo 05/10/2007, 08:42
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Re: migrando de 8 a 9i

No me suena que este error :

identifier 'IEOPUE' must be declared

tenga que ver con las variables de entorno.

En cualquier caso enhorabuena y si necesitas mas soporte, aquí nos tienes .

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 17:12.