1 Descripción General del Funcionamiento en Red · 92 I-92 Descripción General Los...
Transcript of 1 Descripción General del Funcionamiento en Red · 92 I-92 Descripción General Los...
91
II--9191
ObjetivosObjetivos
Dar una perspectiva de las soluciones que brinda la arquitectura de Red de Oracle a cada problema de configuración en Red
Dar una perspectiva de las soluciones Dar una perspectiva de las soluciones qqueue brinda la arquitectura de Red de brinda la arquitectura de Red de OracleOracle a cada problema de configuración a cada problema de configuración en Reden Red
92
II--9292
Descripción GeneralDescripción General
Los administradores de configuraciones de Red deben responder a numerosos desafíos:
• Configurar el entorno de red
• Mantener la red
• Ajustar, monitorizar y resolver problemas en la red
• Implementar seguridad en la red
• Integrar sistemas heredados
Los administradores de configuraciones de Los administradores de configuraciones de Red deben responder a numerosos Red deben responder a numerosos desafíos:desafíos:
• Configurar el entorno de red
• Mantener la red
• Ajustar, monitorizar y resolver problemas en la red
• Implementar seguridad en la red
• Integrar sistemas heredados
93
II--9393
Red Simple: Dos-NivelesRed Simple: Dos-Niveles
• La Red conecta a clientes y servidores.
• El cliente y el servidor hablan el mismo “lenguaje” o protocolo.
• La Red conecta a clientes y servidores.
• El cliente y el servidor hablan el mismo “lenguaje” o protocolo.
RedRedClienteCliente
ServidorServidor
94
II--9494
Red Simple/Compleja: N-Tier(Tres Niveles)
Red Simple/Compleja: N-Tier(Tres Niveles)
• El cliente puede ser un PC o un Cliente ligero.
• El servidor intermedio puede contener aplicaciones y servicios.
• El Servidor proporciona los datos.
• El cliente puede ser un PC o un Cliente ligero.
• El servidor intermedio puede contener aplicaciones y servicios.
• El Servidor proporciona los datos.
RedRedClienteCliente
ServidorServidorServidor IntermedioServidor Intermedio
RedRed
95
II--9595
Red ComplejaRed Compleja
TCP/IPTCP/IP
AppleTalkAppleTalk
SPX/IPXSPX/IPX
NetBIOSNetBIOS
DECnetDECnet
APPC/LU6.2APPC/LU6.2
96
II--9696
Aspectos Básicos de Conectividad
Aspectos Básicos de Conectividad
ProtocoloProtocolo
AdministraciónAdministración
Sistema Sistema OperativoOperativo
IntegraciónIntegración
SeguridadSeguridad
MonitorizaciónMonitorización
EscalabilidadEscalabilidad
97
II--9797
La Solución de Oracle: Net9La Solución de Oracle: Net9
Net9 proporciona:
• Independencia de Protocolo
• Amplio soporte de plataformas
• Herramientas gráficas de administración integradas
• Múltiples opciones de configuración
• Conjunto de herramientas para la traza y el diagnóstico
• API abierto
• Seguridad básica
Net9 proporciona:
• Independencia de Protocolo
• Amplio soporte de plataformas
• Herramientas gráficas de administración integradas
• Múltiples opciones de configuración
• Conjunto de herramientas para la traza y el diagnóstico
• API abierto
• Seguridad básica
98
II--9898
Net9Net9
Protocolo
Net9
ClienteClienteServidorServidorCualquier PlataformaCualquier Plataforma Cualquier PlataformaCualquier Plataforma
Administración y ConfiguraciónAdministración y Configuración
Protocolo
Net9
99
II--9999
Solución Oracle: Oracle NamesSolución Oracle: Oracle Names
Oracle Names proporciona:
• Configuración centralizada
• Administración de Red simplificada
• Información del perfil del cliente
Oracle Names proporciona:
• Configuración centralizada
• Administración de Red simplificada
• Información del perfil del cliente
100
II--100100
ClientsClients
Solución Oracle: Oracle NamesSolución Oracle: Oracle Names
Servidor5Servidor5Servidor4Servidor4Servidor3Servidor3Servidor2Servidor2Servidor1Servidor1
Servidor de NombresServidor de Nombressqlplus user/pw@Server2sqlplus user/pw@Server2
12
3
101
II--101101
Solución Oracle: Connection Manager
Solución Oracle: Connection Manager
Connection Manager proporciona:
• Multiplexado de conexiones
• Conectividad cruzada de protocolos
• Control del acceso a Red
Connection Manager proporciona:
• Multiplexado de conexiones
• Conectividad cruzada de protocolos
• Control del acceso a Red
102
II--102102
Solución Oracle : Connection Manager
Solución Oracle : Connection Manager
ServidorServidor
ConnectionConnectionManagerManager
1 2
3
103
II--103103
Solución Oracle: Opción de Red Avanzada
Solución Oracle: Opción de Red Avanzada
• Seguridad de conexión usando encriptación
• Integración con Servidores de Seguridad de terceros
• Integración DCE (Evaluación de Necesidades)
• Seguridad de conexión usando encriptación
• Integración con Servidores de Seguridad de terceros
• Integración DCE (Evaluación de Necesidades)
104
II--104104
Solución Oracle: Opción de Red Avanzada
Solución Oracle: Opción de Red Avanzada
ServidorServidorClienteCliente
Información Información Textual Textual
12
Ef5kg8ggJ90Ef5kg8ggJ90
Información Información TextualTextual
3
105
II--105105
Solución Oracle: Servidor de Seguridad
Solución Oracle: Servidor de Seguridad
Security Server proporciona:
• Un entorno unificado para la gestión de seguridad
• Autentificación y autorización de usuarios, servidores web y servidores
• Administración de la identificación de usuarios y de privilegios
• Autentificación y autorización usando criptografía
Security Server proporciona:
• Un entorno unificado para la gestión de seguridad
• Autentificación y autorización de usuarios, servidores web y servidores
• Administración de la identificación de usuarios y de privilegios
• Autentificación y autorización usando criptografía
106
II--106106
Solución Oracle: Servidor de Seguridad
Solución Oracle: Servidor de Seguridad
OracleOracleSecuritySecurityServerServer
Oracle9Oracle9
ClienteCliente
OracleOracleEnterpriseEnterpriseManagerManager
1
1
2
3
107
II--107107
Solución Oracle: Open GatewaySolución Oracle: Open Gateway
• Se puede acceder a los datos de nuestra organización como si estos residiesen en una base de datos relacional local simple.
• Open Gateway proporciona:
– Gateways (puertas de enlace) Transparentes
– Gateways procedimentales
• Se puede acceder a los datos de nuestra organización como si estos residiesen en una base de datos relacional local simple.
• Open Gateway proporciona:
– Gateways (puertas de enlace) Transparentes
– Gateways procedimentales
108
II--108108
ResumenResumen
• Net9 incluye
– Net9
– Security Server
– Oracle Names
– Connection Manager
• Productos incorporables
– Adaptadores de Protocolo
– Opción de Red Avanzada
– Gateways
• Net9 incluye
– Net9
– Security Server
– Oracle Names
– Connection Manager
• Productos incorporables
– Adaptadores de Protocolo
– Opción de Red Avanzada
– Gateways
110
II--110110
ObjetivosObjetivos
Pretendemos alcanzar los siguientes conocimientos:
• Conocer el procedimiento mediante el cual Net9 establece una conexión con un servidor
• Identificar los componentes fundamentales de la arquitectura Net9 y como interactúan
Pretendemos alcanzar los siguientes Pretendemos alcanzar los siguientes conocimientos:conocimientos:
• Conocer el procedimiento mediante el cual Net9 establece una conexión con un servidor
• Identificar los componentes fundamentales de la arquitectura Net9 y como interactúan
111
II--111111
Descripción GeneralDescripción General
Net9 proporciona tres funciones básicas:
• Operaciones de conexión
• Operaciones de transporte de datos
• Operaciones de excepción
La arquitectura Net9 se compone de varias capas, cada una de ellas tiene un único cometido en una sesión de red.
Net9 proporciona tres funciones básicas:Net9 proporciona tres funciones básicas:
• Operaciones de conexión
• Operaciones de transporte de datos
• Operaciones de excepción
La arquitectura Net9 se compone de La arquitectura Net9 se compone de varias capas, cada una de ellas tiene un varias capas, cada una de ellas tiene un único cometido en una sesión de red.único cometido en una sesión de red.
112
II--112112
Conexión a ServidoresConexión a Servidores
1
listener.oralistener.ora
ClienteCliente ServidorServidor
listener
sqlplus user/pw@DB1sqlplus user/pw@DB1
Usuario
DB1DB1 Dirección resueltaDirección resuelta
2
3
4
Servidor5
113
II--113113
Ficheros y UbicacionesFicheros y Ubicaciones
listener.oralistener.ora
ClienteCliente ServidorServidor
tnsnames.oratnsnames.ora
sqlnet.orasqlnet.ora
Se pueden especificar las Se pueden especificar las ubicaciones por defecto.ubicaciones por defecto.
114
II--114114
Desconexión de un ServidorDesconexión de un Servidor
ClienteCliente ServidorServidor
ServidorUsuario
•• Decidida por elDecidida por elUsuarioUsuario•• Por superar Por superar determinado tiempodeterminado tiempo
•• Terminación anormalTerminación anormal
115
II--115115
Operaciones sobre Datos y Excepciones
Operaciones sobre Datos y Excepciones
ClienteCliente ServidorServidor
Usuario
Servidor
116
II--116116
Arquitectura Net9Arquitectura Net9
ClienteCliente ServidorServidor
Protocolo
OPATNS
Two TaskCommon
OCI
Aplicación
Protocolo
OPA
Two TaskCommon
OPI
Servidor
TNS
117
3 Configuración de Net9 Básico del lado del Servidor
3 Configuración de Net9 Básico del lado del Servidor
118
II--118118
ObjetivosObjetivos
• Configurar el listener usando Net9 Assistant
• Iniciar el listener Net9 usando la utilidad de control del listener (LSNRCTL)
• Detener el listener Net9 usando LSNRCTL
• Identificar comandos LSNRCTL adicionales
• Establecer múltiples listeners en el mismo nodo
• Configurar el listener usando Net9 Assistant
• Iniciar el listener Net9 usando la utilidad de control del listener (LSNRCTL)
• Detener el listener Net9 usando LSNRCTL
• Identificar comandos LSNRCTL adicionales
• Establecer múltiples listeners en el mismo nodo
119
Características del proceso de listener
• Un proceso de listener puede escuchar para más de una Base de Datos.
• Varios listeners pueden escuchar sobre una Base de Datos para equilibrar la carga.
• El listener puede escuchar sobre múltiples protocolos
• El nombre por defecto del listener en Net9 es LISTENER.
• El nombre del listener tiene que ser único en la máquina en la que reside.
II--119119
Descripción General del proceso de escucha (Listener)
Descripción General del proceso de escucha (Listener)
ClienteCliente ServidorServidor
sqlnet.ora
tnsnames.ora
listener.oralistener.ora
listenerlistener
120
El que una conexión use una sesión legada o una sesión redireccionada es transparente al
usuario. Esto sólo se puede detectar activando la traza y analizando el fichero de traza
resultante. Los usuarios no pueden especificar que se legue o se redirecciones una sesión
II--120120
La respuesta del ListenerLa respuesta del Listener
Cuando un cliente hace una petición de conexión a un servidor, el listener hará lo siguiente:
• Creará un proceso de servidor y legará la conexión o
• Redireccionará la conexión a un proceso de servidor existente
Cuando un cliente hace una petición de Cuando un cliente hace una petición de conexión a un servidor, el conexión a un servidor, el listenerlistener hará lo hará lo siguiente:siguiente:
• Creará un proceso de servidor y legará la conexión o
• Redireccionará la conexión a un proceso de servidor existente
121
Pasos en una Sesión Legada
Cuando el listener desencadena un proceso de servidor dedicado a esa conexión, la sesión se
denomina sesión legada. Los siguientes eventos se producen cuando el listener crea el proceso
de servidor dedicado y le transfiere el control de la sesión a él:
1.Un cliente conecta con el listener mediante la dirección de red.
2.El listener recibe la petición de sesión y determina si puede atender dicha petición. Si no es
así el listerner deniega la sesión y continúa escuchando.
3.El listener invoca un nuevo proceso de servidor dedicado para atender la sesión entrante
4.El listener transfiere el control de la sesión al proceso de servidor.
5.Una vez establecida la sesión, los flujos de datos se realizan directamente entre el cliente y el
proceso de servidor dedicado.
6.El listener continúa escuchando peticiones de nuevas sesiones.
Nota: Cuando un cliente desconecta, el proceso de servidor asociado a él se cierra.
Uso del método Legado
• Si un servidor dedicado no tiene procesos de servidor preiniciados, se utiliza el
método de legado de sesiones.
• Si el sistema operativo o el protocolo no permite pasar una conexión entre dos
procesos diferentes en la misma máquina, no se puede usar este método.
II--121121
Sesión Bequeath (Legada)Sesión Bequeath (Legada)
1
2
3
Proceso de Servidorcreado
ClienteCliente ServidorServidor
4
5
listenerlistenerportport1521 1521
122
Pasos en una sesión redireccionada (Procesos de servidor dedicados preiniciados)
En un servidor dedicado con procesos preiniciados, el listener redireccionará la sesión a los procesos de
servidor previamente iniciados, en lugar de iniciar un proceso como en las conexiones legadas.
1. Un cliente conecta con el listener mediante una dirección de red.
2. El listener recibe la petición de sesión y determina si puede atender dicha petición. Si no es así el
listerner deniega la sesión y continúa escuchando.
3. El listener dirige un mensaje de redirección al cliente conteniendo la dirección de red de uno de los
servidores preiniciados.
4. El cliente desconecta del listener y conecta con la dirección proporcionada por el listener.
5. Una vez que la sesión se establece, el listener inicia otro servidor para reemplazar aquel usado por el
cliente.
6. El listener continúa escuchando peticiones de nuevas sesiones.
Nota: El listener mantiene un registro de la cantidad de servidores preiniciados, los servidores que
están siendo usados por varios clientes. El listener inicia una serie de procesos de servidor dedicados
cuando se inicia. El número máximo de procesos está definido por el parámetro PRESPAWN_MAX
en el fichero de configuración (listener.ora). El listener deja de iniciar servidores adicionales
cuando se alcanza PRESPAWN_MAX.
Uso del método de Redireccioamiento (Procesos de servidor dedicados preiniciados)
Los servidores preiniciados consumen recursos del sistema, pero el tiempo de conexión entre cliente y
servidor es menor que con el método anterior.
II--122122
Sesión Redireccionada(Dedicada)
Sesión Redireccionada(Dedicada)
SpawnedServer Process
SpawnedServer Process
Pre-SpawnedServer Process
Procesos de Servidor
Levantadospreviamente
1
23
Dirección en la red4
ClienteCliente ServidorServidor5
6
listenerlistenerportport1521 1521
123
Pasos en una sesión redireccionada (Repartidor de procesos de servidor)
En MTS, el listener redireccionará la sesión a un repartidor de procesos de servidor en lugar de
redireccionar a un proceso de servidor preiniciado.
1. Un cliente conecta con el listener mediante una dirección de red.
2.El listener recibe la petición de sesión y determina si puede atender dicha petición. Si no es
así el listener deniega la sesión y continúa escuchando
3.El listener dirige un mensaje de redirección al cliente conteniendo la dirección de red del
repartidor menos usado del servidor multihebra.
4.El cliente se deconecta del listener y conecta con el repartidor indicado por el listener.
5.El repartidor actualiza el listener con el nuevo valor de carga.
6.El listener continúa escuchando peticiones de nuevas sesiones.
Nota: Cuando se inicia la instancia de la Base de Datos, los repartidores se inician de acuerdo
con los parámetros de configuración establecidos en el (init.ora). La dirección de cada
repartidor se registra entonces con el listener. El listener, por tanto, dispone de la cantidad de
uso de los diferentes repartidores disponibles.
Uso del método de redireccionamiento (Repartidor de procesos de servidor)
Este método posibilita que varios clientes conecten con el mismo servidor sin necesidad de
iniciar un proceso de servidor ni de tener procesos de servidor dedicados preiniciados. Cuando
se configura un MTS, las sesiones entrantes se dirigen siempre a un repartidor el cual
proporciona el servidor compartido.
II--123123
Sesión RedireccionadaRepartidor (Dispatcher)Sesión RedireccionadaRepartidor (Dispatcher)
DispatcherDispatcher
DispatcherRepartidor
1
2
34
Dirección de Red5
6
7listenerlistener
portport1521 1521
ClienteCliente ServidorServidor
124
II--124124
El Fichero LISTENER.ORAEl Fichero LISTENER.ORA
Cuando se inicia un listener mediante la utilidad de control del listener (LSNRCTL), éste crea automáticamente un fichero listener.ora configurado con los siguientes valores por defecto:
Cuando se inicia un listener mediante la utilidad de control del listener (LSNRCTL), éste crea automáticamente un fichero listener.ora configurado con los siguientes valores por defecto:
• Nombre listener LISTENER
• Puerto 1521
• Protocolos TCP/IP e IPC
• Nombre SID BD por defecto
• Nombre Host Nombre del Hostpor defecto
• Nombre listener LISTENER
• Puerto 1521
• Protocolos TCP/IP e IPC
• Nombre SID BD por defecto
• Nombre Host Nombre del Hostpor defecto
Contenido del fichero LISTENER.ORA
El fichero listener.ora por defecto contiene los siguientes parámetros:
1. El nombre del listener. Por defecto es LISTENER.
2. El parámetro ADDRESS_LIST que contiene un bloque de direcciones para las que estará
escuchando el listener para conexiones entrantes. Cada una de esas direcciones representa
diferentes formas en las que el listerner recibe y procesa una conexión.
3.Direcciones IPC identifican peticiones de conexiones entrantes desde aplicaciones en el
mismo nodo que el listener e información enviada o registrada por un repartidor de Base de
Datos. Si se identifican peticiones de conexión desde el mismo nodo, el valor de KEY es
igual al nombre del servicio de la base de datos. Si se identifica un repartidor de BD, el valor
de KEY es igual al identificador de sistema de BD (SID). Si el nombre del servicio es el
mismo que el SID, sólo se necesita una dirección IPC.
4.La dirección TCP identifica conexiones TCP entrantes desde clientes de red intentando
conectar con el puerto 1521. Los clientes usan el puerto definido en su fichero tnsnames.ora
para conectar con el listener. Basándose en el host definido en esa entrada, el listener
redireccionará la conexión a él.
5.Un listener puede escuchar más de una BD en una máquina. En el bloque o parámetro
SID_LIST_nombre_listener es donde se definen esos SIDs.
6.El parámetro SID_LIST se define si se definen más de un SID.
7.En el parámetro SID_DESC tiene que existir información para cada SID.
125
II--125125
El fichero LISTENER.ORAEl fichero LISTENER.ORA
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = juanmi)(PORT = 1521))
))(DESCRIPTION =(PROTOCOL_STACK =(PRESENTATION = GIOP)(SESSION = RAW)
)(ADDRESS = (PROTOCOL = TCP)(HOST = juanmi)(PORT = 2481))
))
SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = c:\oracle\ora92)(PROGRAM = extproc)
)(SID_DESC =(GLOBAL_DBNAME = mibase.juanmi)(ORACLE_HOME = c:\oracle\ora92)(SID_NAME = MIBASE)
)
)
...ejemplo de descripción de SID adicional ...)
STARTUP_WAIT_TIME_LISTENER = 0CONNECT_TIMEOUT_LISTENER = 10TRACE_LEVEL_LISTENER = OFF
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = juanmi)(PORT = 1521))
))(DESCRIPTION =(PROTOCOL_STACK =(PRESENTATION = GIOP)(SESSION = RAW)
)(ADDRESS = (PROTOCOL = TCP)(HOST = juanmi)(PORT = 2481))
))
SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = PLSExtProc)(ORACLE_HOME = c:\oracle\ora92)(PROGRAM = extproc)
)(SID_DESC =(GLOBAL_DBNAME = mibase.juanmi)(ORACLE_HOME = c:\oracle\ora92)(SID_NAME = MIBASE)
)
)
...ejemplo de descripción de SID adicional ...)
STARTUP_WAIT_TIME_LISTENER = 0CONNECT_TIMEOUT_LISTENER = 10TRACE_LEVEL_LISTENER = OFF
El fichero LISTENER.ORA
El fichero listener.ora se utiliza para configurar el listener. El fichero listener.ora tiene que
residir en la máquina o nodo en el que reside el listener.
Contenido del fichero LISTENER.ORA
El fichero listener.ora contiene información acerca de la configuración de lo siguiente:
• El nombre del listener
• La dirección del listener
• Bases de Datos que usan el listener
• Parámetros del listener
• (de diapositiva siguiente)
8.El parámetro GLOBAL_DBNAME indica el nombre global de la BD. Este nombre es la
forma de identificar globalmente la BD. Por ejemplo, dos BD distintas pueden tener el mismo
nombre pero diferentes dominios. Un dominio permite a una BD identificarla univocamente
cuando el nombre del dominio está incluido en el nombre de la máquina en la que reside la
BD. Este parámetro se necesita también para resolver un nombre de servicio mediante el
método de denominación basado en host.
Nota: Host Naming se cubre en la próxima lección.
9.ORACLE_HOME es el directorio home en el que está definida la BD. Esto habilita al
listener para identificar la localización del ejecutable de la BD.
10.SID_NAME define el nombre del SID para el que el listener acepta conexiones.
11.Por defecto, un ejemplo de SID se define aquí.
126
II--126126
El Fichero LISTENER.ORAParámetros
El Fichero LISTENER.ORAParámetros
Los parámetros siguientes se usan para definir otras funciones del listener:Los parámetros siguientes se usan para Los parámetros siguientes se usan para definir otras funciones del definir otras funciones del listenerlistener::
CONNECT_TIMEOUT_listener_name
LISTENER_address
LOG_DIRECTORY_listener_name
LOG_FILE_listener_name
LOGGING_listener_name
PASSWORDS_listener_name
SAVE_CONFIG_ON_STOP_listener_name
CONNECT_TIMEOUT_listener_name
LISTENER_address
LOG_DIRECTORY_listener_name
LOG_FILE_listener_name
LOGGING_listener_name
PASSWORDS_listener_name
SAVE_CONFIG_ON_STOP_listener_name
Parámetro Descripción
CONNECT_TIMEOUT_listener_name Establece la cantidad de segundos que espera el listener para obtener una consulta válida después de que se inicia la sesión.
LISTENER_address Define la dirección de escucha para el listener.
LOG_DIRECTORY_listener_name Controla el directorio donde se escribira el fichero log
LOG_FILE_listener_name Especifica el fichero donde se escribirá el fichero log.
LOGGING_listener_name Logging está activado a no ser que pongas este parámetro y pongas logging a off.
PASSWORDS_listener_name Especifica un password para realizar determinadas tareas DBA sobre el listenerusando LSNRCTL.
SAVE_CONFIG_ON_STOP_listener_name Cualquier cambio hecho mediante el comando SET de LSNRCTL SET se hace permanente si el parámetro es TRUE.
127
II--127127
LISTENER.ORA File ParametersLISTENER.ORA File Parameters
SERVICE_LIST_listener_name
SID_LIST_listener_name
STARTUP_WAIT_TIME_listener_name
TRACE_DIRECTORY_listener_name
TRACE_FILE_listener_name
TRACE_LEVEL_listener_name
USE_PLUG_AND_PLAY_listener_name
SERVICE_LIST_SERVICE_LIST_listener_namelistener_name
SID_LIST_SID_LIST_listener_namelistener_name
STARTUP_WAIT_TIME_STARTUP_WAIT_TIME_listener_namelistener_name
TRACE_DIRECTORY_TRACE_DIRECTORY_listener_namelistener_name
TRACE_FILE_TRACE_FILE_listener_namelistener_name
TRACE_LEVEL_TRACE_LEVEL_listener_namelistener_name
USE_PLUG_AND_PLAY_USE_PLUG_AND_PLAY_listener_namelistener_name
Parámetro Descripción
SERVICE_LIST_listener_name Define el servicio servido por el listener. Este es el mismo del SID_LIST, hecho más genérico para servidores que no sean de BD.
SID_LIST_listener_name Define el SID de las BD servidas por el listener.
STARTUP_WAIT_TIME_listener_name Establece la cantidad de segundos que el listener duerme antes de responder al primer comando STATUS de LSNRCTL. Esto asegura que un listener con un protocolo lento tenga tiempo de iniciarse antes de responder a esa petición.
TRACE_DIRECTORY_listener_name Controla el directorio destino del fichero de traza.
TRACE_FILE_listener_name Controla el nombre del fichero de traza del listener.
TRACE_LEVEL_listener_name Cambia la traza on off a un nivel especificado.
USE_PLUG_AND_PLAY_listener_name Insta al listener a registrarse en un servidor de nombres reconocido. Continuará buscando un servidor hasta que lo encuentre.
130
II--130130
Utilidad de Control del Listener(LSNRCTL)
Utilidad de Control del Listener(LSNRCTL)
La utilidad de control del listener es la herramienta para gestionar el listener.
Se pueden ejecutar comandos de control desde la línea de comandos o desde el prompt de LSNRCTL.
• Sintaxis para la línea de comandos
• Sintaxis desde el prompt
La utilidad de control del La utilidad de control del listenerlistener es la es la herramienta para gestionar el herramienta para gestionar el listenerlistener..
Se pueden ejecutar comandos de control Se pueden ejecutar comandos de control desde la línea de comandos o desde el desde la línea de comandos o desde el promptprompt de LSNRCTL.de LSNRCTL.
• Sintaxis para la línea de comandos
• Sintaxis desde el prompt
> LSNRCTL command> LSNRCTL command
LSNRCTL> commandLSNRCTL> command
131
Starting the Listener
The command used to start the listener is start. The listener must be stopped before starting the listener,
and any manual changes to the listener.ora file must be made when the listener s shut down. The
argument for the start command is the name of the listener, and if no listener is defined, LISTENER is
started by default.
Stopping the Listener
The stop command stops the listener. The listener must be running to stop it. If a password is configured,
the set password command must be used before the stop command can be used. The password must be set
from within the LSNRCTL prompt; it cannot be set from the operating system command line. It is good
practice to send a warning message to all network users before stopping a listener. In some platforms on
some operating systems, when a listener is stopped, and connections exists to the listener, the connections
do not close down, making it impossible to start the listener again until the running processes have been
closed.
II--131131
Comandos LSNRCTLComandos LSNRCTL
Las siguientes funciones son las más utilizadas para controlar el listener:
• Iniciar el listener (start)
• Detener el listener (stop)
Desde NT también se puede iniciar y detener el listener desde el manejador de servicios
Las siguientes funciones son las más Las siguientes funciones son las más utilizadas para controlar el utilizadas para controlar el listenerlistener::
• Iniciar el listener (start)
• Detener el listener (stop)
Desde NT también se puede iniciar y detener el listener desde el manejador de servicios
LSNRCTL> stop [listener name]
LSNRCTL> start [listener_name]
132
II--132132
Comandos LSNRCTL adicionalesComandos LSNRCTL adicionales
CHANGE_PASSWORD QUIT
DBSNMP_START RELOAD
DBSNMP_STATUS SAVE_CONFIG
DBSNMP_STOP SERVICES
EXIT SET command
HELP SHOW command
CHANGE_PASSWORD QUIT
DBSNMP_START RELOAD
DBSNMP_STATUS SAVE_CONFIG
DBSNMP_STOP SERVICES
EXIT SET command
HELP SHOW command
Comando DescripciónCHANGE_PASSWORD Cambia dinámicamente el password encriptado del
listener
DBSNMP_START Inicia el agente inteligente de SNMP para una BD
Oracle ejecutándose en el mismo nodo
DBSNMP_STATUS Verifica si el agente SNMP se está ejecutando
DBSNMP_STOP Detiene el agente SNMP para una BD Oracle
EXIT Sale de la utilidad LSNRCTL
HELP Proporciona la lista de comandos disponible
QUIT Igual que EXIT
RELOAD Detiene todo salvo la dirección del listener y vuelve
a leer el fichero listener.ora. Este comando permite
añadir o cambiar servicios sin detener el listener.
SAVE_CONFIG Crea un backup del fichero de configuración del
(denominada listener.bak) y actualiza el listener.ora
para reflejar cualquier cambio
SERVICES Proporciona información detallada acerca de los
servicios para los que escucha el listener
SET command Este comando establece los valores de los
parámetros que pueden configurarse para el
listener
SHOW command Este comando lista los valores de los parámetros
establecidos para el listener
133
II--133133
Modificadores SET y SHOW de LSNRCTL
Modificadores SET y SHOW de LSNRCTL
El modificador SET se usa para cambiar parámetros del listener en el entorno del LSNRCTL.
El modificador SHOW se usa para visualizar los valores de los parámetros para el listener.
El modificador SET se usa para cambiar El modificador SET se usa para cambiar parámetros del parámetros del listenerlistener en el en el entoentorrno del no del LSNRCTL. LSNRCTL.
El modificador SHOW se usa para El modificador SHOW se usa para visualizar los valores de los parámetros visualizar los valores de los parámetros para el para el listenerlistener..
LSNRCTL> SET trc_level ADMINLSNRCTL> SET trc_level ADMIN
LSNRCTL> SHOW connect_timeoutLSNRCTL> SHOW connect_timeout
Comando DescripciónSET CONNECT_TIMEOUT Determina la cantidad de tiempo que espera el listener
para una petición de conexión válida después de que
una conexión se ha iniciado
SET CURRENT_LISTENER Establece o visualiza parámetros cuando se están
usando múltiples listeners
SET LOG_DIRECTORY Establece una localización no por defecto para el fichero
log o devuelve la localización por defecto del mismo
SET LOG_FILE Establece un valor no por defecto para el fichero log
SET LOG_STATUS Cambia el loggin on u off
SET PASSWORD Cambia el password enviado por LSNRCTL al
proceso listener para propósitos de autentificación
unicamente.
SET SAVE_CONFIG_ON_STOP Salva todos los cambios hechos por el comando
SET permanentemente si se pone a on. El salvado
ocurre antes de que el listener salga.
SET STARTUP_WAITTIME Establece la cantidad de tiempo que duerme el
listener antes de responder a un comando start
SET TRC_DIRECTORY Establece una localización no por defecto para el
fichero trace o devuelve la localización por
defecto del mismo
SET TRC_FILE Establece un valor no por defecto para el fichero trace
SET TRC_LEVEL Pone a on la traza para el listener
Nota: El comando SHOW usa todos los parámetros del comando SET salvo el equivalente de SET
PASSWORD
134
Listeners Múltiples
Si más de un listener sirve a una BD, un cliente puede elegir aleatoriamente entre los listener
a los que dirige sus peticiones de conexión. Esto permite compartir la carga de conexión.
Consideraciones acerca de los Clientes
Para permitir al cliente elegir entre los listener aleatoriamente, se debe configurar una
dirección de listener diferente para el mismo servicio, correspondiendo con la dirección
definida por cada listener en el fichero listener.ora.
II--134134
Configuración de Listeners MúltiplesConfiguración de Listeners Múltiples
1. LISTENER1 =
(ADDRESS_LIST =
2. (ADDRESS= (PROTOCOL= TCP)(Host= WWED103-SUN)(Port= 1521)))
3. LISTENER2 =
(ADDRESS_LIST =
4. (ADDRESS= (PROTOCOL= TCP)(Host= WWED103-SUN)(Port= 1522)))
5. SID_LIST_LISTENER1 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME= WWED103-SUN.us.oracle.com)
(ORACLE_HOME= /home/oracle)
(SID_NAME = ORCL803)))
6. SID_LIST_LISTENER2 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME= WWED103-SUN.us.oracle.com)
(ORACLE_HOME= /home/oracle)
(SID_NAME = ORCL803)))
1. LISTENER1 =
(ADDRESS_LIST =
2. (ADDRESS= (PROTOCOL= TCP)(Host= WWED103-SUN)(Port= 1521)))
3. LISTENER2 =
(ADDRESS_LIST =
4. (ADDRESS= (PROTOCOL= TCP)(Host= WWED103-SUN)(Port= 1522)))
5. SID_LIST_LISTENER1 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME= WWED103-SUN.us.oracle.com)
(ORACLE_HOME= /home/oracle)
(SID_NAME = ORCL803)))
6. SID_LIST_LISTENER2 =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME= WWED103-SUN.us.oracle.com)
(ORACLE_HOME= /home/oracle)
(SID_NAME = ORCL803)))
135
Error ORA-12154
Peticiones de conexión entrantes demasiado rápidas para que las atienda el listener, lo cual
excede la cola del listener (determinada por QUEUESIZE en listener.ora y names.ora). Para
corregir este problema, seguir los siguientes pasos:
1. Detener el listener.
2. Reconfigurar QUEUESIZE en el fichero listener.ora.
3. Reiniciar el listener y tratar de conectar de nuevo.
Error ORA-12224
La petición de conexión no se puede completar debido a que el listener está ejecutándose. Para
corregir este problema síganse los siguientes pasos:
1. Asegurarse de que la dirección de destino proporcionada en el cliente concuerda con
la usada por el listener.
2. Verificar también que no existe un problema de compatibilidad de versiones.
Error ORA-12500
El listener fue incapaz de iniciar un proceso para conectar el usuario al servidor de BD. Para
corregir este problema síganse los siguientes pasos: :
1. Verificar que la sección SID_LIST del fichero LISTENER.ORA y el SID en la
sección CONNECT DATA del fichero tnsnames.ora son correctos.
2. Verificar que el usuario posee los privilegios adecuados para acceder a la BD.
II--135135
Problemas con el ListenerProblemas con el Listener
Los siguientes códigos de error están relacionados con problemas con el listener:Los siguientes códigos de error están Los siguientes códigos de error están relacionados con problemas con el relacionados con problemas con el listenerlistener::ORA-12154: No Listener
ORA-12224: TNS: no listener
ORA-12500: TNS: listener failed to start a
dedicated server process
ORA-12545: TNS: name lookup failure
TNS-01169: The listener has not recognized the
password
ORA-12154: No Listener
ORA-12224: TNS: no listener
ORA-12500: TNS: listener failed to start a
dedicated server process
ORA-12545: TNS: name lookup failure
TNS-01169: The listener has not recognized the
password
136
II--136136
ResumenResumen• El proceso listener atiende peticiones de
conexión y de servicios pasando la conexión a un proceso de servidor o redireccionando la conexión.
• El fichero listener.ora es el fichero de configuración para el listener.
• La utilidad de control del listener se encarga de gestionar el funcionamiento del listener.
• El fichero listener.ora se puede configurar para más de un listener.
• El proceso listener atiende peticiones de conexión y de servicios pasando la conexión a un proceso de servidor o redireccionando la conexión.
• El fichero listener.ora es el fichero de configuración para el listener.
• La utilidad de control del listener se encarga de gestionar el funcionamiento del listener.
• El fichero listener.ora se puede configurar para más de un listener.
Error ORA-12545
El listener en el nodo remoto no puede ser contactado. Para corregir este problema síganse los
siguientes pasos:
1.Verificar que ADDRESS en el fichero tnsnames.ora o en el fichero listener.ora es correcto.
2.Verificar que el listener está iniciado en el nodo remoto. Debe comprobarse su estado mediante el
comando status de LSNRCTL e iniciarlo con el comando start si es necesario.
Error TNS-01169
Para corregir este problema, introducir el comando set password desde LSNRCTL y después el
comando stop para detener el listener.
137
4 Configuración de Net9 Básico del lado del Cliente
4 Configuración de Net9 Básico del lado del Cliente
138
II--138138
ObjetivosObjetivos
• Establecer una conexión desde el lado del cliente de Net9 usando el método host-naming
• Configurar los ficheros Net9 del lado del cliente y conectar usando el método de denominación local
• Utilizar Net9 Assistant para definir preferencias en el lado del cliente
• Establecer una conexión desde el lado del cliente de Net9 usando el método host-naming
• Configurar los ficheros Net9 del lado del cliente y conectar usando el método de denominación local
• Utilizar Net9 Assistant para definir preferencias en el lado del cliente
139
Existen dos configuraciones básicas de denominación.
• Local Naming
Precisa configuración local de todos los nombres de servicio y cambios de dirección.
Se necesitan Tnsnames.ora y sqlnet.ora
• Host Naming
Host Naming precisa un configuración mínima.
Se necesita Sqlnet.ora.
II--139139
Descripción GeneralDescripción General
• El método host-naming no precisa configuración, aunque se deben satisfacer algunos requisitos.
• El método local naming precisa configuración usando Net9 Assistant, una herramienta gráfica.
• El método host-naming no precisa configuración, aunque se deben satisfacer algunos requisitos.
• El método local naming precisa configuración usando Net9 Assistant, una herramienta gráfica.
140
Se puede usar el nombre de la máquina en la que reside el servidor de BD para conectar a la base de datos si:
• Cliente y servidor se conecta sobre TCP/IP.
• Todos los nombre se resuelven mediante un mecanismo de traslación de direcciones IP como Domain Name Services (DNS), Network Information Services (NIS), o un fichero host de TCP/IP mantenido de forma centralizada.
•No se solicitan características de Oracle Connection Manager.
•El nombre global de la BD y el nombre de la máquina host son el mismo o existe un alias para el nombre del host usado por las BDs del host.
II--140140
Host Naming del lado del ClienteHost Naming del lado del Cliente
ClienteCliente
sqlnet.orasqlnet.ora listener.oralistener.ora
ServidorServidor
TRACE_LEVEL_CLIENT = OFF
sqlnet.authentication_services = (NTS)
names.directory_path = (TNSNAMES, HOSTNAME)
names.default_domain = world
name.default_zone = world
automatic_ipc = off
TRACE_LEVEL_CLIENT = OFF
sqlnet.authentication_services = (NTS)
names.directory_path = (TNSNAMES, HOSTNAME)
names.default_domain = world
name.default_zone = world
automatic_ipc = off
TCP/IPTCP/IP
141
II--141141
Host Naming del lado del ServidorHost Naming del lado del Servidor
ClienteCliente
sqlnet.orasqlnet.ora listener.oralistener.ora
ServidorServidor
TCP/IPTCP/IPSID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = wwed151-sun.us.oracle.com)
(ORACLE_HOME = /oracle803)
(SID_NAME = TST8)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = wwed151-sun.us.oracle.com)
(ORACLE_HOME = /oracle803)
(SID_NAME = TST8)
15211521
142
II--142142
Local NamingLocal Naming
listener.oralistener.ora
ServidorServidorClienteCliente
tnsnames.oratnsnames.ora
sqlnet.orasqlnet.ora
144
Net9 es responsable de habilitar comunicaciones entre socios cooperativos en una transacción distribuida Oracle, ya sea cliente-servidor o servidor-servidor. Específicamente, Net9 proporciona tres operaciones básicas sobre la red:
Operaciones de conexión
Operaciones de datos
Operaciones de Excepciones
II--144144
Net9 Assistant: ProfileNet9 Assistant: Profile
153
II--153153
TNSNAMES.ORATNSNAMES.ORA
# TNSNAMES.ORA Configuration file:
C:\ORANT8\NET80\ADMIN\tnsnames.ora
# Generated by Oracle Net9 Assistant
ceti0.world =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = oracle0.ugr.es)
(PORT = 1521)
)
(CONNECT_DATA = (SID = ceti0)
)
)
# TNSNAMES.ORA Configuration file:
C:\ORANT8\NET80\ADMIN\tnsnames.ora
# Generated by Oracle Net9 Assistant
ceti0.world =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = oracle0.ugr.es)
(PORT = 1521)
)
(CONNECT_DATA = (SID = ceti0)
)
)
154
II--154154
SQLNET.ORASQLNET.ORA
# C:\ORANT8\NET80\ADMIN\SQLNET.ORA Configuration
File:C:\ORANT8\NET80\ADMIN\sqlnet.ora
# Generated by Oracle Net8 Assistant
NAME.DEFAULT_ZONE=world
NAMES.DEFAULT_DOMAIN=world
SQLNET.AUTHENTICATION_SERVICES= (NTS)
SQLNET.EXPIRE_TIME=0
SQLNET.ENCRYPTION_SERVER=requested
SQLNET.ENCRYPTION_CLIENT=requested
NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
# C:\ORANT8\NET80\ADMIN\SQLNET.ORA Configuration
File:C:\ORANT8\NET80\ADMIN\sqlnet.ora
# Generated by Oracle Net8 Assistant
NAME.DEFAULT_ZONE=world
NAMES.DEFAULT_DOMAIN=world
SQLNET.AUTHENTICATION_SERVICES= (NTS)
SQLNET.EXPIRE_TIME=0
SQLNET.ENCRYPTION_SERVER=requested
SQLNET.ENCRYPTION_CLIENT=requested
NAMES.DIRECTORY_PATH= (TNSNAMES, HOSTNAME)
sqlplus system/manager@ceti0sqlplus system/manager@ceti0
155
II--155155
Problemas del lado del ClienteProblemas del lado del Cliente
ORA-12154 “TNS:could not resolve service name”
ORA-12198 “TNS:could not find path to destination”
ORA-12203 “TNS:unable to connect to destination”
ORA-12533 “TNS:illegal ADDRESS parameters”
ORA-12545 “TNS:name lookup failure”
ORA-12154 “TNS:could not resolve service name”
ORA-12198 “TNS:could not find path to destination”
ORA-12203 “TNS:unable to connect to destination”
ORA-12533 “TNS:illegal ADDRESS parameters”
ORA-12545 “TNS:name lookup failure”
Los siguientes códigos de error reflejan problemas del lado del cliente:
156
II--156156
ResumenResumen
• El método host naming no precisa configuración en un entorno TCP/IP si los valores por defecto son aceptables.
• El método local naming precisa configuración del lado del cliente usando Net8 Assistant si se usa un protocolo distinto a TCP/IP o si los valores por defecto tienen que ser modificados.
• El método host naming no precisa configuración en un entorno TCP/IP si los valores por defecto son aceptables.
• El método local naming precisa configuración del lado del cliente usando Net8 Assistant si se usa un protocolo distinto a TCP/IP o si los valores por defecto tienen que ser modificados.