Quiero aprender el oracle y developer y necesito ayuda para este código

Los he cambiado ahora tengo en el developer
# listener.ora Network Configuration File: C:\DevSuiteHome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\DevSuiteHome_1)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1526))
)
)
)
# tnsnames.ora Network Configuration File: C:\DevSuiteHome_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = totan-22ef8385a)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
Cuando me conecto al SQLPLUS de developer me da el siguiente error ORA-12514: TNS:El listener no conoce actualmente el servicio solicitado en el descriptor de conexión.
No se lo que esta mal, pero lo estoy intentando todo, con la configuración de net también lo he intentado, lo he configurado muchas veces, pero no consigo conectarme.
Yo me conecto a SQLPLUS con el usuario y contraseña que tengo en ORACLEXE, que si me funciona.
Yo lo único que quiero es aprender el oracle y developer.

1 respuesta

Respuesta
1
Bueno vamos por parte y antes que nada aclaremos:
Vas a tener un tnsnames. Ora (y sqlnet. Ora pero no lo toques) por oracle home. En tu caso tenés 2 oracle homes.
Así que siempre verificá que tengas configurado el "alias" en el tnsnames que estas usando.
Otra cuestión acá es el listener y el puerto donde va a escuchar.
Por lo que veo tienes configurado en el tnsnames para apuntarle al puerto 1521, pero el dato del listener que mostrás tiene el 1526 y la instancia no figura.
Si tu base de datos está en c:\oraclexe, te sugiero que sea ese el listener que levantes y al otro listener no lo uses.
Por simplicidad te sugiero que uses un sólo listener y que escuche en el 1521, y te repito un concepto gral: los TNSNAMES. ORA son para app clientes y LISTENER. ORA para el SERVIDOR. Entonces tnsnames. Ora vas a tener tantos como productos distintos tengas (con distintos oracle homes) y listener. Ora sólo vas a tener donde exista algún servidor, eso no quita que el servidor tenga su propio TNSNAMES. ORA, para el SQLPLUS local por ejemplo.
El listener que tiene que estar levantado es el que está en el home de oracleXE y su archivo tiene que ser algo así:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = MIHOST)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (XE)
Tené en cuenta que el ORACLE_HOME que figura ahí es donde yo tengo un XE, pero en tu caso puede ser otra ruta y si quieres verificar, es el directorio que contiene al directorio BIN donde están los binarios de Oracle.
Al tnsnames del developer dejalo como está.
Para hacer las prueba podes usar tnsping y dependiendo del mensaje que tira te podes dar cuenta más o menos donde está el error:
TNSPING BASE_XE
Fallo al resolver el nombre: El alias BASE_XE no figura en el tnsnames. Ora del home que se esta usando.
Causa, falta el alias o bien estamos con otro oracle home. Se le suele llamar Alias a la parte izquierda de por ejemplo XE = (DESCRIP... del tnsnames, ya que es un alias a la configuración para conectarse a la db y se le puede poner el nombre que se nos ocurra.
No hay ningún listener o No listener: Encontró el Alias en el tnsnames, pero no encontró a nadie atendiendo en el puerto que el tnsnames especifica.
Causas: Servicio de listener bajo o bien listener escuchando en un puerto distinto al especificado en el tnsnames. Ora.
Si está todo Ok, ahí podes probar con sqlplus.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas