ORACLE_SID Windows
Tengo una máquina con 3 instancias de BD (utilizo Oracle 10g y Windows XP).
Si desde la linea de comando pongo sqlplus a cualquiera de las 3 bd. Poniendo después del password la cadena de conexión, entro sin problemas a todas ellas.
El tema está en que una de las BD es utilizada por una aplicación que utiliza la variable ORACLE_SID, necesitan tener esa variable con el valor correcto y hacer la conexión simplemente con usu/pwd, sin @cadenadeconexión. Cuando intentamos conectarnos de esta manera, no lo conseguimos a ninguna de ellas, excepto a la primera que se creó cuando se instaló el oracle (no sé si esto de haber sido la primera es significativo, pero es lo único que se me ocurre).
Si le ponemos ORACLE_SID=BDQUENOEXISTE (por ejemplo, o XXXXXX, es decir algo que sea erróneo y que no tenga instancia ni nada por el estilo) entra igualmente a la BD numero 1 (por llamarla de alguna forma). O sea que se pasa por el forro el valor de ORACLE_SID...
Para intentar evitar ésto, bajo el servicio windows de la BD numero 1 y modifico el ORACLE_SID a la bd numero 2 (o la 3) e intento conectarme con sqlplus usu/pwd y el error que me devuelve es ORA-12518 y otras veces el TNS-12564, claro, porque el servicio de la bd numero 1 está abajo, pero yo quiero que se conecte a la que le he puesto en el ORACLE_SID!
He revisado n-mil veces el tnsnames. Ora, el listener. Ora, lsnrctl services, lsnrctl status, lo he tirado y levantado miles de veces y no doy con el problema ni, claro, con la solución ...
Ya no sé que más mirar.
Si desde la linea de comando pongo sqlplus a cualquiera de las 3 bd. Poniendo después del password la cadena de conexión, entro sin problemas a todas ellas.
El tema está en que una de las BD es utilizada por una aplicación que utiliza la variable ORACLE_SID, necesitan tener esa variable con el valor correcto y hacer la conexión simplemente con usu/pwd, sin @cadenadeconexión. Cuando intentamos conectarnos de esta manera, no lo conseguimos a ninguna de ellas, excepto a la primera que se creó cuando se instaló el oracle (no sé si esto de haber sido la primera es significativo, pero es lo único que se me ocurre).
Si le ponemos ORACLE_SID=BDQUENOEXISTE (por ejemplo, o XXXXXX, es decir algo que sea erróneo y que no tenga instancia ni nada por el estilo) entra igualmente a la BD numero 1 (por llamarla de alguna forma). O sea que se pasa por el forro el valor de ORACLE_SID...
Para intentar evitar ésto, bajo el servicio windows de la BD numero 1 y modifico el ORACLE_SID a la bd numero 2 (o la 3) e intento conectarme con sqlplus usu/pwd y el error que me devuelve es ORA-12518 y otras veces el TNS-12564, claro, porque el servicio de la bd numero 1 está abajo, pero yo quiero que se conecte a la que le he puesto en el ORACLE_SID!
He revisado n-mil veces el tnsnames. Ora, el listener. Ora, lsnrctl services, lsnrctl status, lo he tirado y levantado miles de veces y no doy con el problema ni, claro, con la solución ...
Ya no sé que más mirar.
1 Respuesta
Respuesta de oracledisect
1