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

Duda con SID en varias BDs.

Estas en el tema de Duda con SID en varias BDs. en el foro de Oracle en Foros del Web. Hola, he instalado dos BD en un servidor Oracle 9i. El caso es que me está dando problemas con el SID a la hora de ...
  #1 (permalink)  
Antiguo 16/06/2008, 07:20
 
Fecha de Ingreso: marzo-2005
Mensajes: 189
Antigüedad: 19 años, 1 mes
Puntos: 0
Duda con SID en varias BDs.

Hola, he instalado dos BD en un servidor Oracle 9i.
El caso es que me está dando problemas con el SID a la hora de conectarme a una de ellas. Cada base de datos tiene su SID que también aparece cumplimentado en el Tsnames, pero me he fijado que en el registro de Windows solo hay almacenado un valor para la entrada ORACLE_SID.

Creo recordar, que antes de que comenzase a darme problemas podia conectarme a ambas BD mediante sqlplus y OMC, pero ahora que falla he comenzado a indagar un poco y me ha parecido un poco extraño que el segundo SID no figure en ninguna parte. ¿es eso correcto?

Por cierto, el error que me da al conectarme a la segunda BD es ORA-12505: el listener no ha podido resolver el SID proporcionado del descriptor de conexión.

Por si interesa saber, o único que he hecho en la BD es instalar el parche 9.0.2.8.0, y antes de esto ambas BD funcionaban correctamente con el mismo tsnames.

Bueno, y se me olvidaba comentar que cuando hago un tnsping responde perfectamente resolviendo el SID sin problema. Un poco raro ¿no?...

Gracias y un saludo.

Última edición por Alextroy; 16/06/2008 a las 07:46
  #2 (permalink)  
Antiguo 16/06/2008, 07:46
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Duda con SID en varias BDs.

Hola,

El tema es asi, el ORACLE_SID que esta en el registro de Windows siempre es uno solo, y representa el valor por defecto que va a tomar la variable de entorno ORACLE_SID, es decir, si abres una consola de cmd y ejecutas

Código:
sqlplus user/pass
sin indicar el nombre de la base de datos, el SQL*Plus te conecta a la que este definida en el registro. Una manera de cambiar esto es, por ejemplo

Código:
set ORACLE_SID=SID
sqlplus user/pass
Por otro lado, el error que posteas tiene que ver con el listener, y dice que no conoce el SID definido en el string de conexion. Esto puede ser por un problema de configuracion tanto en el listener.ora como en el tnsnames.ora


Saludos
  #3 (permalink)  
Antiguo 16/06/2008, 08:12
 
Fecha de Ingreso: marzo-2005
Mensajes: 189
Antigüedad: 19 años, 1 mes
Puntos: 0
Respuesta: Duda con SID en varias BDs.

Efectivamente, si establezco el SID con SET ORACLE_SID me deja conectarme perfectamente, lo que me ha extrañado es que antes podia conectarme a ambas bases de datos simplemente poniendo la cadena de conexión del Tsnames. Es decir:

- Para conectarme a la BD que tenia el SID que aparece en el registro me conectaba de la forma normal: sqlplus usuario/contraseña

- Para conectarme a la segunda BD ponia: sqlplus usuario/contraseña@cadena_conexión

Bueno, pues acabo de darme cuenta, que tras cambiar la variable SID y conectarme a la segunda BD, vuelvo a establecer el SID que habia al principio e intento conectarme a la segunda BD con la cadena sqlplus usuario/contraseña@cadena_conexión y resulta que ahora no me salta el errorcito de las narices. Es decir, parece ser que hasta que no conectas con la segunda BD al menos una vez (cambiando la variable SID), es como si no reconociera ese SID por ninguna parte.
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




La zona horaria es GMT -6. Ahora son las 13:55.