Preparando el entorno de Red de Oracle Database 11gZ052 06

8,658 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
8,658
On SlideShare
0
From Embeds
0
Number of Embeds
1,582
Actions
Shares
0
Downloads
209
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Preparando el entorno de Red de Oracle Database 11gZ052 06

  1. 1. Configurandoel entorno deRedOracle Database 11 GAdministration I. Cap 6
  2. 2.  Oracle Net es la tecnología de arquitectura cliente-servidor que permite el establecimiento de sesiones hacia la instancia de la base de datos. Un usuario interactua con un Proceso de Usuario. Un proceso de servidor es un proceso que corre en el servidor de base de datos, y ejecuta las SQL que recibe.
  3. 3. Ejecución de SQL en serverprocess Parse  Se analiza la sentencia que sera ejecutada Bind  Se sustituyen las variables por sus valores Execute  Se ejecuta la base de datos Fetch  Se devuelven los resultados al user process
  4. 4. Oracle Net es el responsablede: Transmitir el SQL desde el user process hacia el proceso de servidor Transmitir los datos de respuesta desde el server process hacia el user process
  5. 5.  OracleNe es un protocolo de capa de aplicación, y soporta como protocolos de red a:  TCP  TCP seguro  Windows Named Pipes  Socket Direct Protocol (SDP) Como DBA usted no necesita conocer detalles sobre el protocolo, solo debe configurarlo y utilizarlo.
  6. 6.  CONNECT scott/tiger@orcl11g @orclindica que se usara la cadena de conexión ORCL Al conectar con una instancia local se usa el protocolo ICP, el cual es provisto por el sistema operativo
  7. 7. Resolución de Nombre Para conectarse se utiliza la cadena @orcl Entonces debe resolverse lo siguiente:  El protocolo que se va a usar  La dirección Ip del Listener  El nombre de la instancia
  8. 8. Proceso de servidor Ellistener corre en el servidor, y utiliza uno o mas protocolos para monitorear uno o mas puertos y atender asi las peticiones. Con TCP cada proceso de servidor lanzado por un listener, utiliza un numero de puerto especifico.
  9. 9. Creando un Listener El listener se define en el archivo: ORACLE_HOME/network/admin/listener.ora Oracle provee 3 herramientas graficas para administrar el listener:  Enterprice manager  Net manager  Net Configuration Assistant
  10. 10. # listener.ora Network Configuration File: C:appOracleproduct11.2.0dbhome_1networkadminlistener.ora# Generated by Oracle configuration tools.SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = C:appOracleproduct11.2.0dbhome_1) (SID_NAME = ORCL) ) (SID_DESC = (PROGRAM = extproc) (SID_NAME = CLRExtProc) (ORACLE_HOME = C:appOracleproduct11.2.0dbhome_1) ) (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = C:appOracleproduct11.2.0dbhome_1) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONLY:C:appOracleproduct11.2.0dbhome_1binoraclr11.dll") ) (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = C:appOracleproduct11.2.0dbhome_1) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONLY:C:appOracleproduct11.2.0dbhome_1binoraclr11.dll") ) )LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = WINServerING)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) )ADR_BASE_LISTENER = C:appOracle
  11. 11. Registrando la Base de datos Existen dos métodos para registrar una instancia con una base de datos.  Static  Dynamic
  12. 12. Registro Statico Basta con agregar la entrada al archivo Listener.oraSID_LIST_LISTENER = (SID_LIST = (SID_DESC = (ORACLE_HOME =C:appOracleproduct11.2.0dbhome_1) (SID_NAME = ORCL) ))
  13. 13. Registro Dinamico Es el metodo preferido Un parametro de inicializacion llamado Local_Listener que indica a la instancia la direccion de red para buscar el LISTENER El nombre de la instancia y los nombres de los servicios estan en los parametros:  Service_name  Instance_name
  14. 14.  Alter system set local_listener=list2; Alter system register; Altersystem set local_listener= ‘(address=(pro=tcp)(host=127.0.0.1)(port= 1522))’;
  15. 15. Resolución de nombres Para establecer una sesion entre un proceso de usuario y una instancia, se utiliza una cadena, la cadena resuelve la direccion del listener y el nombre del servicio Oracle brinda 4 metodos de resolucion:  Easy connect, local naming, directory naming y external naming.
  16. 16. Easy Connect Introducido con 10g muy fácil y no requiere configuración. Pero esta limitado solo a TCP, y no soporta caracteristicas avanzadas como balanceo de carga. Esta habilitado por defecto
  17. 17.  SQL> connect scott/tiger@ues.edu.sv:1522/orcl Con easyconnect: SQL> connect scott/tiger@ues.edu.sv  Funcionara si el listener escucha en el puerto 1521 y el nombre del servicio registrado en el listener se llama ues.edu.sv
  18. 18.  Sqlplus system/oracle@ocp11g Equivale a: Sqlplus system/oracle@ues.edu.sv:1521/ocp11g Para probar la cadena de conexión ocp11g puede utilizar la utilidad TNSPING C:/> tnsping ocp11g
  19. 19. Local Naming.Nombres locales El usuario genera un alias, el cual redirecciona a una direccion de red completa (protocolo, direccion, puerto, servicio) El archivo local de alias se denomina: TNSNAMES.ORA Soporta todos los protocolos, pero puede ser tedioso mantener tantos archivos Tnsnames.ora en todos los clientes.
  20. 20. Tnsnames.oraocp11g = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = jwlnx1.bplc.co.za)(PORT=1522)) ) (CONNECT_DATA = (service_name = ocp11g) ) )test = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = serv2.bplc.co.za)(PORT =1521)) ) (CONNECT_DATA = (sid = testdb) ) )
  21. 21. Directoy Naming y ExternalNaming Directorio de Nombres requiere de LDAP (lightweight Directory Protocol) Consisteen emplear nombres de alias para toda la red, los cuales sean centralizados por LDAP
  22. 22. LSNRCTL Es una utilidad para iniciar, detener, observar y trabajar con los LISTENER Ejecute: lsnrctl help Observe la siguiente figura, y comente el resultado de la instrucción lsnrctl status LIST2
  23. 23. Net manager Herramienta que permite configurar el listener, los servicios, direcciones, etc. Profile. Brinda configuracion que aplican a todas las conexiones Service Naming configura del lado del cliente los nombres para resolucion, tnsname.ora Listener, configura los listener de la base de datos.
  24. 24.  Sqlplus system/oracle@ocp11g Equivale a: Sqlplus system/oracle@ues.edu.sv:1521/ocp11g Para probar la cadena de conexión ocp11g puede utilizar la utilidad TNSPING C:/> tnsping ocp11g
  25. 25. Archivos criticos para oracleNet Listener.ora  Esta del lado del servidor y define los listener Tnsnames.ora  Esta del lado del cliente y es usado para la resolucion de nombres, es usado por los proceso de usuario para localizar el listener Sqlnet.ora, (opcional) contiene configuraciones que aplican a todas las conexiones. Se almacenan en Oracle_Home/network/admin
  26. 26.  Laconfiguracion de la variable TNSADMIN es vital pues ella apunta al conjunto de archivos que configuran el oracle Net en los Home Directorys En windows se almacena en una entrada del registro de windows, en linux en la carpeta .profile
  27. 27. Database Link Herramienta para conectarse a varios servidores oracle, y acceder a los datos con la misma transaccion. Create database link prodscott connect to scott identified by tiger using ‘prod’;  ‘prod’ es la cadena para conexión Select * from emp@prodscott;  Luego se hará uso del link para acceder a la tabla de la base de datos remota como si estuviera en la local
  28. 28. ejercicios Muestrelos nombres y apellidos de todos los empleados (HR local) juntos con los nombres y apellidos de todos los CLIENTES (customers del esquema OE de una base remota)  Necesitara 2 equipos conectados en red entre si para poder realizar este ejercicio. Realiceel ejercicio 6.1 pagina 216, para configurar un nuevo listener
  29. 29. Oracle Shared ServerArchitecture Arquitectura Dedicada:  El listener crea un proceso (hilo en windows) para tratar cada conexión de un cliente, aislando asi al cliente y sus transacciones.  Esta es una arquitectura para dar tratamiento a pocas conexiones.  El rendimiento puede ser degradado si existe un gran numero de conexiones concurrentes.
  30. 30. Arquitectura de servidorcompartido Es transparente para los clientes que se conectan. Se crean procesos adicionales en la instancia denominados:  Dispatchers  Shared Servers Seutilizan colas para procesar las consultas SQL y tambien para sus resultados
  31. 31. Call center
  32. 32.  Cuando el user process contacta al listener, el listener lo asigna a los dispatches,. Un user process tendra la sensacion que habla con un server process, el user process comparte dispatcher con otros procesos de usuario. Al enviar una instrucción SQL, esta se envia al dispatcher el cual la coloca en la cola (common queue). Los server process monitorean la cola, para procesar las consultas conforme llegan a la cola
  33. 33.  Una vez que el server process procesa la consulta tomada de la cola, coloca los resultados en response queue. Los dispatcher monitorean la response queue, para enviar los resultados a los process user . Las sesiones se almacenan en memoria SGA en un area denominada User Global Area ubicada en el LARGE POOL
  34. 34.  Se configura a nivel de instancia, en los parametros de inicializacion.  Dispatchers: indica el numero de dispatchers  Max_dispatchers  Shared_servers  Max_shared_servers Alter system set dispatchers=‘(dispatchers=2) (protocol=tcp)’ ; Alter system set shared_servers=20; Se recomienda usar arquitectura compartida cuando se tengan mas de mil conexiones concurrentes.

×