TEMA 6. Administración Avanzada de Oracle 10g COMUNICACIONES
|
|
- María Concepción Palma Sevilla
- hace 8 años
- Vistas:
Transcripción
1 TEMA 6. NET. Administración Avanzada de Oracle 10g COMUNICACIONES 1
2 TEMA 6. NET. ORACLE NET SERVICES. ORACLE NET. ORACLE NET. CLIENTE/SERVIDOR. ORACLE NET. WEB y APP. SERVER. ORACLE NET. WEB SIN APP. SERVER. ORACLE NET. CONNECTION POOLING. LISTENER. ORACLE CONNECTION MANAGER. OTROS COMPONENTES CONCEPTOS. SERVICIO. INSTANCIA. REGISTRO DE SERVICIO. CONECTOR. MAPEOS. Administración Avanzada de Oracle 10g COMUNICACIONES 2
3 TEMA 6. NET. CONFIGURACION. MODELOS. MODELO LOCAL. TNSNAMES.ORA LISTENER.ORA SECCION PROTOCOLO. SECCION REGISTRO SERVICIO. PARAMETROS DE CONTROL. LISTENER.ORA Y JSERVER. CONTROL DEL LISTENER. SQLNET.ORA CONFIGURACION BASICA NET. DATABASE LINK. Administración Avanzada de Oracle 10g COMUNICACIONES 3
4 ORACLE NET SERVICES. Oracle Net Services proporciona soluciones de conectividad para entornos distribuidos y heterogéneos. Está integrado por: Oracle Net. Listener. Oracle Connection Manager. Herramientas de comunicaciones.» Oracle Net Configuration Assistant.» Oracle Net Manager.» Oracle Enterprise Manager. Administración Avanzada de Oracle 10g COMUNICACIONES 4
5 ORACLE NET. Es el sw que permite establecer y mantener una sesión de red desde una aplicación cliente a un servidor de bd; así como del intercambio de mensajes entre ambos. Es capaz de hacerlo al estar localizado en cada ordenador de la red. Existen distintas tipologías de conexión: Conexiones cliente/servidor (C/S). Conexiones web cliente. Conexiones web cliente sin uso de servidor de aplicaciones (Application Server). Administración Avanzada de Oracle 10g COMUNICACIONES 5
6 ORACLE NET. CLIENTE/SERVIDOR. Oracle Net reside en el cliente y en el servidor. Se sitúa en la capa más alta de protocolos de red, que indica como las aplicaciones acceden a la red y como los datos se dividen en paquetes para su transmisión. Oracle Net interactúa con el protocolo TCP/IP -con o sin SSL- pero también puede trabajar con el protocolo SDP (redes Infiniband ). Oracle Net se compone a su vez de Oracle Net foundation layer (establece y mantiene la conexión) y Oracle protocol support (mapea a protocolos estandar desde la tecnología Oracle Net). Las aplicaciones cliente Java acceden a la bd Oracle empleando además JDBC (Java Database Connectivity Driver). Oracle ofrece dos manejadores JDBC OCI -clientes con instalación local Oracle- y JDBC Thin Driver -clientes sin instalación local Oracle, por ejemplo applets -. Administración Avanzada de Oracle 10g COMUNICACIONES 6
7 ORACLE NET. CLIENTE/SERVIDOR. Administración Avanzada de Oracle 10g COMUNICACIONES 7
8 ORACLE NET. CLIENTE/SERVIDOR. OCI: Oracle Call Interface. SW usado por el cliente para interactuar con el servidor de bd (interfaz entre la aplicación cliente y el lenguaje SQL que comprende el servidor). TTC: Two-Task Common. OPI: Oracle Program Interface. Administración Avanzada de Oracle 10g COMUNICACIONES 8
9 ORACLE NET. CLIENTE/SERVIDOR. Administración Avanzada de Oracle 10g COMUNICACIONES 9
10 ORACLE NET. CLIENTE/SERVIDOR. El manejador JDBC OCI emplea un esquema de comunicaciones similar al estándar C/S. JDBC Thin driver emplea una implementación Java del Oracle Net Foundation Layer llamada JavaNet y una implementación Java de TTC llamada JavaTTC. Administración Avanzada de Oracle 10g COMUNICACIONES 10
11 ORACLE NET. WEB y APP. SERVER. La conexión de aplicaciones web cliente (con o sin Web Application Server) a una bd es similar al caso C/S. Administración Avanzada de Oracle 10g COMUNICACIONES 11
12 ORACLE NET. WEB y APP. SERVER. El protocolo HTTP, Hypertext Transport Protocol permite comunicar entre los navegadores web y los servidores de aplicaciones, estos gestionan datos, controlan el acceso a los mismos y sirven las peticiones de los navegadores. Un servidor de aplicaciones puede soportar aplicaciones Java y servlets también. Administración Avanzada de Oracle 10g COMUNICACIONES 12
13 ORACLE NET. WEB y APP. SERVER. Administración Avanzada de Oracle 10g COMUNICACIONES 13
14 ORACLE NET. WEB SIN APP. SERVER. Es posible acceder desde los clientes web directamente a la bd, sin servidor de aplicaciones, como al usar Java applet. Además la bd puede aceptar conexiones con protocolos como HTTP, FTP o WebDAV (conexiones a Oracle XML DB). Administración Avanzada de Oracle 10g COMUNICACIONES 14
15 ORACLE NET. CONNECTION POOLING. Si se ejecutan múltiples aplicaciones web interactivas, algunas de ellas pueden, en un momento dado, estar inactivas. Connection pooling permite a la bd interrumpir a nivel físico una sesión inactiva, la sesión lógica permanece abierta, y restablecer la conexión física cuando haya alguna petición. Administración Avanzada de Oracle 10g COMUNICACIONES 15
16 LISTENER. En la bd recibe la conexión inicial. Está configurado con una dirección de protocolo, aquellos clientes configurados con esta dirección pueden enviar peticiones al listener. Una vez establecida la conexión, el cliente y la bd comunican directamente entre ellos. Administración Avanzada de Oracle 10g COMUNICACIONES 16
17 ORACLE CONNECTION MANAGER. Permite que múltiples sesiones cliente sean multiplexadas a través de una sola conexión a una bd. Administración Avanzada de Oracle 10g COMUNICACIONES 17
18 OTROS COMPONENTES Oracle Net Configuration Assistant. Permite configurar los componentes básicos de red después de realizar la instalación de bd. Oracle Universal Installer lanza esta herramienta durante la instalación del sistema gestor de bd. En UNIX debe ejecutarse $ORACLE_HOME/bin/netca Oracle Net Manager. Proporciona un entorno integrado de configuración y gestión de Oracle Net Services. En UNIX debe ejecutarse $ORACLE_HOME/bin/netmgr En Oracle 10g, muchas funcionalidades de Net Manager están integradas en Oracle Enterprise Manager. Administración Avanzada de Oracle 10g COMUNICACIONES 18
19 CONCEPTOS BASICOS Administración Avanzada de Oracle 10g COMUNICACIONES 19
20 CONCEPTOS. SERVICIO. Una bd es un servicio desde el punto de vista de los clientes. El servicio está identificado por un nombre de servicio que viene determinado por el parámetro de inicialización SERVICE_NAMES. Por defecto es el nombre global database, compuesto por el nombre de bd (parámetro DB_NAME) y el nombre de dominio (DB_DOMAIN). Los clientes usan el nombre de servicio para identificar la bd a la que acceden. Este parámetro también puede ser modificado dinámicamente mediante ALTER SYSTEM. Administración Avanzada de Oracle 10g COMUNICACIONES 20
21 CONCEPTOS. SERVICIO. La bd puede tener uno o más servicios asociados; así puede ser identificada de distintas formas por clientes diferentes, y un administrador puede limitar recursos del sistema. Administración Avanzada de Oracle 10g COMUNICACIONES 21
22 CONCEPTOS. SERVICIO. La información necesaria para una conexión se almacena en un repositorio (local o centralizado -LDAP-). Administración Avanzada de Oracle 10g COMUNICACIONES 22
23 CONCEPTOS. INSTANCIA. Una base de datos tiene al menos una instancia integrada por un área de memoria llamada System Global Area (SGA) y por procesos Oracle. El nombre de la instancia viene indicado por el parámetro de inicialización INSTANCE_NAME. Por defecto se refiere al Oracle System Identifier (SID) de la instancia. Administración Avanzada de Oracle 10g COMUNICACIONES 23
24 CONCEPTOS. REGISTRO DE SERVICIO. Service registration es una utilidad por la que el proceso PMON automáticamente proporciona información al listener, de forma que listener.ora no precisa ser configurado con información estática tal como: Nombres de servicio para cada instancia de la bd. Nombres de instancia de la bd. Manejadores de servicio ( dispatcher o servidor dedicado) disponible para cada instancia. Dispatcher, instancia e información node load que permite al listener determinar qué dispatcher puede manejar adecuadamente una petición cliente. Si todos los dispatchers están bloqueados, el listener puede habilitar un servidor dedicado para la conexión. Administración Avanzada de Oracle 10g COMUNICACIONES 24
25 CONCEPTOS. REGISTRO DE SERVICIO. Para asegurar que el registro de servicio funciona correctamentem el fichero de parámetros de inicialización debería contener los parámetros: SERVICE_NAMES, para el nombre de servicio de la bd INSTANCE_NAME, para el nombre de la instancia El valor del parámetro SERVICE_NAMES se considera antes que el global database name (compuesto por DB_NAME y DB_DOMAIN) y el valor de INSTANCE_NAME se considera antes que el SID indicado durante la instalación o creación de la bd. Administración Avanzada de Oracle 10g COMUNICACIONES 25
26 CONCEPTOS. REGISTRO DE SERVICIO. Los eventos relacionados con el registro de servicio se almacenan en el fichero listener.log: service_register. Recepción de información de instancia por el listener. service_update. Recepción de información actualizada de una instancia por parte del listener. service_died. El listener ha perdido su conexión con el PMON. Se descarta cualquier información de registro para la instancia, los clientes no podrán conectarse a la istancia hasta un nuevo registro del PMON. Administración Avanzada de Oracle 10g COMUNICACIONES 26
27 CONCEPTOS. CONECTOR. Un cliente usa un descriptor de conexión que indica la localización de la bd y el nombre del servicio de bd. (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=<nombre_host/direccionIP>) (PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=<nombre_de_servicio>))) También puede indicarse la conexión a una instancia específica (Real Application Clusters): (DESCRIPTION=... (INSTANCE_NAME=<nombre_instancia>))) Los manejadores de servicio en el servidor pueden ser un dispatcher (modo servidor compartido) o un proceso servidor dedicado. Administración Avanzada de Oracle 10g COMUNICACIONES 27
28 CONCEPTOS. CONECTOR. Puede suceder que un cliente desee usar un manejador de servicio particular, en este caso debe indicarse en el conector: (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=nombre_servicio) (SERVER=shared/dedicated))) Si no se indica el valor para el parámetro SERVER se asume por defecto la configuración shared server. Si no hay dispatchers disponibles, se usarán servidores dedicados. Administración Avanzada de Oracle 10g COMUNICACIONES 28
29 CONCEPTOS. MAPEOS. El establecimiento de la correspondencia entre el nombre de servicio y su conector es posible mediante repositorios de información que permiten dicho mapeo a través de una naming method : Local Naming. Usa el fichero tnsnames.ora. Directory Naming. Emplea un sistema de directorios LDAP. Easy Connect Naming. No requiere configuración. Permite a los clientes conectar a la bd usando una cadena TCP/IP que incluye el nombre de servidor, un puerto y un nombre de servicio: CONNECT username/password@host[:port][/service_name] External Naming. Emplea un sistema no Oracle. Administración Avanzada de Oracle 10g COMUNICACIONES 29
30 TIPOS DE CONFIGURACION Administración Avanzada de Oracle 10g COMUNICACIONES 30
31 CONFIGURACION. MODELOS. Existen dos modelos de configuración de Oracle Net: Localizado o no centralizado: la información se almacena en un fichero tnsnames.ora local a cada máquina en la red. Centralizado: la información se guarda en un directorio central (LDAP). En la exposición se considera un modelo de configuración no centralizado, donde la información sobre direcciones de red se almacena en el fichero tnsnames.ora de cada sistema. Administración Avanzada de Oracle 10g COMUNICACIONES 31
32 CONFIGURACION. MODELO LOCAL. Existen los siguientes ficheros de configuración: cman.ora... Residente en la máquina donde se ejecuta Oracle Connection Manager. listener.ora... En el servidor de bd. Con infomación sobre protocolo, dirección de escucha, servicios para los que se escucha y parámetros de control. sqlnet.ora... En el cliente y en el servidor bd. Puede contener ruta de conexiones, parámetros de control de acceso a bd, parámetros de Oracle Advanced Security,... tnsnames.ora... En los clientes. Contiene net service names -nombre de servicio asociado a un descriptor de conexión-. Usado en los mapeos. Administración Avanzada de Oracle 10g COMUNICACIONES 32
33 CONFIGURACION. MODELO LOCAL. Los ficheros de configuración residen generalmente en $ORACLE_HOME/network/admin, aunque pueden hacerlo en otros lugares. El orden de búsqueda para sqlnet.ora es: El directorio indicado por la variable TNS_ADMIN El directorio $ORACLE_HOME/network/admin El orden de búsqueda para cman.ora, listener.ora y tnsnames.ora es: El directorio indicado por la variable TNS_ADMIN En UNIX, el directorio global de configuración ( global configuration directory ). El directorio $ORACLE_HOME/network/admin Administración Avanzada de Oracle 10g COMUNICACIONES 33
34 TNSNAMES.ORA Administración Avanzada de Oracle 10g COMUNICACIONES 34
35 TNSNAMES.ORA Contiene nombres de servicio de red, usados al establecer una conexión, de red mapeados a descriptores de conexión. Dichos descriptores contienen la localización de un listener a través de una dirección de protocolo y el nombre de servicio de la bd al que conecta. Por defecto, tnsnames.ora reside en $ORACLE_HOME/network/admin aunque también puede estar en el directorio indicado por la variable de entorno TNS_ADMIN o el global configuration directory. Su sintaxis básica es: nombre_servicio= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=nombre_servicio))) Administración Avanzada de Oracle 10g COMUNICACIONES 35
36 TNSNAMES.ORA nombre_servicio= (DESCRIPTION_LIST= (DESCRIPTION= (ADDRESS=(protocol_address_information)) (ADDRESS=(protocol_address_information)) (ADDRESS=(protocol_address_information)) (CONNECT_DATA= (SERVICE_NAME=service_name))) (DESCRIPTION= (ADDRESS=(protocol_address_information)) (ADDRESS=(protocol_address_information)) (ADDRESS=(protocol_address_information)) (CONNECT_DATA= (SERVICE_NAME=service_name)))) donde ADDRESS define la localización de listener y CONNECT_DATA define el servicio al cual conectar. Administración Avanzada de Oracle 10g COMUNICACIONES 36
37 LISTENER.ORA Administración Avanzada de Oracle 10g COMUNICACIONES 37
38 LISTENER.ORA El listener es un proceso que corre en la bd. Recibe peticiones de conexión de los clientes y gestiona el tráfico de dichas peticiones a la bd. Su configuración se almacena en un fichero llamado listener.ora y sus mensajes se generan en el fichero listener.log Dado que todos los parámetros de configuración tienen valores por defecto, es posible arrancar y usar el listener sin configurar. El listener se llama por defecto LISTENER, no soporta servicios hasta el arranque de la bd, y escucha atendiendo a los siguientes valores: (ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=1521)) El puerto por defecto para conexión al listener es el 1521 (aunque en futuras versiones puede cambiar al 2483, TCP/IP, y 2484, TCP/IP con SSL). Puertos inferiores a 1024 están reservados para su uso por procesos privilegiados. Administración Avanzada de Oracle 10g COMUNICACIONES 38
39 LISTENER.ORA Cada listener está configurado con una o varias direcciones de protocolo, los clientes configurados con una de estas direcciones pueden enviarle peticiones. Una vez recibida la petición, el listener elige un manejador de servicio apropiado para servir la petición y redirige la misma hacia él. Administración Avanzada de Oracle 10g COMUNICACIONES 39
40 LISTENER.ORA El listener determina si un servicio de la bd y sus manejadores de servicio están disponibles mediante el registro del servicio. Durante el mismo, el proceso PMON proporciona al listener información sobre: Nombres de los servicios de bd disponibles. Nombre de la instancia asociada con los servicios. Manejadores de servicio (dispatchers y servidores dedicados) disponibles para la instancia -tipo, dirección de protocolo y carga actual y máxima-. Administración Avanzada de Oracle 10g COMUNICACIONES 40
41 LISTENER.ORA Si el listener no se está ejecutando cuando arranca la instancia, PMON no puede registrar la información de servicio. PMON intenta conectar periódicamente, no obstante, pueden pasar hasta 60 segundos antes de que PMON registre la información tras el arranque del listener. Para iniciar el registro de información inmediatamente tras el arranque del listener debe emplearse la sentencia SQL: ALTER SYSTEM REGISTER; El listener rechaza las peticiones previas al registro. Si la instancia está en modo restringido, PMON ordena al listener bloquear las conexiones y los clientes reciben un error: ORA-12526: TNS:listener: all appropriate instances are in restricted mode ORA-12527: TNS:listener: all appropriate instances are in restricted mode or blocking new connections ORA-12528: TNS:listener: all appropriate instances are blocking new connections Administración Avanzada de Oracle 10g COMUNICACIONES 41
42 LISTENER.ORA Por defecto, PMON registra información del servicio referente al puerto TCP/IP número Para poder usar un puerto distinto debe configurarse el parámetro de inicialización LOCAL_LISTENER En un entorno shared server puede emplearse el atributo LISTENER del parámetro DISPATCHERS en el fichero de inicialización. Como LOCAL_LISTENER y el atributo LISTENER permiten a PMON registrar información del dispatcher con el listener, no es preciso especificar ambos si los valores del listener son los mismos. Por ejemplo, para configurar el listener en el puerto 1421: LOCAL_LISTENER=listener1 DISPATCHERS="(PROTOCOL=tcp)(LISTENER=listener1)" En el tnsnames.ora: listener1=(description=(address=(protocol=tcp)(host= host)(port=1421))) Administración Avanzada de Oracle 10g COMUNICACIONES 42
43 LISTENER.ORA El registro dinámico de servicios no requiere ninguna configuración del fichero listener.ora El listener emplea la información dinámica adquirida mediante el registro dinámico antes de usar la información configurada estáticamente en el fichero listener.ora. Durante la instalación de la bd, Oracle Universal Installer ejecuta el Oracle Net Configuration Assistant; este permite configurar el listener con un nombre y una dirección concreta. También se crea una entrada para escucha del protocolo IPC que se configura de forma automática y sirve a procedimientos externos (escritos en un 3GL que pueden ser llamados desde el código PL/SQL -sólo C-). Administración Avanzada de Oracle 10g COMUNICACIONES 43
44 LISTENER.ORA En la configuración del listener se indica: Nombre. Dirección que acepta peticiones. Servicios para los que escucha (la configuración estática es necesaria si se usa Oracle Enterprise Manager). Parámetros de control. Pueden configurarse múltiples listener, con distintos nombres, en un fichero listener.ora. Sin embargo, se recomienda ejecutar sólo uno por nodo en la mayoría de entornos. SID_NAME (valor del parámetro de inicialización INSTANCE_NAME), GLOBAL_DBNAME (servicio de bd, generalmente en versiones 8.x -combinación de DB_NAME y DB_DOMAIN-) y ORACLE_HOME son parámetros estáticos definibles en listener.ora Administración Avanzada de Oracle 10g COMUNICACIONES 44
45 LISTENER.ORA. SECCION PROTOCOLO. Define las direcciones de las que el listener acepta peticiones. LISTENER_NOMBRE= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521)) (ADDRESS=(PROTOCOL=ipc)(KEY=extproc)))) El parámetro QUEUESIZE permite indicar el número de peticiones concurrentes que puede aceptar el listener via TCP/IP o IPC. Su valor por defecto depende del s.o.. LISTENER_NOMBRE= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host) (PORT=1521)(QUEUESIZE=20))) Administración Avanzada de Oracle 10g COMUNICACIONES 45
46 LISTENER.ORA. SECCION PROTOCOLO. El parámetro RECV_BUF_SIZE permite indicar, en bytes, el tamaño del buffer para recibir operaciones de sesiones (en TCP/IP, TCP/IP with SSL, y SDP). Su valor depende del s.o. LISTENER_NOMBRE = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521) (RECV_BUF_SIZE=11784)) (ADDRESS=(PROTOCOL=ipc)(KEY=extproc)(RECV_BUF_SIZE=11784))) Mediante SEND_BUF_SIZE puede indicarse, en bytes, el tamaño del buffer para enviar operaciones de sesiones (en TCP/IP, TCP/IP with SSL, y SDP). Su valor depende del s.o. LISTENER_NOMBRE=(DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521) (SEND_BUF_SIZE=11280)) (ADDRESS=(PROTOCOL=ipc)(KEY=extproc)(SEND_BUF_SIZE=11280)))) Administración Avanzada de Oracle 10g COMUNICACIONES 46
47 LISTENER.ORA. SECCION REGISTRO SERVICIO. La sección SID_LIST se usa para configurar estáticamente el listener. Requerida por compatibilidad con bbdd Oracle8.0, procedimientos externos y ciertas herramientas de gestión (Oracle Enterprise Manager). En versiones 9i u 8i está infomación se registra dinámicamente al arrancar la instancia. SID_LIST_<nombre_listener>= (SID_LIST= (SID_DESC= (SDU=2085) (GLOBAL_DBNAME=sales.us.acme.com) (ORACLE_HOME=/oracle9i) (SID_NAME=sales)) (SID_DESC= (SID_NAME=plsextproc) (ORACLE_HOME=/oracle9i) (PROGRAM=extproc))) Administración Avanzada de Oracle 10g COMUNICACIONES 47
48 LISTENER.ORA SECCION REGISTRO SERVICIO. Donde: SID_LIST... lista de descripciones. SID_DESC... información de servicio. SDU... Optimizar la transferencia de datos usando un tamaño indicado de session data unit (SDU). GLOBAL_DBNAME... Global database name de la bd (el listener comprueba la igualdad entre el valor de este parámetro y el del parámetro SERVICE_NAME en el descriptor de conexión del cliente). Permite identificar el servicio de bd. ORACLE_HOME... localización del servicio (opcional en UNIX). PROGRAM... Nombre del programa de servicio ejecutable. SID_NAME... SID de la instancia (parámetro INSTANCE_NAME). Administración Avanzada de Oracle 10g COMUNICACIONES 48
49 LISTENER.ORA. PARAMETROS DE CONTROL. LOG_DIRECTORY_<nombre_listener> indica el directorio de destino del fichero de log del listener. Por defecto el directorio $ORACLE_HOME/network/log LOG_FILE_<nombre_listener> indica el nombre del fichero de log para el listener. Por defecto listener.log TRACE_DIRECTORY_<nombre_listener> indica el directorio de destino de los ficheros de traza del listener. Por defecto $ORACLE_HOME/network/trace TRACE_FILE_<nombre_listener> indica el nombre del fichero de traza del listener. Por defecto listener.trc TRACE_LEVEL_<n_listener>. Nivel de detalle de la traza (0, sin traza, a 16, máximo nivel de traza). TRACE_FILELEN_<n_listener>. Tamaño de los ficheros de traza (KB). Al alcanzarlo, traza se escribe en el siguiente fichero. TRACE_FILENO_<n_listener>. Número de ficheros de traza. Administración Avanzada de Oracle 10g COMUNICACIONES 49
50 LISTENER.ORA Y JSERVER. Clientes acceden a aplicaciones Enterprise JavaBeans (EJBs) y Common Object Request Broker Architecture (CORBA), opción Oracle Jserver, en una bd Oracle8i sobre una conexión Inter- Orb Protocol (IIOP). IIOP es una implementación de General Inter-Orb Protocol (GIOP) sobre TCP/IP. Debe configurarse el puerto 2481 para TCP/IP o 2482 para TCP/IP con SSL. listener= (DESCRIPTION_LIST= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=sales1- server)(port=2481)) (PROTOCOL_STACK= (PRESENTATION=giop) (SESSION=raw)))) Administración Avanzada de Oracle 10g COMUNICACIONES 50
51 CONTROL DEL LISTENER. La utilidad para control del listener (Listener Control Utility) permite administrar este componente. La sintaxis es: S.O.> LSNRCTL <sentencia> [nombre_listener] Si no se indica nombre, hace referencia al listener de nombre listener. Para arrancar el listener lsnr: LSNRCTL START lsnr También pueden ejecutarse sentencias en el prompt LSNRCTL (se obtiene tecleando lsnrctl sin argumentos). S.O.> lsnrctl LSNRCTL> START lsnr Administración Avanzada de Oracle 10g COMUNICACIONES 51
52 CONTROL DEL LISTENER. Pueden combinarse distintas órdenes en un fichero de texto y ejecutarlas de la forma: Para parar el listener lsnr: LSNRCTL STOP lsnr Para obtener información: LSNRCTL STATUS lsnr Para comprobar los valores actuales: LSNRCTL SHOW Para activar la traza: lsnrctl trace <nivel> <lsnr> Administración Avanzada de Oracle 10g COMUNICACIONES 52
53 CONTROL DEL LISTENER. Mediante la orden SERVICES se obtiene información sobre los servicios e instancias registradas, y los manejadores asociados a cada instancia. LSNRCTL SERVICES lsnr Administración Avanzada de Oracle 10g COMUNICACIONES 53
54 SQLNET.ORA Administración Avanzada de Oracle 10g COMUNICACIONES 54
55 SQLNET.ORA Los parámetros de configuración para cliente y servidor, perfil, que permiten especificar preferencias de Oracle Net se almacenan en el fichero sqlnet.ora Sus mensajes se generan en el fichero sqlnet.log Permite realizar acciones como: Priorizar modelos de localización (NAMES.DIRECTORY_PATH). Permitir o no el acceso a ciertos clientes. Acceso denegado. TCP.EXCLUDED_NODES=(<dir_IP> <servidor>) Acceso permitido: TCP.INVITED_NODES=(<dir_IP> <servidor>) Comprobar valores anteriores. TCP.VALIDNODE_CHECKING = yes/no Administración Avanzada de Oracle 10g COMUNICACIONES 55
56 SQLNET.ORA Indicar el intervalo, en segundos, que media para el envio de una confirmación para verificar que la conexión está activa. Administración Avanzada de Oracle 10g COMUNICACIONES 56 SQLNET.EXPIRE_TIME Un valor mayor que 0 asegura que no permanecen sesiones abiertas indefinidamente. Si la confirmación encuentra una sesión que ha terminado o que no está en uso, devuelve un error y fuerza al proceso servidor a terminar. Indicar un dominio por defecto. Este se añade automáticamente a cualquier nombre de servicio dado en la cadena de conexión y comparado con los nombres de servicio de tnsnames.ora NAMES.DEFAULT_DOMAIN=<nombre_dominio>
57 SQLNET.ORA Indicar el intervalo, en segundos, para completar una operación de envio a los clientes tras el establecimiento de la conexión (recomendable en entornos donde las conexiones con los clientes suelen verse interrumpidas): SQLNET.SEND_TIMEOUT Si el servidor no puede completar el envío en dicho tiempo, se generan en el fichero sqlnet.log los errores: ORA-12535: TNS:operation timed out y ORA-12608: TNS: Send timeout occurred Administración Avanzada de Oracle 10g COMUNICACIONES 57
58 SQLNET.ORA Indicar el intervalo, en segundos, para el servidor espera por datos de un cliente tras el establecimiento de la conexión (recomendable en entornos donde las conexiones con los clientes suelen verse interrumpidas): SQLNET.RECV_TIMEOUT Si un cliente no envía datos se generan en el fichero sqlnet.log los errores: ORA-12535: TNS:operation timed out y ORA-12609: TNS: Receive timeout occurred Administración Avanzada de Oracle 10g COMUNICACIONES 58
59 SQLNET.ORA Indicar parámetros de control del log : LOG_DIRECTORY_CLIENT. Directorio de destino para el fichero de log (por defecto el directorio de trabajo actual). LOG_FILE_CLIENT. Nombre del fichero de log para el cliente (por defecto sqlnet.log). LOG_DIRECTORY_SERVER. Directorio destino para ficheros de log del servidor (por defecto $ORACLE_HOME/network/log). LOG_FILE_SERVER. No aplicable. Hace referencia al fichero de log del servidor: sqlnet.log Indicar parámetros de traza: TRACE_DIRECTORY_CLIENT. Directorio destino para trazas del cliente, por defecto $ORACLE_HOME/network/trace Administración Avanzada de Oracle 10g COMUNICACIONES 59
60 SQLNET.ORA TRACE_DIRECTORY_SERVER. Directorio destino para trazas del servidor, por defecto $ORACLE_HOME/network/trace TRACE_FILE_CLIENT. Nombre del fichero de traza cliente. Por defecto sqlnet.trc TRACE_FILE_SERVER. Nombre del fichero de traza servidor. Por defecto svr_pid.trc TRACE_FILELEN_CLIENT. Tamaño de los ficheros traza cliente (KB). Al alcanzar el tamaño, la traza se escribe al fichero siguiente. El número de ficheros se indica con TRACE_FILENO_CLIENT TRACE_FILELEN_SERVER. Tamaño de los ficheros traza servidor (KB). Al alcanzar el tamaño, la traza se escribe al fichero siguiente. El número de ficheros se indica con TRACE_FILENO_SERVER TRACE_LEVEL_CLIENT. Nivel de detalle de la traza (0, sin traza, a 16, nivel máximo de traza). TRACE_LEVEL_SERVER. Nivel de detalle de la traza (0, sin traza, a 16, nivel máximo de traza). Administración Avanzada de Oracle 10g COMUNICACIONES 60
61 SQLNET.ORA Para configurar un modelo local o no centralizado, el parámetro NAMES.DIRECTORY_PATH del fichero sqlnet.ora -indica el orden de los métodos de configuración que Oracle Net emplea para resolver los identificadores- debe contener en primer lugar el valor tnsnames. NAMES.DIRECTORY_PATH=(tnsnames) Easy connect naming se configura automáticamente en la instalación, es neceasrio que venga especificado EZCONNECT en NAMES.DIRECTORY_PATH NAMES.DIRECTORY_PATH=(ezconnect, tnsnames) Administración Avanzada de Oracle 10g COMUNICACIONES 61
62 CONFIGURACION BASICA NET Administración Avanzada de Oracle 10g COMUNICACIONES 62
63 CONFIGURACION BASICA NET. Se muestra la forma de intercomunicar una aplicación cliente con una bd a través de una red TCP/IP. Se asume que: Servidor BD y cliente en la misma red. Servidor BD: Instalada bd y TCP/IP. Configurado un listener. Cliente: Instalado Oracle Client y TCP/IP. Administración Avanzada de Oracle 10g COMUNICACIONES 63
64 CONFIGURACION BASICA NET. 1.- Confirmar conexión de red. Realizar un loopback test para comprobar que el servidor de bd puede comunicar con si mismo ping <nombre_maquina> o ping <direccion_ip> Comprobar que existe comunicación entre el cliente y la bd (por ejemplo, con ping ). Administración Avanzada de Oracle 10g COMUNICACIONES 64
65 CONFIGURACION BASICA NET. 2.- Arrancar el listener y la bd. Desde s.o.: lsnrctl LSNRCTL> start <nombre_listener> Nombre_listener debe estar definido en el fichero listener.ora. Debe aparecer un mensaje indicando que el listener ha arrancado. Arrancar la bd. sqlplus /nolog SQL> CONNECT / as sysdba SQL> STARTUP Administración Avanzada de Oracle 10g COMUNICACIONES 65
66 CONFIGURACION BASICA NET. Comprobar que el service registration de la bd ha tenido lugar de forma correcta: LSNRCTL> SERVICES [nombre_listener] La sentencia SERVICES muestra los servicios soportados por la bd y los manejadores de servicio disponibles, al menos uno. Administración Avanzada de Oracle 10g COMUNICACIONES 66
67 CONFIGURACION BASICA NET. SERVICIOS. Administración Avanzada de Oracle 10g COMUNICACIONES 67
68 CONFIGURACION BASICA NET. SERVICIOS. Administración Avanzada de Oracle 10g COMUNICACIONES 68
69 CONFIGURACION BASICA NET. SERVICIOS. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=net))) Services Summary... Service "sales.us.acme.com" has 1 instance(s). Instance "sales", status READY, has 3 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER "D000" established:0 refused:0 current:0 max:10000 state:ready DISPATCHER <machine: sales-server, pid: 1689> (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=52414))... Service "hr.us.acme.com" has 1 instance(s). Instance "hr", status READY, has 2 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER "D000" established:0 refused:0 current:0 max:10000 state:ready DISPATCHER <machine: sales-server, pid: 11326> (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=58361)) The command completed successfully Administración Avanzada de Oracle 10g COMUNICACIONES 69
70 CONFIGURACION BASICA NET. 3.- Configurar el cliente para usar un nombre de servicio de red ( net service name ). El nombre de servicio se define durante la creación de la bd. Se trata de un nombre para el servicio asociado a un descriptor de conexión. El cliente, para conectarse, indicará un nombre de usuario, una contraseña y una cadena de conexión o nombre de servicio (reside en el fichero tnsnames.ora -modificable manualmente, con NetManager, o con NetCAssistant-). Por ejemplo: sales= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=sales.us.acme.com))) Administración Avanzada de Oracle 10g COMUNICACIONES 70
71 CONFIGURACION BASICA NET. El descriptor de conexión contiene: La ruta de red hacia la bd, incluyendo la localización del listener a través de un protocolo -sección ADDRESS-. Nombre de servicio ( service name ) - a partir de bd versión 8i o 9i-. Puede indicarse una instancia con INSTANCE_NAME. sales= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=sales.us.acme.com) (INSTANCE_NAME=sales))) Administración Avanzada de Oracle 10g COMUNICACIONES 71
72 CONFIGURACION BASICA NET. El método easy connect naming hace innecesaria la definición de servicios en tnsnames.ora, al permitir indicar directamente al cliente un puerto y nombre de servicio de conexión (Por defecto, el nombre de servicio usado es ORCL): CONNECT username/password@[//]host[:port][/service_name] Por ejemplo: CONNECT username/password@sales-server :1521/sales.us.acme.com Este cadena se convierte en el descriptor: (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server)(PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=sales.us.acme.com))) Para conexiones URL o JDBC: CONNECT username/password@[//][host][:port][/service_name] Administración Avanzada de Oracle 10g COMUNICACIONES 72
73 CONFIGURACION BASICA NET. 4.- Conectar a bd. Desde el cliente: Arrancar SQL*Plus: sqlplus Conectar a bd: CONNECT username/password@nombre_servicio_red Administración Avanzada de Oracle 10g COMUNICACIONES 73
74 DATABASE LINK Administración Avanzada de Oracle 10g COMUNICACIONES 74
75 DATABASE LINK. Es una conexión entre dos bbdd que permite acceder a ellas como una única bd; así como acceder de forma remota. Define una vía de comunicación unidireccional, en un solo sentido, cuya definición se almacena en diccionario de datos. Pueden ser públicos o privados. Generalmente tienen el mismo nombre que el global database name de la bd remota que referencia. Administración Avanzada de Oracle 10g COMUNICACIONES 75
76 TEMA 7. ARQUITECTURA SHARED SERVER. Administración Avanzada de Oracle 10g SHARED SERVER. 76
77 TEMA 7. SHARED SERVER. MANEJADORES DE SERVICIO. SERVIDOR DEDICADO. SERVIDOR COMPARTIDO. DISPATCHER. VENTAJAS SHARED SERVER. DISPATCHER. NUMERO DE DISPATCHER. CONFIGURACION DE DISPATCHER. PROCESOS SERVIDOR COMPARTIDOS. AJUSTE DEL NUMERO SHARED SERVER. OTROS PARAMETROS. CONNECTION POOLING. SERVICIOS Y DISPATCHER. AJUSTE DEL NUMERO DISPATCHERS. REDUCIR CONTENCION. DISPATCHERS. DISPATCHERS. CLAUSULA INDEX. Administración Avanzada de Oracle 10g SHARED SERVER. 77
78 TEMA 7. SHARED SERVER. VERIFICAR CONFIGURACION. PARAR DISPATCHERS. FORZAR CONFIGURACION. COMPARTIDA. DEDICADA. DESHABILITAR MODO SERVIDOR COMPARTIDO. VISTAS. Administración Avanzada de Oracle 10g SHARED SERVER. 78
79 MANEJADORES DE SERVICIO. Para cada instancia existen unos manejadores de servicio o puntos de conexión a la bd. Estos pueden ser: Un servidor dedicado, o Un dispatcher, caso de servidor compartido. Administración Avanzada de Oracle 10g SHARED SERVER. 79
80 MANEJADORES DE SERVICIO. El tipo de configuración se determinará en el servidor de bd. Respecto al cliente puede suceder que este desee usar un manejador de servicio particular, en este caso el tipo a utilizar se indicaría en el conector: (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=nombre_servicio) (SERVER=shared/dedicated))) Si no se indica el valor para el parámetro SERVER se asume por defecto la configuración shared server. Si no hay dispatchers disponibles, se usarán servidores dedicados. Administración Avanzada de Oracle 10g COMUNICACIONES 80
81 SERVIDOR DEDICADO. El listener arranca un proceso dedicado exclusivo para cada petición cliente, que permanece hasta la finalización de la misma. Pueden darse dos opciones (seleccionada en función del S.O. y el protocolo): El servidor dedicado hereda la petición de conexión del listener. El servidor dedicado informa al listener sobre su dirección de escucha, esta se pasa al cliente. Se cierra la conexión con el listener y el cliente se conecta al servidor dedicado directamente. Administración Avanzada de Oracle 10g SHARED SERVER. 81
82 SERVIDOR DEDICADO. Administración Avanzada de Oracle 10g SHARED SERVER. 82
83 SERVIDOR DEDICADO. Administración Avanzada de Oracle 10g SHARED SERVER. 83
84 SERVIDOR DEDICADO. En ciertas situaciones es preciso conectar obligatoriamente usando servidores dedicados y ha de indicarse de forma explícita: Trabajos batch (en general aquellos en los que no es posible ningún tiempo de espera). Al usar Recovery Manager (RMAN) para hacer copias, restaurar o recuperar una bd. Administración Avanzada de Oracle 10g SHARED SERVER. 84
85 SERVIDOR COMPARTIDO. La arquitectura de servidor compartido usa uno o varios procesos dispatcher para redirigir las conexiones cliente a una cola de peticiones común. Un proceso servidor compartido desocupado extrae la petición de esta cola. Permite que un pequeño número de procesos servidor atienda un gran número de clientes, reduciendo así los recursos de sistema necesarios respecto a cuando se usan servidores dedicados. La configuración servidor compartido es recomendable cuando existan una gran número de conexiones puesto que reduce las necesidades de memoria. El proceso listener redirige las peticiones al dispatcher. Al llegar una petición, el listener la conduce al dispatcher, o indica al cliente la dirección de protocolo del dispatcher -el cliente termina la sesión con el listener y establece una con el dispatcher -. Administración Avanzada de Oracle 10g SHARED SERVER. 85
86 SERVIDOR COMPARTIDO. Administración Avanzada de Oracle 10g SHARED SERVER. 86
87 SERVIDOR COMPARTIDO: DISPATCHER. Administración Avanzada de Oracle 10g SHARED SERVER. 87
88 SERVIDOR COMPARTIDO: DISPATCHER. Un dispatcher admite múltiples conexiones cliente a la vez. Cada una de ellas se asocia a un circuito virtual, una porción de memoria compartida usada por el dispatcher para las peticiones y respuestas a los clientes. Administración Avanzada de Oracle 10g SHARED SERVER. 88
89 SERVIDOR COMPARTIDO: DISPATCHER. La configuración en servidor compartido es compatible con otras soluciones aportadas por Oracle Net y conjuntamente permiten reducir la sobrecarga de los servidores de bd (como, por ejemplo, Oracle Connection Manager). Administración Avanzada de Oracle 10g SHARED SERVER. 89
90 VENTAJAS SHARED SERVER. Permite maximizar el uso de los recursos del sistema y mejorar el rendimiento, incrementando el número de clientes que simultáneamente pueden estar conectados a la bd. Reduce el número de procesos que corren sobre la instancia. Incrementa el número de posibles usuarios. Disminuye el número de procesos servidor ociosos. Reduce el uso de memoria y la sobrecarga del sistema. La configuración en modo compartido resulta adecuada en sistemas con muchos usuarios OLTP realizando transacciones intermitentes o aquellos sistemas con una alta tasa de conexión a la bd (siempre hay un proceso dispatcher listo para gestionar la petición entrante). Administración Avanzada de Oracle 10g SHARED SERVER. 90
91 DISPATCHER. El número de procesos dispatcher arrancados con la instancia se controla con el parámetro de inicialización DISPATCHERS. Este número depende de la bd, del límite impuesto por s.o., del número de conexiones para cada proceso y del número de conexiones requeridas para cada protocolo. Los procesos dispatcher y servidores compartidos pueden arrancarse además con la sentencia ALTER SYSTEM sin necesidad de rearrancar la instancia. Un dispatcher se crea automáticamente, para TCP/IP, cuando se elige el modo servidor compartido (SHARED_SERVERS mayor que 0) sin especificar el parámetro dispatchers, es equivalente a tener en el fichero de inicializacion: dispatchers="(protocol=tcp)" Administración Avanzada de Oracle 10g SHARED SERVER. 91
92 NUMERO DE DISPATCHER. Una vez conocido el número de posibles conexiones por proceso de s.o. puede calcularse el número inicial de dispatchers a crear en el arranque: Número de dispatchers = CEIL ( nº máx. sesiones concurrentes / conexiones por dispatcher ) Es necesario tener en cuenta que tras arrancar la instancia pueden arrancarse más procesos si son necesarios. Configurar demasiados dispatcher puede afectar a la productividad de la bd. Administración Avanzada de Oracle 10g SHARED SERVER. 92
93 CONFIGURACION DE DISPATCHER. Configuración Típica. DISPATCHERS="(PROTOCOL=TCP) (DISPATCHERS=2) DISPATCHERS= (PROTOCOL=IPC) (DISPATCHERS=1)" Forzar los puertos usados. DISPATCHERS="(ADDRESS=(PROTOCOL=TCP)(PORT=5000))" DISPATCHERS="(ADDRESS=(PROTOCOL=TCP)(PORT=5001))" Forzar las direcciones IP usadas (las direcciones IP deben ser direcciones válidas para el host donde está la instancia). DISPATCHERS="(ADDRESS=(PROTOCOL=TCP)(HOST= ))(DISPATCHERS=2)" Administración Avanzada de Oracle 10g SHARED SERVER. 93
94 PROCESOS SERVIDOR COMPARTIDOS. La configuración de servidor compartido se habilita asignando al parámetro de inicialización SHARED_SERVERS un valor mayor que cero o asignándole un valor con ALTER SYSTEM. No es necesario ajustar ningún otro parámetro. Como esta configuración requiere al menos un dispatcher, se crea uno. Por compatibilidad, si se incluye el parámetro DISPATCHERS y se le da un valor, se habilita SHARED_SERVERS -con un valor por defecto de 1-. El valor indicado por SHARED_SERVERS es el mínimo a crear cuando arranca la instancia, tras el arranque la gestión de su número es dinámica y la lleva a cabo Oracle SHARED_SERVERS = <número> Administración Avanzada de Oracle 10g SHARED SERVER. 94
95 PROCESOS SERVIDOR COMPARTIDOS. Si la carga del sistema decrece, se mantiene este mínimo por lo que no debe asignarse un valor demasiado alto. Tanto el número de DISPATCHERS como de SHARED_SERVERS pueden modificarse dinámicamente. Es necesario el privilegio ALTER SYSTEM. Administración Avanzada de Oracle 10g SHARED SERVER. 95
96 PROCESOS SERVIDOR COMPARTIDOS. El número de shared servers en un momento determinado de la operación de la bd no puede fijarse -sólo el máximo y el mínimo son definibles-. Los shared servers se crean dinámicamente bajo el control automático de la arquitectura shared server de la instancia Oracle. Así, no se necesita ni se puede configurar el número de ellos en ningún momento. Conforme la carga se incrementa, por ejemplo al aumentar el número de consultas/ddls/dmls que los clientes ejecutan, la instancia Oracle incrementa el número de shared servers también -hasta el límite fijado por MAX_SHARED_SERVERS-. En el caso de que la carga descienda, los shared servers son eliminados automáticamente por la instancia. Administración Avanzada de Oracle 10g SHARED SERVER. 96
97 AJUSTE DEL NUMERO SHARED SERVER. El incremento de tiempos de espera en las respuestas indica contención para los shared servers. La vista V$QUEUE contiene estadísticas sobre la actividad de la cola de peticiones a los shared servers (vista accesible sólo a SYS y usuarios con el privilegio SELECT ANY TABLE como SYSTEM). En particular, la columna WAIT muestra el tiempo total de espera, en centésimas de segundo, para las peticiones que han estado en cola y TOTALQ muestra el número total de peticiones que han estado alguna vez en cola. Para monitorizar sus valores puede emplearse la sentencia: SELECT DECODE(TOTALQ, 0, 'No Requests', WAIT/TOTALQ ' CENTESIMAS SEGUNDO') "TIEMPO MEDIO DE ESPERA POR PETICION" FROM V$QUEUE WHERE TYPE = 'COMMON'; Administración Avanzada de Oracle 10g SHARED SERVER. 97
98 AJUSTE DEL NUMERO SHARED SERVER. También puede determinarse cuántos shared servers están ejecutándose en un instante: SELECT COUNT(*) "PROCESOS SHARED SERVER FROM V$SHARED_SERVER WHERE STATUS!= 'QUIT'; Si se detecta contención en los shared servers, debe en primer lugar comprobarse que no hay contención en memoria -examinando la shared pool y la large pool -. En última instancia podrían añadirse más recursos actuando sobre los parámetros: MAX_DISPATCHERS MAX_SHARED_SERVERS DISPATCHERS SHARED_SERVERS Administración Avanzada de Oracle 10g SHARED SERVER. 98
99 CAMBIAR NUMERO SHARED SERVER. Tras arrancar la instancia, puede modificarse el número mínimo de procesos shared server mediante la sentencia ALTER SYSTEM. Oracle elimina los servidores desocupados cuando hay más que el límite mínimo especificado. Si SHARED_SERVERS es 0, Oracle elimina todos los servidores actuales cuando se desocupan y no arranca ninguno hasta que se incrementa el valor de SHARED_SERVERS. Por ejemplo, para fijar el mínimo de procesos shared server a cuatro: ALTER SYSTEM SET SHARED_SERVERS = 4; Administración Avanzada de Oracle 10g SHARED SERVER. 99
100 OTROS PARAMETROS. SHARED_SERVER_SESSIONS. Parámetro modificable con ALTER SYSTEM que indica el número total de sesiones concurrentes de usuario permitidas en arquitectura shared server. Si se indica, su valor debe ser menor que SESSIONS. Parámetros que también pueden requerir ajuste son: LARGE_POOL_SIZE. Tamaño en bytes de la pila large pool, mínimo de 300k. Es modificable con ALTER SYSTEM. SESSIONS. Parámetro estático, especifica el número máximo de sesiones que es posible crear en el sistema; dado que cada conexión requiere una sesión, este parámetro determina el número máximo de usuarios concurrentes en la bd. Administración Avanzada de Oracle 10g SHARED SERVER. 100
101 OTROS PARAMETROS. CIRCUITS. Parámetro modificable con ALTER SYSTEM que indica número total de circuitos virtuales disponibles para sesiones de red. Está relacionado con los requerimientos de SGA y no es necesario indicarlo a menos que se quiera limitar el número de circuitos. Un circuito virtual es una porción de memoria compartida usada por el dispatcher para las conexiones cliente (peticiones/respuestas). El dispatcher coloca un circuito virtual en una cola común cuando llega una petición; un servidor compartido ocioso coge dicho circuito, sirve la petición, y enlaza el circuito antes de intentar recuperar otro. Administración Avanzada de Oracle 10g SHARED SERVER. 101
102 OTROS PARAMETROS. MAX_DISPATCHERS (obsoleto). Parámetro modificable con ALTER SYSTEM que indica el máximo número de procesos dispatcher permitidos a la vez. Su valor debe ser mayor o igual que el número de dispachers indicados por DISPATCHERS y menor que el número de procesos indicados por PROCESSES. Se mantiene por compatibilidad con versiones anteriores. MAX_SHARED_SERVERS. Parámetro modificable con ALTER SYSTEM que indica el número máximo de procesos de servidor compatido ( shared server ) simultáneos. Si ocurren con demasiada frecuencia deadlocks, debe incrementarse. Su valor debe ser mayor o igual que el número de dispachers indicados por SHARED_SERVERS y menor que el número de procesos indicados por PROCESSES. Administración Avanzada de Oracle 10g SHARED SERVER. 102
103 CONNECTION POOLING. Esta utilidad permite reducir el número de conexiones físicas de red a un dispatcher al compartir un conjunto de conexiones entre los procesos cliente. Se configura usando el atributo POOL del parámetro DISPATCHERS y los atributos opcionales CONNECTIONS (CON o CONN), SESSIONS (SES o SESS) y TICKS (TIC o TICK). CONNECTIONS... Máximo número de conexiones de red permitidas por dispatcher. Valor por defecto dependiente del s.o. TICKS... Duración de network tick en segundos (por defecto 1). Es un timeout del Connection Pool. POOL... Activa Connection Pooling (valores YES -activado-, NO -desactivado-, IN -conexiones entrantes- y OUT -conexiones salientes-). Por defecto no está activado. SESSIONS... Número máximo de sesiones de red permitidas por dispatcher (valor por defecto dependente del s.o.). Administración Avanzada de Oracle 10g SHARED SERVER. 103
104 CONNECTION POOLING. Suponiendo un sistema que puede soportar hasta 950 conexiones por proceso y que existen 4000 usuarios conectados al tiempo a través de SSL y 2500 sesiones concurrentes a través de TCP/IP con SSL, serían necesarios 5 dispatchers para TCP/IP y 3 más para TCP/IP con SSL: DISPATCHERS="(PROTOCOL=tcp)(DISPATCHERS=5)" DISPATCHERS="(PROTOCOL=tcps)(DISPATCHERS=3)" Si los clientes están frecuentemente inactivos y un dispatcher puede gestionar 4000 sesiones TCP/IP o 2500 sesiones TCP/IP con SSL, podría optarse por la configuración: DISPATCHERS="(PROTOCOL=tcp)(DISPATCHERS=1)(POOL=on)(TICK=1) (CONNECTIONS=950)(SESSIONS=4000)" DISPATCHERS="(PROTOCOL=tcps)(DISPATCHERS=1)(POOL=on)(TICK=1) (CONNECTIONS=950)(SESSIONS=2500)" Administración Avanzada de Oracle 10g SHARED SERVER. 104
105 SERVICIOS Y DISPATCHER. Dado que una bd puede estar representada por múltiples nombres de servicio, un conjunto de dispatchers pueden habilitarse para servir exclusivamente peticiones a un servicio particular (e incluso asignar mayores recursos a las mismas). SERVICE_NAMES=CURSOxx INSTANCE_NAME=CURSOxx DISPATCHERS="(PROTOCOL=tcp)" DISPATCHERS="(PROTOCOL=tcp)(SERVICE=ADMINCURSO)" En el ejemplo anterior hay dos dispatchers, el primero sirve peticiones para clientes accediendo al servicio CURSOxx, el otro sólo para clientes accediendo al servicio ADMINCURSO. Administración Avanzada de Oracle 10g SHARED SERVER. 105
106 AJUSTE DEL NUMERO DISPATCHERS. V$DISPATCHER proporciona información general sobre los procesos dispatcher. V$DISPATCHER_RATE muestra estadísticas y contiene los valores actuales (prefijo CUR_), medios (prefijo AVG_) y máximos (prefijo MAX_). Es necesario comparar los valores actuales con los máximos, si aquellos se acercan a los valores medios (AVG_), están alejados de los máximos (MAX_) y el sistema proporciona una respuesta adecuada en tiempo el ajuste es el correcto. Si las tasas actuales y medias están alejadas de los máximos, habrá que reducir el número de dispatchers. Si aquellas están cerca de los máximos, se podrían añadir dispatchers. V$DISPATCHER_RATE debería examinarse durante periodos de carga máxima y mínima del sistema para obtener información exhaustiva a partir de la cual realizar el ajuste. Administración Avanzada de Oracle 10g SHARED SERVER. 106
107 REDUCIR CONTENCION. DISPATCHERS. Si se determina que la carga de los procesos dispatcher es baja, debe reducirse el número de procesos. Si la carga es alta, puede mejorarse la productividad de varias formas: Habilitar Connection Pooling. Habiltar multiplexado ( Connection Manager ). Arrancar más procesos dispatcher. Para modificar el número de procesos se usa la sentencia ALTER SYSTEM. Es importante observar que su número NO varía dinámicamente. Cuando se reduce, puede hacerse hasta el número indicado en DISPATCHERS. ALTER SYSTEM SET DISPATCHERS = '(PROTOCOL=TCP)(DISPATCHERS=5)', '(PROTOCOL=TCPS)(DISPATCHERS=2)'; Administración Avanzada de Oracle 10g SHARED SERVER. 107
108 DISPATCHERS. CLAUSULA INDEX. INDEX. Este parámetro se usa en ALTER SYSTEM SET DISPATCHERS para indicar que dispatcher quiere modificarse (se ignora si se indica en el fichero de parámetros). Señala el orden en el que se inicializaron, su rango oscila entre 0 (el primer proceso dispatcher ) a uno menos al número total de dispatchers definidos. Por ejemplo, si se indican 3 dispatchers en el fichero de parametros, para modificar el tercero debe indicarse INDEX=2 en la sentencia ALTER SYSTEM (consultar vistas v$dispatcher, observar la columna conf_indx, y v$dispatcher_config). Si en el fichero de inicialización se indica: dispatchers = "(ADDRESS=(PROTOCOL=TCP) (host=host)(port=5100))" dispatchers = "(ADDRESS=(PROTOCOL=TCP) (host=host)(port=2480))" Administración Avanzada de Oracle 10g SHARED SERVER. 108
109 DISPATCHERS. CLAUSULA INDEX. Ejecutando lsnrctl services (lsnrctl services listener_v9205): Service "v9205" has 2 instance(s). Instance "v9205", status UNKNOWN, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 LOCAL SERVER Instance "v9205", status READY, has 3 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER "D001" established:0 refused:0 current:0 max:1002 state:ready DISPATCHER <machine: INDL040AD, pid: 840> (ADDRESS=(PROTOCOL=tcp)(HOST=indl040ad.idc.oracle.com)(PORT=248 0)) "D000" established:0 refused:0 current:0 max:1002 state:ready DISPATCHER <machine: INDL040AD, pid: 2280> (ADDRESS=(PROTOCOL=tcp)(HOST=indl040ad.idc.oracle.com)(PO RT=5100)) The command completed successfully Administración Avanzada de Oracle 10g SHARED SERVER. 109
110 DISPATCHERS. CLAUSULA INDEX. Asignemos ahora el puerto 3500 al dispatcher D000's: SQL> alter system shutdown immediate 'D000'; System altered. SQL> alter system set DISPATCHERS='(ADDRESS= PROTOCOL=TCP)(HOST=indl040ad)(PORT= 3500))(INDEX = 0)'; System altered. SQL> alter system register; System altered. Nota: Indicando REGISTER, el PMON registra la instancia con los listeners inmediatamente; en caso contrario los clientes pueden no acceder a los servicios temporalmente. Nota: También podría añadirse un dispatcher con ALTER SYSTEM indicando INDEX=3. Administración Avanzada de Oracle 10g SHARED SERVER. 110
111 DISPATCHERS. CLAUSULA INDEX. Ejecutando lsnrctl services de nuevo: Service "v9205" has 2 instance(s). Instance "v9205", status UNKNOWN, has 1 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 LOCAL SERVER Instance "v9205", status READY, has 3 handler(s) for this service... Handler(s): "DEDICATED" established:0 refused:0 state:ready LOCAL SERVER "D001" established:0 refused:0 current:0 max:1002 state:ready DISPATCHER <machine: INDL040AD, pid: 840> (ADDRESS=(PROTOCOL=tcp)(HOST=indl040ad.idc.oracle.com)(PORT=248 0)) "D000" established:0 refused:0 current:0 max:1002 state:ready DISPATCHER <machine: INDL040AD, pid: 2280> (ADDRESS=(PROTOCOL=tcp)(HOST=indl040ad.idc.oracle.com)(PO RT=3500)) The command completed successfully Administración Avanzada de Oracle 10g SHARED SERVER. 111
112 VERIFICAR CONFIGURACION. Al usar shared server, debe arrancarse en primer lugar el listener y después la bd. Puede verificarse el estado del dispatcher ejecutando: lsnrctl services Para verificar que las conexiones realizadas están usando servidores compartidos debe consultarse la vista V$CIRCUIT (habrá una entrada por cada conexión de servidor compartido). Select dispatcher, circuit, server, status from v$circuit; Administración Avanzada de Oracle 10g SHARED SERVER. 112
113 PARAR DISPATCHERS. Es posible parar procesos específicos al estar identificados por un nombre de la forma Dnnn -los procesos background correspondientes se identifican de la forma Dnnn-. SELECT NAME, NETWORK FROM V$DISPATCHER; NAME NETWORK D000 (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=3499)) D001 (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=3531)) D002 (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=3532)) Para parar el dispatcher D002: ALTER SYSTEM SHUTDOWN IMMEDIATE 'D002'; Administración Avanzada de Oracle 10g SHARED SERVER. 113
114 PARAR DISPATCHERS. La claúsula IMMEDIATE permite parar el dispatcher, no aceptando nuevas conexiones y terminando inmediatamente las existentes. Posteriormente el proceso acaba. Si no se indica IMMEDIATE, el proceso dispatcher espera hasta que todos sus usuarios se desconecten antes de finalizar. Administración Avanzada de Oracle 10g SHARED SERVER. 114
115 FORZAR CONFIGURACION COMPARTIDA. Si está configurado shared server y llega una conexión cuando no hay dispatcher registrados, las peticiones pueden ser manejadas por un proceso servidor dedicado (configurado en listener.ora). Si se desea que un cierto cliente use siempre un dispatcher, debe indicarse (server=shared) en el descriptor de conexión. Si no hay un dispatcher disponible, se rechaza la conexión del cliente. sales= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=servicio) (SERVER=shared))) Administración Avanzada de Oracle 10g SHARED SERVER. 115
116 FORZAR CONFIGURACION DEDICADA. En ciertas ocasiones, interesa que un cliente se conecte a una instancia usando un servidor dedicado -como al ejecutar un trabajo batch, o al usar Recovery Manager para copiar, recuperar o restaurar una bd-. Debe hacerse una conexión mediante un servicio de red configurado como servidor dedicado: Bien el servicio contiene la clausula SERVER=DEDICATED. sales= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=servicio)(SERVER=dedicated))) Administración Avanzada de Oracle 10g SHARED SERVER. 116
117 FORZAR CONFIGURACION DEDICADA. Bien el fichero sqlnet.ora del cliente debe contener la variable USE_DEDICATED_SERVER=on -añade (server=dedicated) a la sección CONNECT_DATA del descriptor que el cliente use, el valor es sobreescrito, incluso si está configurado el modo servidor compartido-. Administración Avanzada de Oracle 10g SHARED SERVER. 117
118 FORZAR CONFIGURACION. La instancia Oracle sólo proporciona la forma de limitar el número total de sesiones que pueden establecerse, como un conjunto, pero no deja limitar de forma específica sesiones dedicadas o sesiones compartidas como tales. Para limitar el número total de sesiones que pueden establecerse, puede usarse el parámetro SESSIONS en el fichero de parámetros de inicialización. Administración Avanzada de Oracle 10g SHARED SERVER. 118
119 DESHABILITAR MODO SERVIDOR COMPARTIDO. Puede hacerse asignando un valor cero a SHARED_SERVERS. Ningún cliente más se conecta, sin embargo Oracle retiene algunos servidores compartidos hasta que todas las conexiones en este modo se cierran (en cantidad igual al menor de los parámetros SHARED_SERVERS o MAX_SHARED_SERVERS). Si SHARED_SERVERS y MAX_SHARED_SERVERS son ambos puestos a cero, todos los servidores compartidos finalizan y las peticiones de clientes serán encoladas hasta que el valor de cualquiera de dichos parámetros se eleve de nuevo. Una vez todos los clientes hayan desconectado, para eliminar los dispatchers debe indicarse: ALTER SYSTEM SET DISPATCHERS = ''; Administración Avanzada de Oracle 10g SHARED SERVER. 119
120 VISTAS. V$CIRCUIT... Circuitos virtuales -conexiones de usuario a la bd a traves de dispatchers y servidores. V$DISPATCHER... Información sobre los procesos dispatcher (nombre,estado, estadísticas,...). V$DISPATCHER_CONFIG... Configuración de los procesos dispatcher. V$DISPATCHER_RATE... Estadísticas para dispatcher. V$QUEUE... Información sobre las colas de mensaje de los servidores compartidos. V$SHARED_SERVER... Información de procesos sharedserver. V$SHARED_SERVER_MONITOR... Información para ajuste de shared server. V$SGA... Información sobre system global area (SGA). V$SGASTAT... Información estadística de la SGA. V$SHARED_POOL_RESERVED Administración Avanzada de Oracle 10g SHARED SERVER. 120
121 TEMA 8. ARCHIVADO DE BASE DE DATOS. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 121
122 TEMA 8. ARCHIVADO. MODOS DE FUNCIONAMIENTO DE LA BD. MODOS NOARCHIVELOG Y ARCHIVELOG. REDO LOG ARCHIVADO. INFORMACION DE ARCHIVADO. MODO DE ARCHIVADO INICIAL. CAMBIO A MODO ARCHIVELOG. ARCHIVELOG. ARCHIVADO MANUAL. DESTINO DE ARCHIVADO. FALLOS EN DESTINO. CONTROL DE PROCESOS ARCn. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 122
123 TEMA 8. ARCHIVADO. INFORMACION PROCESO ARCHIVADO. FLASH RECOVERY AREA Y ARCHIVELOG. CAMBIO A MODO NOARCHIVELOG. VISTAS. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 123
124 MODOS DE FUNCIONAMIENTO DE BD. La bd puede funcionar en dos modos distintos: modo noarchivelog y modo archivelog. Ambos se distinguen por el manejo que se hace de los redo log en línea cuando se completa el llenado de un grupo y se produce el log switch. La elección de uno u otro modo depende de las exigencias en cuanto a disponibilidad y capacidad de recuperación necesarias en nuestra operación diaria de la bd. Si no se puede permitir la pérdida de datos en caso de fallo en disco o fichero y es necesaria una actividad continua de la bd, servicio 24x7, es aconsejable el funcionamiento en modo archivelog. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 124
125 MODO NOARCHIVELOG. En este modo la bd está protegida contra el fallo de instancia; pero si se produce un fallo en disco o en fichero, sólo puede recuperarse hasta la copia completa, y consistente, más reciente. Está desactivado el archivado de los redo log en línea. Cuando se completa el llenado de un grupo y se produce el log switch, este es reutilizado por el LGWR. Deben hacerse periódica y frecuentemente copias completas y coherentes de la bd (con la bd cerrada consistentemente). Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 125
126 MODO ARCHIVELOG. Se archivan los redo log en línea. Cuando se completa el llenado de un grupo, este NO es reutilizado por el LGWR hasta que se archiva. Pueden usarse copias realizadas mientras la base de datos está abierta y en funcionamiento. Permite recuperar todas las transacciones validadas ( commit ) en caso de fallo en disco o de sistema operativo -se recupera la bd al momento actual-. Es aconsejable en el caso de no poder permitir ningún tipo de pérdida de datos. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 126
127 MODO ARCHIVELOG. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 127
128 REDO LOG ARCHIVADO. Se llama redo log archivado al conjunto de ficheros de redo log archivados, que son copia de ficheros pertenecientes a un grupo de redo log -escritos estos al completo y en línea- de la base de datos. Este conjunto de ficheros archivados se escribe en un destino fuera de línea. Al proceso de copia se le denomina proceso de archivado y se ocupa del mismo el proceso archiver (ARCn). Este proceso copia los ficheros de redo log a un dispositivo determinado tras cada log switch. El proceso log writer (LGWR) no puede reutilizar ni sobreescribir un grupo de redo log hasta que ha sido archivado. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 128
129 REDO LOG ARCHIVADO. Una instancia puede tener hasta diez procesos ARCn (de ARC0 a ARC9). EL proceso log writer (LGWR) arranca un nuevo proceso ARCn cuando el número de procesos de archivado es insuficiente, este hecho se registra en el fichero de alertas (alert). La copia incluye las entradas de redo del fichero en línea y mantiene el número de secuencia único de log del grupo. El proceso descrito sólo tiene lugar si la bd está en modo ARCHIVELOG y el modo de archivado automático está activado. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 129
130 INFORMACION DE ARCHIVADO. La orden de SQL*Plus ARCHIVE LOG LIST se emplea, entre otras cosas, para mostrar información de archivado para una determinada instancia. Modo de operación: ARCHIVELOG o NOARCHIVELOG. Estado de archivado automático (habilitado o no). Destino de archivado. Número de secuencia para el más antiguo redo log en línea lleno. Idem para el próximo a archivar. Idem para el actual. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 130
131 MODO DE ARCHIVADO INICIAL. Indicado al crear la base de datos mediante la sentencia CREATE DATABASE. Por defecto es NOARCHIVELOG. CREATE DATABASE [database] {USER SYS IDENTIFIED BY... USER SYSTEM IDENTIFIED BY... CONTROLFILE REUSE LOGFILE [GROUP integer] redo_log_file_spec [, [GROUP integer] redo_log_file_spec]... MAXLOGFILES integer MAXLOGMEMBERS integer MAXLOGHISTORY integer MAXDATAFILES integer MAXINSTANCES integer { ARCHIVELOG NOARCHIVELOG } FORCE LOGGING CHARACTER SET charset NATIONAL CHARACTER SET charset DATAFILE datafile_tempfile_spec [, datafile_tempfile_spec]... default_temp_tablespace undo_tablespace_clause set_time_zone_clause }...; Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 131
132 CAMBIO A MODO ARCHIVELOG. Si no se ha establecido el modo ARCHIVELOG durante la creación de la bd puede hacerse posteriormente empleando la sentencia ALTER DATABASE. Es preciso estar conectado a la bd con privilegios de administrador. Pueden utilizarse las claúsulas NOARCHIVELOG y ARCHIVELOG (es preciso que la bd esté montada pero no abierta y Real Application Clusters -RACdeshabilitado). La claúsula ARCHIVELOG sólo puede usarse tras parar la instancia normalmente o de forma inmediata sin errores (de forma coherente). Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 132
133 CAMBIO A MODO ARCHIVELOG. Parar la instancia de base de datos:» shutdown Realizar una copia de seguridad de la bd. Modificar el fichero de parámetros de inicialización. Arrancar una instancia y montar la bd:» startup mount Modificar el modo de archivado y abrir la bd:» alter database archivelog;» alter database open; Comprobar el modo (archive log list;), archivar los redo log (archive log all;) y parar la instancia:» shutdown immediate Realizar una copia de seguridad de la bd en el nuevo modo. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 133
134 CAMBIO A MODO ARCHIVELOG. El cambio de modo actualiza el fichero de control. Tras cambiarlo, debe realizarse una copia todos los ficheros de la base de datos. Cualquier copia anterior puede desecharse pues se ha realizado en modo NOARCHIVELOG (a menos que haya algún problema al cambiar a modo ARCHIVELOG y sea necesario volver al modo NOARCHIVELOG inicial). Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 134
135 ARCHIVELOG. ARCHIVADO MANUAL. Normalmente el archivado de redo log se realiza de forma automática, por mayor comodidad y seguridad. Si se desea archivar de forma manual, al cambiar a modo archivelog, en el paso donde se modifica el modo de archivado y se abre la bd, debe indicarse:» alter database archivelog manual;» alter database open;. Si está activo el archivado manual debemos explícitamente archivar los redo log o la bd suspenderá su funcionamiento. No es conveniente trabajar de forma manual. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 135
136 ARCHIVELOG. ARCHIVADO MANUAL. Para realizar el archivado manual es necesario estar conectado AS SYSDBA o tener el privilegio ALTER SYSTEM. La sentencia:» alter system archive log all; guarda todos los ficheros aún no archivados. Mediante alter system archive log current; se fuerza a cambiar de log y archivar el que se está usando así como el resto de no archivados (util para copias online ). Esta sentencia puede usarse aun cuando se esté trabajando en modo automático de archivado. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 136
137 ARCHIVELOG. DESTINO DE ARCHIVADO. Puede ser único o múltiple, en este caso se guardan en más de una localización. El parámetro de inicialización LOG_ARCHIVE_DEST_n -siendo n un entero entre 1 y 10- permite especificar hasta diez destinos de archivado. El caso más común es el archivado local -en la propia maquina-, lo que se indica: LOG_ARCHIVE_DEST_1='LOCATION=/u06/oradata/CURSOxx' Es incompatible con el parámetro LOG_ARCHIVE_DEST (este parámetro junto con LOG_ARCHIVE_DUPLEX_DEST permite especificar un máximo de dos destinos de archivado). Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 137
138 ARCHIVELOG. DESTINO DE ARCHIVADO. Para especificar el destino de archivado debe pararse la instancia de base de datos -shutdown- e: Indicar en fichero de parámetros destinos de archivado. LOG_ARCHIVE_DEST_1 = 'LOCATION = /u06/oradata/cursoxx' LOG_ARCHIVE_DEST_2 = 'LOCATION = /u07/oradata/cursoxx'... Indicar el valor del parámetro LOG_ARCHIVE_FORMAT. Permite indicar el formato de nombre que se aplicará a los ficheros de archivado. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 138
139 ARCHIVELOG. DESTINO DE ARCHIVADO. El nombre de los archivados se compone de una cadena de caracteres combinada con variables: %s... Número de secuencia de log. %t... Número de thread. %a... Identificación de activación. %d... Identificación de bd. %r... Identificación de resetlog (permite asegurar nombres únicos para los ficheros de archivado a través de múltiples encarnaciones de la bd, estas cambian al abrir la bd con la opción resetlogs ). Si se emplean mayúsculas (por ejemplo, %S o %T) el valor pasa a ser de longitud fija y se completa con ceros a la izquierda. Un ejemplo de nombre puede ser: LOG_ARCHIVE_FORMAT = "LOG%t_%s_%r.ARC" Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 139
140 ARCHIVELOG. DESTINO DE ARCHIVADO. Los valores de dichos parámetros pueden encontrarse en: Número de secuencia de log (%s ): Vista V$ARCHIVED_LOG, columna SEQUENCE# Número de thread (%t). Vista V$ARCHIVED_LOG, columna THREAD# Identificación de activación (%a). Es el número asignado a la instancia de bd. Vista V$DATABASE, columna ACTIVATION# Identificación de bd (%d). Vista V$DATABASE, columna DBID Identificación de resetlog (%r). Vista V$ARCHIVED_LOG, columna RESETLOGS_ID Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 140
141 ARCHIVELOG. DESTINO DE ARCHIVADO. La ruta completa de localización se forma concatenando ambas variables (LOG_ARCHIVE_DEST_n y LOG_ARCHIVE_FORMAT). Así, según el ejemplo anterior se generan ficheros de la forma: /u06/oradata/cursoxx/logxxx_yyy_zzz.arc /u07/oradata/cursoxx/logxxx_yyy_zzz.arc Cada destino tiene una serie de características que determinan su estado (ver vista v$archive_dest): Valid/Invalid... destino especificado y validez Enabled/Disabled... estado de disponibilidad y usabilidad (por defecto un destino tiene valor enabled ). Active/Inactive... si hay problemas accediendo al destino Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 141
142 ARCHIVELOG. DESTINO DE ARCHIVADO. Mediante el fichero de parámetros de inicialización LOG_ARCHIVE_DEST_STATE_n, parámetro dinámico modificable con ALTER SESSION o ALTER SYSTEM, es posible controlar el estado de un determinado destino de archivado: Enabled (por defecto). Destino válido y que puede usarse. Defer. Destino excluido temporalmente hasta que sea habilitado. Alternate. No habilitado pero puede llegar a estarlo si el resto de destinos fallan. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 142
143 ARCHIVELOG. FALLOS DESTINO ARCHIVADO. Mediante LOG_ARCHIVE_MIN_SUCCEED_DEST=n (modificable dinámicamente con ALTER SESSION o ALTER SYSTEM) se determina el mínimo número de destinos de archivado a los que debe poder escribirse satisfactoriamente antes de reutilizar el redo log en línea. Su valor por defecto es 1. Con LOG_ARCHIVE_DEST_n (modificable dinámicamente) puede indicarse si un destino tiene como atributo OPTIONAL -el archivado no se requiere para poder usar el redo log -, por-, valor por defecto, o MANDATORY -el archivado debe tener éxito antes de poder reutilizar el redo log -. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 143
144 ARCHIVELOG. FALLOS DESTINO ARCHIVADO. Con LOG_ARCHIVE_DEST_n puede especificarse el mínimo número de segundos antes de que el proceso ARCn intente acceder a un destino que ha fallado (opción REOPEN). El valor por defecto es de 300 segundos; con un valor de cero, ARCn no intentará reescribir tras un fallo. Si no se indica REOPEN, ARCn nunca intentará escribir tras un error. Si se indica REOPEN con un destino de tipo OPTIONAL, la bd puede sobreescribir los redo en línea si hay un error. Si se indica para un destino tipo MANDATORY y no puede archivarse puede verse perjudicado el funcionamiento de la bd (en este caso, deberá archivarse manualmente, cambiar el destino -DEFER, OPTIONAL,...- o definirlo como OPTIONAL). Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 144
145 ARCHIVELOG. CONTROL DE PROCESOS ARCn. Los procesos de archivado (ARCn) son creados conforme se necesitan. Puede indicarse el número de procesos creados en el arranque de la instancia (ARC0 a ARC9), añadiendo en el fichero de parámetros: LOG_ARCHIVE_MAX_PROCESSES=<numero>; No pudiendose crear más de los indicados. Su valor por defecto es 2. Generalmente no es necesario indicar nada pues la bd arranca tantos procesos ARCn como sean necesarios para asegurar un correcto funcionamiento. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 145
146 ARCHIVELOG. CONTROL DE PROCESOS ARCn. Este parámetro puede modificarse dinámicamente con la sentencia (la bd debe estar montada pero no abierta): ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=<numero>; Cada proceso ARCn trabaja sólo con un log inactivo cada vez, pero debe escribir a cada unos de los destinos indicados. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 146
147 ARCHIVELOG. CONTROL DE PROCESOS ARCn. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 147
148 INFORMACION PROCESO ARCHIVADO. La información qe se genera y guarda en los ficheros de traza sobre el archivado puede controlarse mediante el parámetro -modificable con ALTER SYSTEM- LOG_ARCHIVE_TRACE. Valores válidos para el nivel de traza son: 0: Disable archivelog tracing (valor por defecto) 1: Track archival of redo log file 2: Track archival status of each archivelog destination 4: Track archival operational phase 8: Track archivelog destination activity 16: Track detailed archivelog destination activity 32: Track archivelog destination parameter modifications 64: Track ARCn process state activity 128: Track FAL (fetch archived log) server related activities Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 148
149 INFORMACION PROCESO ARCHIVADO. 32: Track archivelog destination parameter modifications 64: Track ARCn process state activity 128: Track FAL (fetch archived log) server related activities 256: Track RFS Logical Client 512: Track LGWR redo shipping network activity 1024: Track RFS Physical Client 2048: Track RFS/ARCn Ping Heartbeat 4096: Track Real Time Apply 8192: Track Redo Apply (Media Recovery or Physical Standby) Pueden combinarse distintos niveles indicando un valor resultado de la suma de dos de ellos (por ejemplo, el valor 3 hace referencia a 1 y a 2). Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 149 Al fijar el valor por defecto, cero, Oracle continuará
150 INFORMACION PROCESO ARCHIVADO. Aun cuando se fije el valor por defecto, cero, Oracle continuará generando entradas en el fichero de alert y trazas en respuesta a condiciones de error. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 150
151 FLASH RECOVERY AREA. Lugar centralizado para ficheros de copia y recuperación (directorio gestionado por Oracle, sistema de ficheros o disco automatic storage management ) tales como redo archivado, RMAN,... La bd sería recuperable usando los ficheros almacenados en el área flash (ficheros de control, redo en línea, redo archivado, flashback, copias de ficheros de datos,...). Se define una cantidad de espacio que puede Oracle usar en la flash recovery area. Oracle and RMAN escriben en el área hasta alcanzar el límite; al llegar al mismo, Oracle elimina el mínimo conjunto de ficheros existente que sean obsoletos, copias redundantes o volcados a otro dispositivo. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 151
152 FLASH RECOVERY AREA. Se recomienda que el área de flash recovery sea la suma del tamaño de la bd, del tamaño de las copias incrementales y el tamaño de todos los archivados no copiados a otro dispositivo de seguridad. Su tamaño mínimo debe ser al menos suficiente para contener los archivados no copiados a un dispositivo de seguridad. El área de flash se define con los parámetros de inicialización: DB_RECOVERY_FILE_DEST_SIZE... Cantidad máxima total, en bytes, del área (este parámetro debe indicarse antes de DB_RECOVERY_FILE_DEST). DB_RECOVERY_FILE_DEST... Localización (directorio, sistema de ficheros o disco automatic storage management -ASM-), NO puede ser sistema de ficheros raw. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 152
153 FLASH RECOVERY AREA Y ARCHIVELOG. Es recomendable usar el área Flash Recovery para almacenar los archivados. Pueden darse varios casos, de más a menos recomendable: Sólo realizar el archivado en el área de flash recovery y usar discos espejo para copiar redundantemente los archivados. Realizar el archivado en el área de flash recovery y fijar otros destinos de archivado (LOG_ARCHIVE_DEST_n) externos al área. No usar el área flash recovery para archivar. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 153
154 FLASH RECOVERY AREA Y ARCHIVELOG. Si se configura un área de flash y no se indican destinos de archivado (LOG_ARCHIVE_DEST_n), entonces LOG_ARCHIVE_DEST_10 implícitamente apunta al área (a menos que se le asigne la cadena vacía). Si se asigna alguna localización para LOG_ARCHIVE_DEST_n, los archivados se almacenan sólo en la misma y no en el área de flash. Si esta está configurada es necesario indicar explicitamente el área como uno de los destinos LOG_ARCHIVE_DEST_1 = 'LOCATION=<USE_DB_RECOVERY_FILE_DEST>' Los nombres de fichero para los archivados en el área de flash no vienen determinados por LOG_ARCHIVE_FORMAT y son Oracle Managed Filenames. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 154
155 CAMBIO A MODO NOARCHIVELOG. Parar la instancia de base de datos:» shutdown Realizar una copia de seguridad de la bd. Modificar el fichero de parámetros de inicialización. Arrancar una instancia y montar la bd:» startup mount Modificar el modo de archivado:» alter database noarchivelog;» alter database open; Comprobar el modo (archive log list) y parar la instancia:» shutdown immediate Realizar una copia de seguridad de la bd. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 155
156 VISTAS. V$DATABASE. Consulta del modo de la bd ARCHIVELOG o NOARCHIVELOG. V$ARCHIVED_LOG. Información histórica sobre archivado a partir del fichero de control. V$ARCHIVE_DEST. Información sobre destino de archivado. V$ARCHIVE_PROCESSES. Información sobre el estado de los procesos de archivado. V$BACKUP_REDOLOG. Información sobre backups de los logs archivados. V$LOG. Información sobre grupos de redo en línea - indica también cual necesita archivarse-. V$LOG_HISTORY. Información histórica de log. Administración Avanzada de Oracle 10g ARCHIVADO DE BASE DE DATOS 156
157 TEMA 9. COPIAS DE SEGURIDAD. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 157
158 TEMA 9. COPIAS DE SEGURIDAD. COPIA Y RECUPERACION: METODOS. COPIAS FISICAS/LOGICAS. ESTRATEGIAS DE COPIA. CONSIDERACIONES. FLASH RECOVERY AREA. ARCHIVADO. COPIAS COMPLETAS/PARCIALES. ESTRATEGIA MANUAL DE COPIA. OBTENCION DE INFORMACION DE COPIA. COPIA COMPLETA BD. PROCESO. COPIA TBSP FUERA LINEA. PROCESO. COPIA TBSP LECTURA/ESCRITURA EN LINEA. PROCESO. COPIA TBSP LECTURA/ESCRITURA EN LINEA. PROBLEMAS EN LA COPIA. COPIA TBSP SOLO LECTURA EN LINEA. PROCESO. COPIA FICHERO CONTROL. COPIA REDO ARCHIVADO. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 158
159 TEMA 9. COPIAS DE SEGURIDAD. COPIA OTROS FICHEROS. COPIA MODO SUSPEND. RESTAURACION DE COPIAS. DBVERIFY. VALIDACION FICHEROS Y SEGMENTOS. FLASHBACK DATABASE PUNTOS RESTAURACION. ACTIVAR FLASHBACK DATABASE. VENTANA FLASHBACK DATABASE. MONITORIZACION FLASHBACK DB COPIA LÓGICA. DATA PUMP EXPORT/IMPORT. TABLESPACES TRANSPORTABLES. LIMITACIONES. COMPATIBILIDAD. PROCESO. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 159
160 COPIA Y RECUPERACION: METODOS. Para realizar la copia y recuperación físicas Oracle proporciona dos soluciones: Recovery Manager, una herramienta propia de Oracle que puede gestionarse a través de un interfaz línea de comandos o gráfica. Copia y recuperación gestionada por usuario, que emplea una mezcla de órdenes de s.o. y SQL*Plus. Se recomienda usar Recovery Manager al poderse realizar los mismos tipos de copias y recuperaciones que manualmente, además de proporcionar un interfaz estándar sobre distintos sistemas operativos. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 160
161 COPIA Y RECUPERACION: METODOS. No obstante, los métodos manuales también son útiles y diferentes circunstancias pueden justificar el uso de los mismos: Migración de bd a una versión actualizada pero conservando aún los script de copia actuales. Coexistencia de bbdd tipo Oracle7 junto a otras más recientes, y la necesidad de coherencia en el manejo de todas ellas (RMAN sólo soporta bd versión 8.0 o superior). Algo que debería ser inusual actualmente. Pérdida de las copias realizadas con RMAN, y necesidad de restaurar copias manuales y recuperar con la orden SQL*Plus RECOVER. Nota: La exposición estará basada en el empleo de métodos manuales de copia y recuperación. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 161
162 COPIAS FISICAS/LOGICAS. Debe permitir, en caso de pérdida de los datos originales, recuperarlos. Pueden clasificarse en: Físicas. Copias de los ficheros que integran la bd, ficheros de control y ficheros archive log hechas con utilidades del gestor de bd -Recovery Manager, RMAN- o del s.o.. Lógicas. Exportación a fichero binario mediante las utilidades de exportación (DATA PUMP EXPORT o EXPORT). La copia física es la base del sistema de copia y recuperación, aunque ambas son complementarias. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 162
163 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Frente a errores de usuario. Flashback Database. Permite devolver la bd al completo a un estado anterior sin necesidad de restaurar, tomando como referncia un SCN o creando los puntos de restauración, restore points, necesarios. Debe estar configurada una flash recovery area. Recuperación de la bd Point-in-Time. Se recupera un tbsp. o la bd al completo a un momento concreto. Importación desde copia lógica. Frente a fallos de máquina ( media failure ). El tipo de fallo (fallo físico, sobreescritura, borrado o corrupción de un fichero de bd,...) determina la técnica de recuperación a usar. Administración Avanzada de Oracle 10g RECUPERACION 163
164 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Ciertamente, es necesario, además de disponer de un plan de copia y recuperación, anticiparse a posible problemas. Un aspecto básico es tener múltiples copias de los ficheros de redo en línea así como de los ficheros de control y del redo archivado y que estas copias residan cada una en un disco físico diferente. Si un fallo daña una de las copias de redo en línea, la bd puede continuar sin interrupción. Si no se dispone de copias y se daña el redo, ña bd se detiene y pueden perderse datos. Si se daña cualquier fichero de control, esté o no multiplexado, la bd se detiene cuando se intenta leer o escribir en dicho fichero. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 164
165 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Es necesario anotar la configuración hw y sw del servidor. Nombre, fabrica y modelo de la máquina donde reside la bd. Versión del s.o. Número de discos y controladoras Capacidad de disco y espacio libre. Nombre de todos los ficheros de datos. Nombre y versión del sw de gestión de almacenamiento. Nombre de la instancia (SID). Identificador de la bd (DBID). Versión y parche del servidor Oracle. Versión y parche del sw de comunicaciones. Método y frecuencia de las copias así como de la recuperación Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 165
166 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Conjunto de Redundancia. Está integrado por los ficheros necesarios para recuperar la bd: Copia del fichero de control y de todos los ficheros de datos ( datafiles ), redo log archivado, duplicado de los redo log en línea y del fichero de control actual y ficheros de configuración (fichero de parámetros, tnsnames.ora y listener.ora). El conjunto de redundancia debe estar en discos distintos de aquellos que contienen ficheros de datos, redo en línea y ficheros de control. También se aconseja mantener distintas copias del conjunto. Es aconsejable hacer copias espejo del fichero de control. Es necesario que todas las copias del fichero de control estén accesibles o caería la instancia. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 166
167 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Hacer copias espejo de los fiheros de datos si es posible para evitar la realización de media recovery debido a un fallo de disco. Copia en modo ARCHIVELOG. Disponer de múltiples destinos de archivado (entre ellos puede figurar la flash recovery area ). Copiar la bd al completo tras su creación o paso a modo ARCHIVELOG. Realizar copias de los tbsp con la bd abierta o cerrada. En particular de aquellos de uso intensivo deben hacerse copias frecuentes (para reducir el tiempo de recuperación). Copiar el fichero de control cada vez que se realice un cambio estructural en la bd ( ALTER DATABASE BACKUP CONTROLFILE ). Copiar los redo log archivados frecuentemente. Es conveniente realizar copias a varios soportes (cinta, disco,...). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 167
168 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Realizar copias de manera frecuente y regular (más frecuencia a mayor número de operaciones DML). Realizar copias antes y después de cambios en la estructura de la bd (creado/borrado de tbsp, adición/renombrado de fichero de datos, adición, renombrado o borrado de redo log en línea,...). Realizar copia después de operaciones con la opción NOLOGGING, creación de tablas e índices, puesto que la bd no genera redo para dichos objetos y no podrían recuperarse desde las copias existentes. Realizar copia completa después de abrir la bd con la opción RESETLOGS. Guardar las copias antiguas de la bd. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 168
169 ESTRATEGIAS DE COPIA. CONSIDERACIONES. Realizar copias lógicas de la bd, como complemento a las copias físicas, puesto que no son sustitutivos de las mismas. Evitar la copia de redo log en línea pues accidentalmente pueden ser restaurados y corromper la bd. La mejor forma de protegerlos es tener múltiples miembros en cada grupo, y en diferentes discos. Si la bd está en modo ARCHIVELOG, el proceso ARC guarda los redo que se han llenado. Si la bd está en modo NOARCHIVELOG, el único tipo de copias válido es el realizado con la bd cerrada, consistente y completo; los ficheros en este tipo de copia son todos consistentes y no necesitan recuperación ni, por tanto, los redo en línea. Pueden restaurarse, por error, copias de los redo log en línea y corromper la bd. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 169
170 FLASH RECOVERY AREA Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 170
171 FLASH RECOVERY AREA. Se trata de un lugar en disco donde la bd puede crear y gestionar fciheros relacionados con copia y recuperación. Debe determinarse su localización (directorio o grupo de discos ASM -Automatic Storage Management-) y una cuota de espacio, cantidad de espacio máximo a usar, para la misma (para averiguar la cuota de disco y uso de disco del área flash debe consultarse V$RECOVERY_FILE_DEST). Este área debe estar separada de aquel lugar donde residan los ficheros de la estructura de la bd (ficheros de datos, de control y redo en línea). El área flash está relacionada con OMF -Oracle Managed Files- y ASM -Automatic Storage Management-. Para habilitar el área flash debe darse valor a los parámetros de inicialización DB_RECOVERY_FILE_DEST_SIZE (cuota de disco) y DB_RECOVERY_FILE_DEST (localización). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 171
172 FLASH RECOVERY AREA. Las vistas V$RECOVERY_FILE_DEST y V$FLASH_RECOVERY_AREA_USAGE ayudan a determinar si se ha reservado suficiente espacio para el área flash. V$RECOVERY_FILE_DEST permite averiguar la localización, cuota, espacio en uso y espacio recuperable mediante el borrado de ficheros y número de ficheros en el área flash. SQL> SELECT * FROM V$RECOVERY_FILE_DEST; V$FLASH_RECOVERY_AREA_USAGE permite averiguar el porcentaje de disco usado por los diferentes tipos de ficheros y espacio recuperable mediante el borrado de ficheros obsoletos, redundantes o ya almacenados en otro soporte. SQL> SELECT * FROM V$FLASH_RECOVERY_AREA_USAGE; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 172
173 FLASH RECOVERY AREA. ARCHIVADO. Por defecto, LOG_ARCHIVE_DEST_10 señala al área flash. Los nombres generados para el log archivado no siguen la pauta fijada por LOG_ARCHIVE_FORMAT. También puede indicarse que cualquier otro destino de archivado señala dicha área: LOG_ARCHIVE_DEST_1 = 'LOCATION=/...' LOG_ARCHIVE_DEST_2 = 'LOCATION=USE_DB_RECOVERY_FILE_DEST' Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 173
174 TIPOLOGIA DE COPIAS Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 174
175 COPIAS COMPLETAS/PARCIALES. Completas. Incluyen ficheros de control y de datos. Es independiente del modo de operación de la bd. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 175
176 COPIAS COMPLETAS/PARCIALES. Una copia completa puede ser: Consistente. Puede abrirse con la opción RESETLOGS sin realizar media recovery, o sea, sin aplicar redo a los ficheros de datos. Todos los ficheros de datos deben: Tener el mismo system change number (SCN) en sus cabeceras, a menos que los tbsp correspondientes esten en sólo lectura u offline normal. No contienen cambios tras el SCN. Concuerdan con la información de checkpoint almacenada en el fichero de control. Nota: Un "system change number" (SCN) es una marca de tiempo, "timestamp", interna para una versión validada de la bd. La bd emplea el valor de reloj SCN para garantizar la consistencia de las transacciones. Por ejemplo, cuando un usuario valida una transacción, Oracle graba un SCN para esta validación en el "redo log" en línea. Oracle también emplea SCNs para coordinar transacciones distribuidas entre distintas bbdd Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 176
177 COPIAS COMPLETAS/PARCIALES. Sólo pueden efectuarse copias consistentes tras un shutdown limpio de la bd, esta no debe abrirse hasta finalizar la misma. Una copia completa y consistente es la única opción válida para bd en modo NOARCHIVELOG. Inconsistente. Copia donde algun fichero contiene cambios hechos después del checkpoint de los ficheros. Necesita recuperación antes de ser consistente. Normalmente se hacen con la bd abierta mientras se realiza la copia. Pero también si la copia se hace sobre una bd cerrada justo después de caer una instancia o de cerrar la bd con SHUTDOWN ABORT. Sólo son válidos si la bd está en modo archivelog. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 177
178 COPIAS COMPLETAS/PARCIALES. Parciales. Copias de los ficheros de un tablespace. Sólo son válidos si la bd está en modo archivelog (en modo noarchivelog sólo cuando está en modo sólo lectura u offline normal ). Pueden hacerse con RMAN o mediante el s.o.. Copia de un fichero de datos. Válido en modo archivelog (en modo noarchivelog cuando está en modo sólo lectura u offline normal, o cuando todo fichero de un tbsp. se copia). Pueden hacerse con RMAN o mediante el s.o.. Copia de fichero de control. Mediante RMAN, o la sentencia alter database backup controlfile -a binario-. Copias de redo log archivados. Fundamentales para recuperar una copia inconsistente. Deben copiarse todos los producidos durante una copia inconsistente. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 178
179 COPIAS COMPLETAS/PARCIALES. Durante las copias realizadas en línea pueden producirse inconsistencias en los datos que se intenta copiar (por ejemplo, la lectura de bloques fracturados -con datos antiguos y nuevos al estar modificándose-). Para evitarlo, el tbsp. debe ponerse en modo backup con la sentencia alter tablespace begin backup (no puede indicarse para un tbsp de sólo lectura ni un tbsp temporal gestionado localmente). Mientras dura la copia no puede ponerse fuera de línea, parar la instancia o comenzar otra copia del tbsp. Mediante alter tablespace end backup se indica que la copia del tbsp. ha acabado. Se recomienda usarla tan pronto como sea posible, pues si sucede un fallo de instancia o shutdown abort, Oracle piensa que se necesita media recovery en el siguiente arranque (quizá con redo log archivado). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 179
180 ESTRATEGIA MANUAL DE COPIA Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 180
181 ESTRATEGIA MANUAL DE COPIA. Se realizan copias periódicas de los ficheros de datos y redo archivado usando órdenes de s.o.. Es necesario relacionar las copias realizadas con los originales (por ejemplo, adoptando nombres derivados del original. Objeto Actuación Ficheros de datos F. redo archivado cp <nombre_fichero> <nombre_fichero.fecha> cp <nombre_fichero> <nombre_fichero.fecha> F. control alter database backup controlfile to <nombre_fichero> F. parámetros create pfile= <init.ora.fecha> from spfile; F. red cp tnsnames.ora tnsnames.ora.fecha Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 181
182 OBTENCION DE INFORMACION DE COPIA. Identificar los ficheros a copiar. Se consultan las vistas V$DATAFILE -ficheros de datos-, V$TABLESPACES -tbsp-, V$LOGFILE - redo en línea- y V$CONTROLFILE -f.control-. Al hacer copia de un fichero de control con ALTER DATABASE BACKUP CONTROLFILE TO <fichero>; debe guardarse información sobre los f.datos y f.redo en línea existentes junto con la copia del fichero de control (la estructura de la bd en el momento de hacer la copia puede ser distinta a la existente en el momento de recuperar). Determinar el estado de copia (vista V$BACKUP). Muestra si un f.datos en línea forma parte de una copia actual el valor ACTIVE de la columna status indica en copia- (útil con bd abierta y con f.control no recuperado ni nuevo -en este caso, contendría información desactualizada-). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 182
183 OBTENCION DE INFORMACION DE COPIA. La vista V$BACKUP es útil con la bd abierta y también tras un fallo de instancia pues muestra el estado de copia de los ficheros en el instante del fallo y permite determinar si algún tbsp. ha quedado en modo copia. SQL> SELECT t.name AS "TBSP", d.file# as "DF#", d.name AS "DF_NAME", b.status FROM V$DATAFILE d, V$TABLESPACE t, V$BACKUP b WHERE d.ts#=t.ts# AND b.file#=d.file# AND b.status='active'; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 183
184 COPIA COMPLETA BD. Es posible realizarla tras cerrar la bd, shutdown, con las opciones: Normal, immediate o transactional. Puede realizarse en modo archivelog o noarchivelog. Puede restaurarse sin hacer recuperación (en modo archivelog puede recuperarse posteriormente para llevar la bd a un momento más actual). En modo archivelog se recomienda hacer copia del f.control con: ALTER DATABASE BACKUP CONTROLFILE TO <fichero>; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 184
185 COPIA COMPLETA BD. PROCESO. Cerrar la bd. SQL> SHUTDOWN NORMAL / IMMEDIATE / TRANSACTIONAL No debería realizarse copia de la bd si ha sido parada de forma anormal ( shutdown abort o caída debido a un fallo). Copiar los ficheros apropiados (datos, control, inicialización, configuración -buscar todos los ficheros.ora comenzando por el $ORACLE_HOME-,...). Rearrancar la bd. SQL> STARTUP Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 185
186 COPIA TBSP FUERA LINEA. Puede realizarse la copia de todos o parte de los f.datos que integran un tbsp cuando está fuera de línea (para ponerlo fuera de línea debe tenerse el privilegio DBA o MANAGE TABLESPACE). No puede ponerse fuera de línea el tbsp SYSTEM o un tbsp con segmentos de rollback activos. Si el tbsp fuera de línea contiene índices al intentar acceder a estos se generan errores. El problema se pondrá de manifiesto cuando el método de acceso elegido por el optimizador requiera usar los índices. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 186
187 COPIA TBSP FUERA LINEA. PROCESO. Identificar los ficheros de datos correspondientes a los tbsp a copiar (DBA_DATA_FILES). SQL> SELECT TABLESPACE_NAME, FILE_NAME FROM SYS.DBA_DATA_FILES WHERE TABLESPACE_NAME = '...'; Poner el tbsp fuera de línea con prioridad normal (ALTER TABLESPACE <nombre_tbsp> OFFLINE NORMAL;). Realizar copia de los f.datos (cp). Poner el tbsp en línea (ALTER TABLESPACE <nombre_tbsp> ONLINE;). Forzar el archivado de redo, de forma que aquel necesario para recuperar la copia del tbsp esté disponible (ALTER SYSTEM ARCHIVE LOG CURRENT;). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 187
188 COPIA TBSP LECTURA/ESCRITURA EN LINEA. PROCESO. Cualquier tbsp a copiar debe ser puesto en modo copia ( backup mode ) mediante la sentencia ALTER TABLESPACE... BEGIN BACKUP. Tras la copia, debe abandonarse el modo copia con ALTER TABLESPACE... END BACKUP o ALTER DATABASE END BACKUP. Al recuperar la bd se preguntará por los ficheros de redo necesarios para aplicar. Identificar los f.datos que pertenecen al tbsp. SQL> SELECT TABLESPACE_NAME, FILE_NAME FROM SYS.DBA_DATA_FILES WHERE TABLESPACE_NAME = '...'; Indicar el comienzo de copia: SQL> ALTER TABLESPACE <NOMBRE_TBSP> BEGIN BACKUP; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 188
189 COPIA TBSP LECTURA/ESCRITURA EN LINEA. PROCESO. Realizar la copia (cp). Indicar fin de copia: SQL> ALTER TABLESPACE <NOMBRE_TBSP> END BACKUP; Forzar el archivado de redo, de forma que aquel necesario para recuperar la copia esté disponible: SQL> ALTER SYSTEM ARCHIVE LOG CURRENT; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 189
190 COPIA TBSP LECTURA/ESCRITURA EN LINEA. Si el proceso de copia involucra a varios tbsp, pueden copiarse de forma paralela o en serie (en ambos casos se fuerza el archivado al final del proceso, cuando sobre todos los tbsp se haya hecho el end backup ). Es necesario tener en cuenta que hacerlo de forma paralela puede hacer que se generan grandes cantidades de redo si hay gran actividad en los tbsp. involucrados y debería existir redo suficiente. Paralela. Se ponen simultáneamente todos los tbsp en modo begin backup -implica un gran crecimiento de redo en línea al actualizarlos-. Se realiza la copia y se hace end backup. Serie (Opción recomendada). Repetir el proceso begin backup -copia- end backup para cada tbsp. minimiza el tiempo begin - end para un tbsp. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 190
191 COPIA TBSP LECTURA/ESCRITURA EN LINEA. En la opción paralela en lugar de realizar un ALTER TABLESPACE... BEGIN BACKUP; para cada tbsp, si se están copiando todos ellos puede indicarse: SQL> ALTER DATABASE BEGIN BACKUP; Y en lugar de usar ALTER TABLESPACE... END BACKUP; puede utilizarse: SQL> ALTER DATABASE END BACKUP; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 191
192 COPIA TBSP LECTURA/ESCRITURA EN LINEA. PROBLEMAS EN LA COPIA. Una copia de tbsp puede fallar y no completarse cuando: La copia ha terminado pero no se indica su fin ( end backup ). Se interrumpe la copia debido a un fallo de instancia o la realización de un shutdown abort. En caso de un crash recovery si un fichero está en modo copia y se intenta abrir, Oracle interpreta que es una copia a recuperar y no se abre la bd hasta la recuperación o hasta abandonar el modo copia (se generan los ORA y ORA-01110). ORA-01113: file xx needs media recovery ORA-01110: data file xx: '/.../.../...dbf' Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 192
193 COPIA TBSP LECTURA/ESCRITURA EN LINEA. PROBLEMAS EN LA COPIA. Abandonar el modo de copia (sólo si se está seguro de que los ficheros están en la fecha actual). Montar la bd (STARTUP MOUNT). Consultar en V$BACKUP tbsp en copia (status='active'). Ejecutar ALTER DATABASE END BACKUP; (sólo si la bd está montada y no se ha restaurado ningun fichero implicado, en caso de que esté abierta debe emplearse ALTER TABLESPACE... END BACKUP o ALTER DATABASE DATAFILE... END BACKUP para cada tbsp o fichero implicado). Abrir la bd. Recuperación (caso de no estar seguro de haber restaurado copia). Montar la bd (STARTUP MOUNT). Recuperar la bd (RECOVER DATABASE) y comprobar en V$BACKUP que no hay tbsp en copia (status='active'). Abrir la bd. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 193
194 COPIA TBSP SOLO LECTURA EN LINEA. PROCESO. No es necesario poner el tbsp en modo copia pues la bd no permite cambios en el mismo, simplemente copiar los f.datos correspondientes. Si el conjunto de tbsp es autocontenido puede además realizarse la exportación del tbsp con vistas a realizar posteriormente un transporte de tbsp. Consultar DBA_TABLESPACES para determinar qué tbsp están en modo sólo lectura (SELECT TABLESPACE_NAME, STATUS FROM DBA_TABLESPACES WHERE STATUS = 'READ ONLY';) Identificar los ficheros asociados a los tbsp consultando DBA_DATA_FILES. Copiar los ficheros correspondientes. Al restaurar la copia, debe ponerse fuera de línea el tbsp, copiar los ficheros y ponerlo en línea. La copia es válida incluso si se cambia a lectura/escritura tras la copia -necesitará recuperación-. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 194
195 COPIA FICHERO CONTROL. En una bd en modo archivelog debe copiarse tras realizar un cambio estructural. Se requiere el privilegio ALTER DATABASE. Puede copiarse a un fichero binario (preferible al contener información sobre historia de redo archivado, tbsp. fuera de línea o sólo lectura,...) o a un fichero de traza. En ambos casos (copia a fichero binario o de traza) las entradas para los ficheros TEMP no son incluidas. Fichero binario. Realizar el cambio deseado a la bd. ALTER DATABASE BACKUP CONTROLFILE TO '/.../copia/fcontrol.bak' REUSE; La opción REUSE permite sobreescribir un f.control existente Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 195
196 COPIA FICHERO CONTROL. Fichero de traza. Se generan sentencias SQL de creación del fichero de control en un fichero de traza (arrancan la bd, recrean el f.control, y recuperan y abren la bd). Debe montarse o abrirse la bd y ejecutar la sentencia: ALTER DATABASE BACKUP CONTROLFILE TO TRACE; Si no se indica RESETLOGS ni NORESETLOGS en la sentencia, el fichero de traza contiene versiones del fichero para ambas opciones. Las entradas de ficheros temporales se incluyen en la salida usando sentencias "ALTER TABLESPACE... ADD TEMPFILE. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 196
197 COPIA REDO ARCHIVADO. Los ficheros de redo archivado generados pueden copiarse a cinta u otro dispositivo y, de esta forma, ahorrar espacio donde este localizada la bd. Para realizar la copia, se averiguan los ficheros de redo archivado que la bd ha generado: SQL> SELECT THREAD#,SEQUENCE#,NAME FROM V$ARCHIVED_LOG; Se realiza una copia de cada número de secuencia de log (en caso de guardar múltiples copias, sólo es necesario una por número de secuencia). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 197
198 COPIA OTROS FICHEROS. Como norma general, cada vez que se modifiquen deben copiarse además el fichero de parámetros de inicialización, los de interconexión y el de contraseñas. La forma más sencilla de localizarlos es realizar una búsqueda automática desde $ORACLE_HOME de todos los ficheros acabados en.ora (orden find de s.o. UNIX). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 198
199 COPIA MODO SUSPEND. Existen herramientas que permiten hacer copias espejo o duplicados exactos y desvincular la copia del original de forma que puedan usarse independientemente. Con la funcionalidad SUSPEND/RESUME puede suspenderse la entrada/salida de la bd, desvincular la copia espejo y hacer una copia de la misma. En este estado no puede ejecutarse SHUTDOWN IMMEDIATE, NORMAL o TRANSACTIONAL; ejecutar SHUTDOWN ABORT reactiva la bd. En una configuración RAC no debe arrancarse una nueva instancia mientras los nodos originales están en suspenso. La sentencia ALTER SYSTEM SUSPEND permite suspender la bd, todas las operaciones E/S se completan pero cualquier nueva operación se guarda en cola. Se recomienda que se preceda con una sentencia begin backup (inicio de copia). Tras la copia se ejecuta la sentencia ALTER SYSTEM RESUME. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 199
200 COPIA MODO SUSPEND. Poner los tbsp en modo copia: ALTER TABLESPACE <nombre> BEGIN BACKUP; o ALTER DATABASE BEGIN BACKUP; Suspender la bd: ALTER SYSTEM SUSPEND; Comprobar el cambio de estado (consultar V$INSTANCE, campo DATABASE_STATUS: SELECT DATABASE_STATUS FROM V$INSTANCE; Realizar la copia espejo. Finalizar la suspensión de la bd: ALTER SYSTEM RESUME; Comprobar que la bd está activa (consultar V$INSTANCE, campo DATABASE_STATUS). Poner tbsp modo no copia: ALTER TABLESPACE users END BACKUP; Copiar el f.control y archivar los redo en línea. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 200
201 METODOS DE VERIFICACION DE COPIA: RESTAURACION DE COPIAS DBVERIFY Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 201
202 RESTAURACION DE COPIAS. Periódicamente deben verificarse las copias realizadas para asegurar que son útiles para la recuperación. La mejor forma de hacerlo es restaurar las copias en otra máquina e intentar abrir la bd, realizando recuperación si es necesario. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 202
203 DBVERIFY: DATABASE VERIFICATION UTILITY. Es una utilidad que hace un chequeo de integridad de la estructura de datos física de una base de datos en línea o fuera de línea. Puede usarse en ficheros de copia ( backup ) y ficheros en línea (o unidades menores). Generalmente se intenta asegurar así que una copia es válida antes de restaurarla, o como herramienta de diagnóstico cuando se encuentran problemas de corrupción de datos. Al ejecutarse sobre una bd fuera de línea, los chequeos son mucho más rápidos. Estos se limitan a bloques de datos -no a ficheros de control ni redo logs. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 203
204 DBVERIFY. VALIDACION FICHEROS. Se verifican uno o más bloques de disco pertenecientes a un fichero de datos y se realizan chequeos de página. Si el fichero es del tipo Automatic Storage Management (ASM) debe indicarse un USERID. dbv USERID = <usuario> FILE =<nombre_de_fichero> { START = <dirección_bloque> END = <dirección_bloque> } BLOCKSIZE = integer LOGFILE = <nombre_de_fichero> FEEDBACK = integer HELP = { Y N } PARFILE = <nombre_de_fichero> Por ejemplo, dbv FILE=nomina.dbf FEEDBACK=100 Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 204
205 DBVERIFY. VALIDACION FICHEROS. Los parámetros tienen el siguiente significado: USERID... Nombre de usuario y contraseña. Sólo en el caso de ficheros ASM. FILE... Nombre del fichero de bd a verificar. START... Dirección inicial del bloque Oracle a verificar (por defecto, el primero del fichero). END... Dirección del último bloque a verificar (por defecto el último en el fichero). BLOCKSIZE... Necesario si el fichero no tiene un tamaño de bloque de 2 KB. Si es así y no se indica se genera el error DBV Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 205
206 DBVERIFY. VALIDACION FICHEROS. LOGFILE... Fichero donde se guarda información (por defecto el terminal). FEEDBACK... Informe de progreso de la verificación enviado al terminal. Un punto (.) por cada n número de página verificadas. Si n = 0, no hay informe. HELP... Ayuda en línea. PARFILE... Fichero de parámetros. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 206
207 DBVERIFY. VALIDACION FICHEROS. /home/oracle> dbv file=/u02/.../.../users01.dbf feedback= DBVERIFY - Verification starting : FILE = users01.dbf... DBVERIFY - Verification complete Total Pages Examined : 2048 Total Pages Processed (Data) : 0 Total Pages Failing (Data) : 0 Total Pages Processed (Index): 0 Total Pages Failing (Index): 0 Total Pages Failing (Seg) : 0 Total Pages Empty : 2016 Total Pages Marked Corrupt : 0 Total Pages Influx : 0 Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 207
208 DBVERIFY. VALIDACION FICHEROS. Pages = bloques Total Pages Examined = número de bloques en el fichero Total Pages Processed = número de bloques que se verificaron (formatted blocks) Total Pages Failing (Data) = número de bloques que fallaron la rutina de chequeo de bloque de datos. Total Pages Failing (Index) = idem para bloque de índices. Total Pages Marked Corrupt = número de bloques para los que la cabecera de caché no es válida, haciendo que fuera imposible determinar el tipo de bloque para DBVERIFY. Total Pages Influx = número de bloques que estan siendo leidos y escritos en el mismo tiempo. Si la bd está abierta, se leen los bloques múltiples veces para generar una imagen consistente. Por esta misma razón, pueden haber bloques leidos y escritos a la vez (INFLUX) para los que no se puede obtener una imagen consistente. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 208
209 DBVERIFY. VALIDACION SEGMENTOS. Permite indicar un segmento de tabla o índice a verificar. Requiere la conexión a la bd con privilegios de SYSDBA, e indicar el segmento concreto a validar. Durante la comprobación, el segmento es bloqueado. Si se trata de un segmento de índice, la tabla padre es bloqueada asimismo (algunos índices como los index-organized table -IOT-, donde se mantiene las filas de la tabla en un índice construido en la clave primaria, no tienen tabla padre). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 209
210 DBVERIFY. VALIDACION SEGMENTOS. dbv USERID = usuario/contraseña SEGMENT_ID = tsn.segfile.segblock LOGFILE = <nombre_fichero> FEEDBACK = integer HELP = { Y N } PARFILE = <nombre_fichero> Los parámetros tienen el siguiente significado: SEGMENT_ID... Segmento a verificar. Compuesto por número de tbsp (tsn), segment header file number (segfile) y segment header block number (segblock). El número de tbsp puede obtenerse de v$tablespace, campo ts#, y segfile y segblock de dba_segments. También puede consultarse SYS_USER_SEGS (necesario el privilegio SYSDBA). LOGFILE... Fichero donde se guarda información (por defecto el terminal). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 210
211 DBVERIFY. VALIDACION SEGMENTOS. FEEDBACK... Informe de progreso de la verificación enviado al terminal. Un punto (.) por cada n número de página verificadas. Si n = 0, no hay informe. HELP... Ayuda en línea. PARFILE... Fichero de parámetros. SQL> select a.name tablespace, a.ts# numero_tbsp, b.segment_name segmento, b.header_file cabecera, b.header_block bloque from v$tablespace a, dba_segments b where a.name=b.tablespace_name and b.tablespace_name='users' and b.owner='scott' order by b.segment_name;... USERS 0 DEPT Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 211
212 DBVERIFY. VALIDACION SEGMENTOS. /home/oracle> dbv userid=system/systxxxx segment_id= DBVERIFY - Verification starting : SEGMENT_ID = DBVERIFY - Verification complete Total Pages Examined : 2 Total Pages Processed (Data) : 1 Total Pages Failing (Data) : 0 Total Pages Processed (Index): 0 Total Pages Failing (Index): 0 Total Pages Processed (Other): 0 Total Pages Processed (Seg) : 1 Total Pages Failing (Seg) : 0 Total Pages Empty : 0 Total Pages Marked Corrupt : 0 Total Pages Influx : 0 Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 212
213 FLASHBACK DATABASE Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 213
214 FLASHBACK DATABASE. Flashback Database permite retroceder la bd al completo y deshacer los efectos de cambios no deseados en la bd. El resultado es muy similar a realizar una recuperación point-in-time aunque más rápida pues mo es preciso restaurar ficheros desde un soporte y resquiere aplicar menos cambios desde el redo archivado. Los puntos de restauración garantizada ( restore points ) permiten seleccionar un SCN y asegurar que flashback database podrá usarse en dicho SCN -aunque no necesariamente en los SCN entre el punto de chequeo y el momento actual- (incluso operaciones NOLOGGING u operaciones OPEN RESETLOGS). Restore points y Flashback Database pueden usarse independientemente o combinados. En cualquier caso, la sentencia RMAN FLASHBACK DATABASE o la SQL*Plus FLASHBACK DATABASE se emplean para devolver la bd al SCN indicado: FLASHBACK DATABASE TO RESTORE POINT before_upgrade ; FLASHBACK DATABASE TO SCN ; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 214
215 FLASHBACK DATABASE. Flashback Database emplea su propio mecanismo de log, se crean los flashback logs que se almacenan en el área flash (proceso flashback writer -RVWR-). Para habilitar esta característica debe crearse un área flash e indicar un flashback retention target o margen temporal en el que se podrá recuperar hacia el pasado. Definido ese punto, la bd copia a intervalos regulares imágenes de cada bloque modificado en cada fichero de datos en los log de flashback. Estas copias se reconstruyen los ficheros de datos. El rango de SCNs o ventana para los que hay suficientes datos flashback log como para realizar un FLASHBACK DATABASE depende del espacio en el área flash. Operaciones como el borrado de un tbsp. no son reversibles con este método (la ventana empezaría a continuación de los mismos). El uso de puntos de restauración garantizada es la única forma de asegurar el regreso a un SCN concreto o ancho de ventana de flashback. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 215
216 FLASHBACK DATABASE. Si se habilita Flashback Database y uno o más puntos de restauración garantizada, la bd guarda los log de flashback, lo que puede generar cierta sobrecarga en el funcionamiento de la bd y uso de espacio del área flash. Se retienen los log necesarios para permitir retroceder al punto de restauración más antiguo y los log no se borran si se necesitan para garantizar este extremo. Es conveniente monitorizar el espacio en el área flash. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 216
217 PUNTOS RESTAURACION. Para crearlos se usa la sentencia SQL*Plus CREATE RESTORE POINT indicando un nombre para el mismo y si se trata de un punto garantizado o normal (por defecto). La bd puede estar abierta o montada, siempre que en este último caso haya sido parada coherentemente. SQL> CREATE RESTORE POINT <nombre>; SQL> CREATE RESTORE POINT <nombre> GUARANTEE FLASHBACK DATABASE; Para borrar un punto de restauración se usa la sentencia SQL*Plus DROP RESTORE POINT: SQL> DROP RESTORE POINT <nombre>; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 217
218 PUNTOS RESTAURACION. Los puntos normales pueden ser descartados aunque no se borren. Así sucede que los 2048 puntos más recientes se guardan en el fichero de control independientemente de su edad y cualquier punto más reciente que el valor de CONTROL_FILE_RECORD_KEEP_TIME se retiene independientemente de cuantos puntos haya definidos. Cualquier punto normal que no cumpla ninguna de las dos condiciones mencionadas puede desaparecer del fichero de control. Los puntos de control garantizados siempre permanecen hasta que se borran explícitamente. Al definir este tipo de puntos, debe monitorizarse el espacio usado en el área flash (vistas V$RECOVERY_FILE_DEST y V$FLASH_RECOVERY_AREA_USAGE ). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 218
219 PUNTOS RESTAURACION. La vista V$RESTORE_POINT permite ver los puntos de restauración definidos: SQL> SELECT NAME, SCN, TIME, DATABASE_INCARNATION#, GUARANTEE_FLASHBACK_DATABASE,STORAGE_SIZE FROM V$RESTORE_POINT; Para ver aquellos puntos garantizados solamente: SQL> SELECT NAME, SCN, TIME, DATABASE_INCARNATION#, GUARANTEE_FLASHBACK_DATABASE, STORAGE_SIZE FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES'; Para puntos de restauración normales STORAGE_SIZE es cero. Para los garantizados STORAGE_SIZE indica la cantidad de espacio en el área flash usada para retener log necesarios para garantizar el regreso a dicho punto con FLASHBACK DATABASE. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 219
220 ACTIVAR FLASHBACK DATABASE. Debe fijarse un valor para el parámetro de inicialización, dinámico, DB_FLASHBACK_RETENTION_TARGET (ventana de recuperación) y ejecutarse ALTER DATABASE FLASHBACK ON. En grandes bd es conveniente fijar el parámetro LOG_BUFFER a un valor de, al menos, 8Mb. 1.- Montar la bd SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP MOUNT; 2.- Indicar ventana de recuperación (por defecto 1440 minutos -24h-). SQL> ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=4320; 3.- Activar Flashback Database para la bd al completo. SQL> ALTER DATABASE FLASHBACK ON; Para desactivar flashback : SQL> ALTER DATABASE FLASHBACK OFF; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 220
221 ACTIVAR FLASHBACK DATABASE. Puede habilitarse/deshabilitarse el flashback para tbsp. específicos SQL> ALTER TABLESPACE <nombre_tbsp> FLASHBACK ON/OFF; Si se deshabilita Flashback para un tbsp., deben ponerse fuera de línea sus ficheros de datos antes de ejecutar FLASHBACK DATABASE. DB_FLASHBACK_RETENTION_TARGET determina indirectamente cuanto log se retendrá. V$FLASHBACK_DATABASE_LOG ayuda a estimar cuánto espacio es necesario para log de flashback. SQL> SELECT ESTIMATED_FLASHBACK_SIZE FROM V$FLASHBACK_DATABASE_LOG; Nota: Debe añadirse el espacio indicado en ESTIMATED_FLASHBACK_SIZE al área de flash. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 221
222 VENTANA FLASHBACK DATABASE. El SCN más antiguo puede determinarse de la forma siguiente: SQL> SELECT OLDEST_FLASHBACK_SCN, OLDEST_FLASHBACK_TIME FROM V$FLASHBACK_DATABASE_LOG; El SCN más reciente puede obtenerse: SQL> SELECT CURRENT_SCN FROM V$DATABASE; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 222
223 MONITORIZACION FLASHBACK DB. Existen varias formas de monitorización: Realización de estadísticas usando Oracle Statspack. Consultar la vista V$FLASHBACK_DATABASE_STAT (columnas FLASHBACK_DATA, REDO_DATA y DB_DATA). Consultar la vista V$SYSSTAT (columnas physical write I/O request, physical read I/O request, redo writes y flashback log writes ). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 223
224 COPIA LOGICA Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 224
225 COPIA LÓGICA. DATA PUMP EXPORT/IMPORT. Son utilidades integradas en la bd que permiten cargas y descargas de información a gran velocidad. Todo el proceso de exportación/importación se lleva a cabo en el servidor. No son compatibles con el export/import originales. Consta de los siguientes componentes: Clientes expdp e impdp. Usan los procedimientos proporcionados por el paquete DBMS_DATAPUMP. Paquete DBMS_DATAPUMP. Conocido como Data Pump API, permite crear y monitorizar los trabajos implicados. Paquete DBMS_METADATA. Conocido como Metadata API, proporciona la definición de los objetos de la bd a Data Pump. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 225
226 DATA PUMP. EJECUCIÓN. En cada exportación o importación se crea un proceso maestro que controla la misma, incluyendo la comunicación con los clientes, la creación y control del conjunto de procesos de trabajo necesarios y la realización de las operaciones de conexión. En la transferencia de datos y metadatos, se emplea un tabla maestro, que se crea en el esquema del usuario que realiza la exportación/importación y tiene el nombre del trabajo -job- que realiza la operación, para realizar el seguimiento del proceso: Durante la exportación la tabla registra la localización de los objetos en el conjunto de ficheros de descarga ( dump file set ). Al finalizar, el contenido de la tabla se escribe a fichero. Durante la importación la tabla maestro se carga desde el conjunto de ficheros de descarga y se emplea para controlar la secuencia de localización de los ficheros a importar. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 226
227 DATA PUMP. EJECUCIÓN. Esta tabla maestro también se emplea para reiniciar un trabajo. El destino final de la tabla maestro es diverso: Si el trabajo finaliza correctamente, la tabla se borra. Si el trabajo se para, usando la sentencia STOP_JOB, se retiene para poder reiniciarlo. Si el trabajo se elimina, usando la sentencia KILL_JOB, la tabla se elimina y el trabajo no puede reiniciar. Si un trabajo termina inesperadamente, se mantiene la tabla. Puede borrarse si no hay intención de reiniciar el trabajo. El progreso de un trabajo y los errores producidos pueden registrarse en un fichero de log. El estado del mismo, en tiempo real, puede obtenerse usando la sentencia STATUS en modo interactivo de Data Pump. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 227
228 DATA PUMP. INFORMACIÓN. Puede obtenerse información en las siguientes vistas: DBA_DATAPUMP_JOBS y USER_DATAPUMP_JOBS. Identifican trabajos Data Pump activos. DBA_DATAPUMP_SESSIONS. Identifica sesiones de usuario asociadas a un trabajo. V$SESSION_LONGOPS. Información sobre el progreso del trabajo. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 228
229 DATA PUMP. FICHEROS. Existen tres tipos de ficheros gestionados por Data Pump: Ficheros de volcado ( dump ). Contienen datos y metadatos. Durante una exportación pueden indicarse al definir el trabajo así como posteriormente (por ejemplo, pueden añadirse ficheros de volcado con ADD_FILE). Durante un importación, todos los ficheros de volcado deben especificarse al definir el trabajo. Ficheros log. Contienen mensajes sobre la operación realizada. Ficheros SQL. Registran la salida de una operación SQLFILE (parámetro SQLFILE) consistente en el volcado de todas las sentencias DDL que se hubieran ejecutado durante una importación a un fichero. Nota: Los ficheros de log y SQL pueden sobreescribirse si ya existen. Nunca se sobreescriben ficheros de volcado si ya existen, se genera un error. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 229
230 DATA PUMP. LOCALIZACION DE FICHEROS. Es necesario crear objetos tipo directorio (asocia un nombre a un directorio o sistema de ficheros) por un usuario administrador o con el privilegio CREATE ANY DIRECTORY. Al exportar/importar se indica mediante el parámetro DIRECTORY. SQL> CREATE DIRECTORY DPUMP_VOLCADO AS '/datapump/ficheros'; Por defecto se asigna el valor para DATA_PUMP_DIR: SQL> CREATE DIRECTORY DATA_PUMP_DIR AS '/datapump/ficheros'; Tras la creación de un directorio, su creador debe conceder el permiso de lectura (READ) o escritura (WRITE) a otros usuarios. SQL> GRANT READ, WRITE ON DIRECTORY <directorio> TO <usuario>; Nota: Implica tener acceso a través de bd pero no el poder acceder a través de s.o. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 230
231 DATA PUMP. LOCALIZACION DE FICHEROS. El orden de precedencia usado para determinar la localización es: 1.- Objeto directorio formando parte de la especificación de un nombre de fichero (DUMPFILE=<localización>:<fichero>.dmp). 2.- Objeto directorio indicado en el parámetro DIRECTORY. 3.- Valor de la variable de entorno DATA_PUMP_DIR (definida en el entorno del cliente): SQL> CREATE DIRECTORY DUMP_FICHERO AS '/DATAPUMP/FICHEROS'; # EXPORT DATA_PUMP_DIR=<VARIABLE_FICHERO_VOLCADO> 4.- Si es un usuario privilegiado se emplea el valor por defecto en bd del directorio DATA_PUMP_DIR (que debe estar previamente creado). No confundir con la variable de entorno. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 231
232 DATA PUMP EXPORT. Se emplea la utilidad expdp, indicando las características de la exportación en la línea de comandos o mediante un fichero de parámetros. Los ficheros resultantes de una exportación sólo pueden importarse con D.P. Import. Cualquier usuario puede exportar objetos de su propiedad o su esquema al completo. Los usuarios no privilegiados deben tener permiso WRITE en el objeto directorio y deben indicar éste en el parámetro DIRECTORY o junto al nombre de fichero de volcado. Modo ayuda en línea: expdp HELP=y Modo interactivo: expdp directory=<localización> Modo fichero de parámetros: expdp PARFILE=<fichero_parametros> Nota: Si no se indica ningún otro parámetro se usan los valores por defecto en la exportación: expdat.dmp y export.log -ficheros-, exportación a nivel de esquema, SYS_EXPORT_SCHEMA_01 -trabajo- y se exportan datos y metadatos. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 232
233 DATA PUMP EXPORT. Existen cinco modos de trabajar con datapump export : - Full export (parámetro FULL). Se exporta toda la bd. Es necesario el rol EXP_FULL_DATABASE. - Esquema de usuario (parámetro SCHEMAS). Si no se posee rol EXP_FULL_DATABASE sólo es posible exportar el esquema propio. - Tabla (parámetro TABLES). Para exportar tablas no pertenecientes al propio esquema es necesario el rol EXP_FULL_DATABASE. - Tablespace (parámetro TABLESPACES). Debe tenerse el rol EXP_FULL_DATABASE. - Transport Tablespace (parámetro TRANSPORT_TABLESPACES). Permite exportar metadatos para tablas y objetos dependientes pertenecientes a un conjunto de espacios de almacenamiento. Es necesario el rol EXP_FULL_DATABASE. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 233
234 DATA PUMP EXPORT. PARÁMETROS. CONTENT =<ALL DATA_ONLY METADATA_ONLY> Indica contenido a exportar: datos, metadatos o ambos. DIRECTORY =<DATA_PUMP_DIR> Localización para los ficheros de volcado y registro. DUMPFILE = <directorio_objeto:>nombre_fichero Fichero de volcado. Por defecto expdat.dmp ESTIMATE = <BLOCKS STATISTICS> Método de estimación de espacio en disco necesario para cada tabla. ESTIMATE_ONLY =<N Y> Permite estimar el espacio consumido en una exportación sin realizarla. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 234
235 DATA PUMP EXPORT. PARÁMETROS. EXCLUDE = tipo_objeto <:cláusula> Filtrar metadatos exportados indicando objetos y tipos excluidos. Por defecto ninguno. Es excluyente con el parámetro INCLUDE. FILESIZE Tamaño máximo para ficheros de exportación (por defecto ilimitado). FULL = <N Y> Realizar una exportación de la bd al completo. En una exportacion completa no se incluyen los esquemas SYS, ORDSYS, EXFSYS, MDSYS, DMSYS, CTXSYS, ORDPLUGINS, LBACSYS, XDB, SI_INFORMTN_SCHEMA, DIP, DBSNMP, y WMSYS. Nunca se exportan tampoco los permisos sobre objetos de SYS. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 235
236 DATA PUMP EXPORT. PARÁMETROS. INCLUDE = tipo_objeto <:cláusula> Filtrar metadatos exportados indicando objetos y tipos incluidos (consultar las vistas DATABASE_EXPORT_OBJECTS, SCHEMA_EXPORT_OBJECTS y TABLE_EXPORT_OBJECTS). JOB_NAME Especificar un nombre para el trabajo, job, de exportación; coincide tambien con la tabla maestro usada para controlar la exportación. Por defecto de las forma sys_export_<modo>_xx LOGFILE = <directorio_objeto:>nombre_fichero Fichero de registro, por defecto export.log NOLOGFILE = <Y N> No crear fichero de registro. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 236
237 DATA PUMP EXPORT. PARÁMETROS. PARALELL = n Grado de paralelismo en la ejecución (por defecto 1). Su número debe ser igual al número de ficheros de volcado indicados. QUERY =<nombre_esquema.><nombre_tabla> <cláusula> Permite seleccionar filas a exportar según condiciones a cumplir. No compatible con CONTENT=METADATA_ONLY, ESTIMATE_ONLY o TRANSPORT_TABLESPACES. SCHEMAS =<lista de esquemas> Permite indicar que se realizará una exportación de esquemas, es el modo por defecto. Por defecto referencia el esquema de usuario. STATUS = nn Frecuencia con que muestra el estado del trabajo junto a una descripción de la operación actual (por defecto es cero y no muestra información hasta acabar la exportación de cada objeto). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 237
238 DATA PUMP EXPORT. PARÁMETROS. TABLES = <nombre_esquema.><nombre_tabla>,... Indica exportación en modo tabla (del propio esquema, por defecto). TABLESPACES = <nombre_espacioalmac>,... Indica tbsp. a exportar en modo tablespace. TRANSPORT_FULL_CHECK =<N Y> Chequear o no las dependencias entre los objetos residentes los espacios de almacenamiento a transportar y aquellos situados fuera del conjunto (sólo en modo transport tablespace ). TRANSPORT_TABLESPACES = <nombre_espacioalmac>,... Realizar una exportación en modo transport tablespace y espacios de almacenamiento a los que se aplica. Este modo tiene un grado de paralelismo igual a 1 y requiere disponer del rol EXP_FULL_DATABASE, sus trabajos no se pueden reiniciar. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 238
239 DATA PUMP EXPORT. MODO INTERACTIVO. Tras iniciar un trabajo, puesto que se ejecuta en el servidor, es posible interrumpir la sesión cliente y asociarse al trabajo posteriormente. También es posible modificar ciertos parámetros de forma interactiva. Para pasar a modo interactivo puede interrumpirse la conexión actual con Ctrl+C y asociar posteriormente una sesión cliente (ATTACH): /home/...> expdp attach=<nombre_trabajo> Los parámetros que pueden usarse en modo interactivo son: ADD_FILE = <directorio:><nombre_fichero>,... Permite añadir ficheros de volcado. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 239
240 DATA PUMP EXPORT. MODO INTERACTIVO. CONTINUE_CLIENT. Salir de modo interactivo y entrar en modo registro. EXIT_CLIENT. Salir de sesión cliente. El trabajo continúa ejecutándose en el servidor. HELP. Ayuda en línea. KILL_JOB. Cancelar trabajo actual y desasociar las sesiones cliente relacionadas. PARALLEL. Indicar grado paralelismo o número de trabajos. START_JOB. Reiniciar el trabajo asociado. STATUS. Mostrar informe del estado del trabajo asociado. STOP_JOB [INMEDIATE]. Detener el trabajo asociado, puede reiniciarse más tarde. Con inmediate los procesos acaban al instante, las tareas incompletas se volverán a realizar al reiniciarlo. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 240
241 DATA PUMP IMPORT. Se emplea la utilidad impdp, indicando las características de la importación en la línea de comandos o mediante un fichero de parámetros. Sólo pueden usarse en la importación ficheros creados con D.P. Export. Los usuarios deben tener permiso READ en el objeto directorio dond resida el fichero de volcado y de escritura donde se cree el fichero de registro (log) y los SQL. Modo ayuda en línea: impdp HELP=y Modo interactivo: impdp directory=<localización> Modo fichero de parámetros: impdp PARFILE=<fichero_parametros> Nota: Si no se indica ningún otro parámetro se usan los valores por defecto en la exportación: expdat.dmp e import.log -ficheros-, importación total del fichero y trabajo SYS_IMPORT_xx_01. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 241
242 DATA PUMP IMPORT. Existen cinco modos de trabajar con datapump import : - Full import (parámetro FULL). Se importa el fichero de volcado al completo (modo por defecto). Necesario el rol IMP_FULL_DATABASE si se hizo la exportación con EXP_FULL_DATABASE. - Esquema de usuario (parámetro SCHEMAS). Sólo se cargan objetos propiedad del usuario actual. Si se posee rol IMP_FULL_DATABASE pueden cargarse esquemas diferentes al propio. - Tabla (parámetro TABLES). Para importar tablas no pertenecientes al propio esquema es necesario el rol IMP_FULL_DATABASE. - Tablespace (parámetro TABLESPACES). - Transport Tablespace (parámetro TRANSPORT_TABLESPACES). Permite importar metadatos para un conjunto de espacios de almacenamiento. Es necesario el rol IMP_FULL_DATABASE. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 242
243 DATA PUMP IMPORT. PARÁMETROS. CONTENT =<ALL DATA_ONLY METADATA_ONLY> Indica contenido a importar: datos -filas, no se crean objetos-, metadatos -definiciones- o ambos. DIRECTORY =<DATA_PUMP_DIR> Por defecto DATA_PUMP_DIR para usuarios privilegiados, ninguno para el resto. Localización para los ficheros de volcado y registro. DUMPFILE = <directorio_objeto:>nombre_fichero Fichero de volcado. Por defecto expdat.dmp ESTIMATE = <BLOCKS STATISTICS> Método de estimación de espacio en disco necesario para cada tabla (sólo válido si se indica también NETWORK_LINK). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 243
244 DATA PUMP IMPORT. PARÁMETROS. EXCLUDE = tipo_objeto <:cláusula> Filtrar metadatos importados indicando objetos y tipos excluidos. Por defecto ninguno. Es excluyente con el parámetro INCLUDE. No puede usarse junto con CONTENT=DATA_ONLY. FULL = <N Y> Realizar una exportación de la bd al completo, todo el fichero fuente se importa. Si la operación de exportación que dio lugar al fichero se hizo usando el rol EXP_FULL_DATABASE, es necesario el rol IMP_FULL_DATABASE. INCLUDE = tipo_objeto <:cláusula> Filtrar metadatos importados indicando objetos y tipos incluidos (consultar las vistas DATABASE_EXPORT_OBJECTS, SCHEMA_EXPORT_OBJECTS y TABLE_EXPORT_OBJECTS). No puede usarse junto con CONTENT=DATA_ONLY. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 244
245 DATA PUMP IMPORT. PARÁMETROS. JOB_NAME Especificar un nombre para el trabajo, job, de importación; coincide tambien con la tabla maestro usada para controlar la importación. Por defecto de las forma sys_import_<modo>_xx LOGFILE = <directorio_objeto:>nombre_fichero Fichero de registro, por defecto import.log. NOLOGFILE = <Y N> No crear fichero de registro. PARALELL = n Grado de paralelismo en la ejecución (por defecto 1). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 245
246 DATA PUMP IMPORT. PARÁMETROS. QUERY =<nombre_esquema.><nombre_tabla:> <cláusula> Permite seleccionar filas a importar según condiciones a cumplir. No compatible con CONTENT=METADATA_ONLY, SQLFILE o TRANSPORT_TABLESPACES. REMAP_DATAFILE=fichero_fuente : fichero_destino Cambia el nombre de fichero_fuente por el de fichero_destino en las sentencias SQL donde se referencie la fuente (CREATE TABLESPACE, CREATE LIBRARY y CREATE DIRECTORY). Debe tenerse el rol IMP_FULL_DATABASE. REMAP_SCHEMA=esquema_fuente : esquema_destino Carga objetos del esquema fuente al esquema destino. Debe tenerse el rol IMP_FULL_DATABASE. Si el esquema destino no existe, se crea si el fichero de volcado contiene la información necesaria (CREATE USER) y se importa con suficientes privilegios (en caso contrario debe crearse previamente). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 246
247 DATA PUMP IMPORT. PARÁMETROS. REMAP_TABLESPACE=tbsp_fuente : tbsp_destino Carga todos los objetos, incluso el usuario, del esquema fuente en el esquema destino. REUSE_DATAFILES=<Y N> Indica si la operación de importación debe reutilizar los ficheros de datos existentes o no en la creación de espacios de almacenamiento. SKIP_UNUSABLE_INDEXES=<Y N> Permite indicar que no se carguen tablas que tengan índices en estado no disponible. SQLFILE=<directorio_objeto:>nombre_fichero Define un fichero en el que descargar todas las sentencias SQL tipo DDL que se hubieran ejecutado al importar (no son ejecutadas). Si se generan contraseñas en el fichero, aparecen comentadas. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 247
248 DATA PUMP IMPORT. PARÁMETROS. SCHEMAS =<lista de esquemas> Permite indicar que se realizará una importación de esquemas. Por defecto referencia el esquema de usuario, para otros es necesario el rol IMP_FULL_DATABASE. STATUS = nn Frecuencia con que muestra el estado del trabajo junto a una descripción de la operación actual y el porcentaje que falta para acabar el trabajo (por defecto es cero). TABLE_EXISTS_ACTION = <SKIP APPEND TRUNCATE REPLACE> Indica qué hacer si la tabla a importar ya existe. Si se indica CONTENT=DATA_ONLY la opción por defecto es APPEND): SKIP. Deja la tabla tal como está e importa siguiente objeto. APPEND. Carga filas, el contenido anterior no se modifica. TRUNCATE. Borra las filas existentes antes de cargar. REPLACE. Borra la tabla y la carga al completo. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 248
249 DATA PUMP IMPORT. PARÁMETROS. TABLES = <nombre_esquema.><nombre_tabla><:partición>,... Indica exportación en modo tabla (por defecto del propio esquema; para tablas de otro esquema debe tenerse el rol IMP_FULL_DATABASE). TABLESPACES = <nombre_espacioalmac>,... Indica tbsp. a exportar en modo tablespace. TRANSFORM=<SEGMENT_ATTRIBUTES STORAGE>:<N Y><:TABLE :INDEX> Permite modificar parámetros en la sentencia de creación DDL a importar: SEGMENT_ATTRIBUTES. Atributos físicos, storage, tablespaces, logging. STORAGE. Cláusula storage. Por defecto se aplica a todos los tipos de objetos. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 249
250 DATA PUMP IMPORT. PARÁMETROS. TRANSPORT_DATAFILES Conjunto de ficheros a importar en el destino en modo transport tablespace. TRANSPORT_TABLESPACES = <nombre_espacioalmac>,... Realizar una importación en modo transport tablespace y espacios de almacenamiento a los que se aplica. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 250
251 DATA PUMP IMPORT. MODO INTERACTIVO. Al igual que con data pump export, tras iniciar un trabajo, ya que es ejecutado en el servidor, es posible interrumpir la sesión cliente y asociarse al trabajo posteriormente. También es posible modificar ciertos parámetros de forma interactiva. Para pasar a modo interactivo puede interrumpirse la conexión actual con Ctrl+C y asociar posteriormente una sesión cliente (ATTACH): /home/...> impdp attach=<nombre_trabajo> Los parámetros que pueden usarse en modo interactivo son: CONTINUE_CLIENT. Salir de modo interactivo y entrar en modo registro. EXIT_CLIENT. Salir de sesión cliente. El trabajo continúa ejecutándose en el servidor. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 251
252 DATA PUMP IMPORT. MODO INTERACTIVO. HELP. Ayuda en línea. KILL_JOB. Cancelar trabajo actual y desasociar las sesiones cliente relacionadas. PARALLEL. Indicar grado paralelismo o número de trabajos. START_JOB. Reiniciar el trabajo asociado. STATUS. Mostrar informe del estado del trabajo asociado. STOP_JOB [INMEDIATE]. Detener el trabajo asociado, puede reiniciarse más tarde. Con inmediate los procesos acaban al instante, las tareas incompletas se volverán a realizar al reiniciarlo. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 252
253 DATA PUMP Y PARAMETROS. Ciertos parámetros de inicialización pueden afectar al rendimiento de data pump. Puede probarse a usar las siguientes asignaciones: DISK_ASYNCH_IO = TRUE DB_BLOCK_CHECKING = FALSE DB_BLOCK_CHECKSUM = FALSE Además los parámetros siguientes deben tener valores lo suficientemente altos como para permitir el máximo grado de paralelismo: PROCESSES SESSIONS PARALLEL_MAX_SERVERS Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 253
254 TBSP TRANSPORTABLES Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 254
255 TABLESPACES TRANSPORTABLES. Permite trasladar un conjunto de espacios de almacenamiento desde una bd a otra (sólo entre bd con el mismo juego de caracteres -character set- y sobre plataformas compatibles). Los tbsp transportados pueden ser gestionados localmente o no. No necesitan ser del mismo tamaño de bloque que el tamaño de bloque estándar de la bd destino. Es util, por ejemplo, para: Realizar una recuperación a un punto en el tiempo Tablespace Point-in-Time Recovery (TSPITR). Archivo de datos históricos. Copia de tbsp. de sólo lectura en múltiples bd. Migración de bd entre distintas plataformas (SQL> SELECT * FROM V$TRANSPORTABLE_PLATFORM;). Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 255
256 TBSP TRANSPORTABLES. LIMITACIONES. Ambas bbdd deben usar el mismo juego de caracteres -character set- y el mismo juego de caracteres nacional -national character set-. No puede transportarse un tbsp a una bd destino en el cual exista un tbsp con el mismo nombre (alguno de los dos debe renombrarse). Los tbsp transportables no soportan: Vistas materializadas Tablas particionadas Migración del tbsp SYSTEM u objetos de SYS... Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 256
257 TBSP TRANSPORTABLES. COMPATIBILIDAD. Al definir un conjunto transportable, Oracle calcula el más bajo nivel de compatibilidad al cual la bd destino debe trabajar. A partir de Oracle 10g, un tbsp. puede transportarse a una bd con el mismo o superior nivel de compatibilidad. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 257
258 TBSP TRANSPORTABLES. PROCESO 1/6. Determinar la compatibilidad de las plataformas. Sólo es necesario si se trabaja con plataformas origen y destino diferentes. Debe ejecutarse la sentencia: SQL> SELECT d.platform_name, ENDIAN_FORMAT FROM V$TRANSPORTABLE_PLATFORM tp, V$DATABASE d WHERE tp.platform_name = d.platform_name; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 258
259 TBSP TRANSPORTABLES. PROCESO 2/6. Seleccionar un conjunto de tbsp autocontenidos. No deben haber dependencias entre objetos del conjunto de tbsp transportables y aquellos que no sean del mismo. Se incumple si, por ejemplo, existe: Un índice dentro del conjunto está definido para una tabla fuera del mismo (sí puede existir un índice fuera del conjunto definido para una tabla del mismo). Una tabla particionada parcialmente contenida en el conjunto. Una constraint de integridad referencial apuntando a una tabla (al transportar tbsp pueden incluirse restricciones de integridad o no). Una tabla con una columna LOB que referencia LOBS fuera del conjunto. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 259
260 TBSP TRANSPORTABLES. DBMS_TTS. Para determinar si un conjunto de tbsp es autocontenido se emplea el procedimiento TRANSPORT_SET_CHECK del paquete DBMS_TTS (debe poseerse el rol EXECUTE_CATALOG_ROLE). DBMS_TTS.TRANSPORT_SET_CHECK ( ts_list IN CLOB, incl_constraints IN BOOLEAN DEFAULT FALSE, full_check IN BOOLEAN DEFAULT FALSE); ts_list... Lista de tbsp, separados por coma. incl_constraints... TRUE para considerar las restricciones de integridad referencial en el análisis (valor por defecto). full_closure... Por defecto FALSE. Determinar o no si está autocontenido estrictamente (dependencias desde-hacia). Para TSPITR debe ser puesto a TRUE. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 260
261 TBSP TRANSPORTABLES. DBMS_TTS. Para una aplicación estricta, el parámetro FULL_CHECK debe tener el valor TRUE (por ejemplo, Tablespace Point-in-Time Recovery -TSPITR-). Todas las excepciones producidas pueden verse a través de la vista TRANSPORT_SET_VIOLATIONS. Si la vista está vacía, el conjunto de tbsp es autocontenido. SQLPLUS> EXECUTE DBMS_TTS.TRANSPORT_SET_CHECK('NOMINA,PAGOS', TRUE); SQLPLUS> SELECT * FROM TRANSPORT_SET_VIOLATIONS; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 261
262 TBSP TRANSPORTABLES. PROCESO 3/6. Generar un conjunto de tbsp. transportables. Cambiar el estado de los tbsp a sólo lectura. ALTER TABLESPACE <nombre_tbsp> READ ONLY; Realizar la exportación de metadatos de los tbsp a migrar (sólo se exportan metadatos) -conexión con privilegio SYSDBA-. Debe poseerse el rol EXP_FULL_DATABASE para realizar la exportación. DUMPFILE = expdat.dmp DIRECTORY = dpump_dir TRANSPORT_TABLESPACES = (NOMINA, PAGOS) Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 262
263 TBSP TRANSPORTABLES. PROCESO 3/6. Si el autocontenido debe ser estricto: DUMPFILE = expdat.dmp DIRECTORY = dpump_dir TRANSPORT_TABLESPACES = (NOMINA, PAGOS) TRANSPORT_FULL_CHECK=Y TRANSPORT_FULL_CHECK es un parámetro que verifica que un conjunto de tbsp a recuperar no tiene dependencias (hacia/desde). Si el conjunto de tbsp no es autocontenido, la exportación falla. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 263
264 TBSP TRANSPORTABLES. PROCESO 3/6. Si la codificación entre las plataformas es distinta, deben convertirse los ficheros de datos empleando la orden CONVERT de RMAN. $ RMAN TARGET / Recovery Manager: Release Copyright (c) 1995, 2003, Oracle Corporation. All rights connected to target database: xxxx (DBID=...) RMAN> CONVERT TABLESPACE sales_1,sales_2 2> TO PLATFORM 'Microsoft Windows NT' 3> FORMAT '/temp/%u'; Starting backup at 08-APR Finished backup at 08-APR-03 RMAN> exit Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 264
265 TBSP TRANSPORTABLES. PROCESO 4/6. Copiar los ficheros de datos correspondientes a los tbsp a transportar al lugar de destino. Hacer igual con el fichero resultado de la exportación. Puede hacerse de distintas formas como, por ejemplo, cualquier utilidad que permita copiar ficheros -ftp, copia de s.o.-, el paquete DBMS_FILE_TRANSFER,... Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 265
266 TBSP TRANSPORTABLES. PROCESO 5/6. Integrar el conjunto de tbsp transportados. Importar la información relativa a los tbsp. IMPDP system/password DUMPFILE=expdat.dmp DIRECTORY=dpump_dir TRANSPORT_DATAFILES= /salesdb/sales_101.dbf REMAP_SCHEMA=(dcranney:smith) REMAP_SCHEMA=(jfee:williams) TRANSPORT_DATAFILES identifica los ficheros de datos correspondientes a los tbsp a importar REMAP_SCHEMA cambia los propietarios de los objetos de bd. Si no se indica se crean en el mismo esquema que el origen y dichos esquemas deben existir en el destino o, en caso contario, generan un error. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 266
267 TBSP TRANSPORTABLES. PROCESO 6/6. Comprobar si se han generado errores en el proceso de importación. Si todo ha ido bien, los tbsp se habrán copiado en modo sólo lectura. Cambiar el espacio al estado de lectura/escritura. ALTER TABLESPACE <nombre_tbsp>read WRITE; Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 267
268 TBSP TRANSPORTABLES. PROCESO 6/6. Si se migran tbsp de una tamaño de bloque distinto al tamaño de bloque estánsar de la bd destino, en esta debe añadirse el parámetro de inicialización DB_nK_CACHE_SIZE. DB_nK_CACHE_SIZE (donde n = 2, 4, 8, 16, 32) es un parámetro dinámico (modificable con ALTER SYSTEM) que permite especificar el tamaño de la caché para nk buffers. Por ejemplo, si el tbsp a migrar tiene 8K de tamaño de bloque y la bd destino 4K, debe incluirse DB_8K_CACHE_SIZE como parámetro. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 268
269 TBSP TRANSPORTABLES. RESUMEN. Proceso. Cambiar los espacios de almacenamiento al estado de sólo lectura. Trasladar la información almacenada en el diccionario (exportación de metadatos) a la bd destino. Copiar los ficheros de datos correspondientes a dichos espacios de almacenamiento en el destino. Integrar la información en la bd destino (importación). Cambiar el espacio al estado de lectura/escritura. Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 269
270 VISTAS. V$DATAFILE V$TABLESPACES V$LOGFILE V$CONTROLFILE V$BACKUP V$INSTANCE V$ARCHIVED_LOG Administración Avanzada de Oracle 10g COPIAS DE SEGURIDAD 270
271 TEMA 10. RECUPERACION. Administración Avanzada de Oracle 10g RECUPERACION 271
272 TEMA 10. RECUPERACION. RECUPERACION. ESTRUCTURAS DE RECUPERACION. PRINCIPIOS DE RECUPERACION. TIPOS DE RECUPERACION. COMPLETA. INCOMPLETA. FLASHBACK. ESTRATEGIAS DE RECUPERACION. RESTAURACION DE FICHEROS. FICHEROS DE COPIA. REDO ARCHIVADO. RESTAURAR Y RECREAR F. CONTROL. Administración Avanzada de Oracle 10g RECUPERACION 272
273 TEMA 10. RECUPERACION. RECUPERAR F. CONTROL. PERDIDA DE MIEMBRO MULTIPLEXADO. PERDIDA DE TODOS MIEMBROS. PERDIDA DE MIEMBROS Y COPIAS. RECUPERACION COMPLETA BD CERRADA. BD ABIERTA. RECUPERACION INCOMPLETA. CANCEL BASED. TIME BASED. CHANGE BASED. RECUPERACION PARALELA. APERTURA BD TRAS RECUPERACION. Administración Avanzada de Oracle 10g 273
274 TEMA 10. RECUPERACION. TSPITR ( Tbsp. Point in time recovery ). PRELIMINARES. CREACION BD AUXILIAR. TRANSPORTAR TBSP. OPERACIONES BD AUXILIAR. TRANSPORTAR TBSP. OPERACIONES BD EN USO. VISTAS. Administración Avanzada de Oracle 10g 274
275 RECUPERACION Y ESTRUCTURAS Administración Avanzada de Oracle 10g RECUPERACION 275
276 RECUPERACION. La posibilidad de un fallo de sistema o de máquina siempre existe. Si ocurre y afecta a la bd, esta debe recuperarse. El objetivo es asegurar que los efectos de las transacciones validadas se reflejen en la bd recuperada y la vuelta a una operación normal de la bd lo antes posible. Existen distintos tipos de fallos que pueden hacer necesario o no la intervención del administrador de bd y la recuperación: Error de usuario. Por ejemplo, el borrado de una tabla (puede recuperarse de una copia lógica previa o mediante el uso de flashback ). Es necesaria la intervención del administrador y la recuperación. Fallo de una sentencia. Se deshace cualquier cambio automáticamente y se devuelve el control al usuario. Administración Avanzada de Oracle 10g RECUPERACION 276
277 RECUPERACION. Fallo de proceso. P.ej. desconexión anormal. PMON lo detecta, hace rollback de transaccion y libera recursos. Fallo de instancia. Debido a problemas de máquina, un fallo de s.o.... Oracle realiza sin intervención del usuario la recuperación de la instancia ( crash recovery ). Fallo en disco ( media failure ). Es necesaria la intervención del administrador y la recuperación ( media recovery ). Deben restaurarse ficheros desde copia física usando sentencias de s.o. y realizar recuperación con la sentencia SQL*Plus RECOVER (modo ARCHIVELOG). Media recovery puede ser completa -todo redo generado se aplica- o incompleta -no se aplica todo el redo generado y se obtiene una versión anterior de la bd- (en ambos casos la recuperación afecta a la bd en su totalidad, al completo). TSPITR, tablespace point-in-time recovery, permite realizar una recuperación incompleta de un tbsp concreto. Administración Avanzada de Oracle 10g RECUPERACION 277
278 ESTRUCTURAS DE RECUPERACION. Ficheros de datos ( datafiles ) y bloques de datos. La bd se estructura en unidades lógicas llamadas tablespaces, las cuales se asocian con uno o más ficheros de datos, datafiles. La bd gestiona el espacio en dichos ficheros en unidades llamadas bloques de datos (la mínima unidad de almacenamiento que puede manejar la bd). Los datos nuevos o modificados no se escriben a los datafiles de forma inmediata sino que se almacenan en memoria y se escriben a intervalos. Si surge un fallo que hace caer la bd habrán cambios guardados en memoria que no han sido aplicados. La copia física de los datafiles es fundamental en cualquier estrategia de copia y recuperación. Administración Avanzada de Oracle 10g RECUPERACION 278
279 ESTRUCTURAS DE RECUPERACION. Redo Log. Conjunto de ficheros que registran todos los datos modificados en memoria que aun no han sido escritos a los ficheros de datos. Cada bd necesita al menos dos grupos de redo en línea con un miembro de redo. Este redo en línea debe guardarse y da lugar al llamado redo log archivado (modo archivelog de la bd). En modo ARCHIVELOG la bd puede recuperarse completamente de fallos de instancia y de disco. También puede hacerse copia mientras está abierta y en uso. En modo NOARCHIVELOG, la bd puede ser recuperada de un fallo de instancia pero no de disco. La bd sólo puede copiarse si está cerrada de forma consistente. Administración Avanzada de Oracle 10g RECUPERACION 279
280 ESTRUCTURAS DE RECUPERACION. Registros de undo. Almacenados en espacios de almacenamiento de undo o en rollback segments (inusual en este caso). Contienen las imagenes anteriores de aquellos datos que han sido modificados y se emplean para deshacer las transacciones no validadas tras la aplicación de todo el redo log. Ficheros de control. Guardan información de las estructuras físicas de la bd y su estado: Información sobre la bd (RESETLOGS SCN y time stamp) usada en la recuperación. Administración Avanzada de Oracle 10g RECUPERACION 280
281 ESTRUCTURAS DE RECUPERACION. Información sobre redo log en línea actual. Registros de log (log sequence numbers, SCN en cada log) Información sobre bloques de ficheros de datos corruptos. Copias de bd ( backups ). Realizadas mediante Recovery Manager o con utilidades s.o.. Administración Avanzada de Oracle 10g RECUPERACION 281
282 PRINCIPIOS Y TIPOS DE RECUPERACION Administración Avanzada de Oracle 10g RECUPERACION 282
283 PRINCIPIOS DE RECUPERACION. Se aborda a lo largo del tema la recuperación asumiendo que la bd se encuentra en modo ARCHIVELOG y usando métodos de recuperación manuales. La recuperación básicamente implica dos acciones: Restaurar el/los fichero/s dañados desde el dispositivo de copia preciso (cinta, disco,...) y hacerlo accesible al servidor de bd (permisos,...). Recuperación o aplicar los cambios al fichero/s dañado/s empleando el redo archivado y en línea hasta que la bd se encuentre en el SCN deseado (generalmente el momento previo al fallo que obligó a la recuperación). Administración Avanzada de Oracle 10g RECUPERACION 283
284 PRINCIPIOS DE RECUPERACION. Administración Avanzada de Oracle 10g RECUPERACION 284
285 TIPOS DE RECUPERACION: COMPLETA. Completa. Se emplean datos de redo combinados con una copia de la bd, tbsp., o fichero de datos para actualizarlo al punto más actual posible. Se aplican todos los cambios anotados en el redo. Si se pretende recuperar la bd en su conjunto, debe: Montarse la bd. Asegurarse de que todos los ficheros a recuperar están en línea. Restaurar una copia de la bd o ficheros a recuperar. Aplicar redo (en línea, archivado o ambos). Administración Avanzada de Oracle 10g RECUPERACION 285
286 TIPOS DE RECUPERACION: COMPLETA. Si se pretende recuperar un tbsp o fichero de datos, debe: Si la bd está abierta, poner el tbsp o fichero fuera de línea. Restaurar una copia de los ficheros a recuperar. Aplicar redo (en línea, archivado o ambos). Administración Avanzada de Oracle 10g RECUPERACION 286
287 TIPOS DE RECUPERACION: INCOMPLETA. Incompleta. Se emplea una copia de la bd para generar una versión no actual de la bd. No se aplican todos los cambios posteriores a la última copia. Se puede realizar sobre la bd en su conjunto: DBPITR - db point-in-time recovery -. En los siguientes casos: Un fallo en disco destroza algunos o todos los redo en línea. Se ha producido una pérdida de datos, por ejemplo el borrado de una tabla ( conveniente tener copia lógica, aunque en este punto también puede usarse flashback ). No puede realizarse una recuperación completa pues se han perdido redo archivados. Se han perdido los ficheros de control y debe usarse una copia para abrir la bd. Administración Avanzada de Oracle 10g RECUPERACION 287
288 TIPOS DE RECUPERACION: INCOMPLETA. Para realizarla deben recuperarse todos los ficheros de datos precisos de copias anteriores a aquel momento al que se pretenda restaurar y abrir la bd con la opción RESETLOGS. Al indicar alter database open resetlogs; se reinicia el número de secuencia de log actual -número 1- y se desecha cualquier información de redo no aplicada durante la recuperación, pone a cero. Es conveniente realizar una copia completa de la bd si se ha producido cualquier pérdida de archivados. Un caso particular es la recuperación de un tbsp point in time (TSPITR). Permite recuperar uno o más tbsp. a un momento en el tiempo distinto del resto de la bd. Administración Avanzada de Oracle 10g RECUPERACION 288
289 INCONVENIENTES RECUPERACION TRADICIONAL Existen inconvenientes en la recuperación completa o incompleta señaladas anteriormente (en general en el pointin-time recovery ): No pueden devolverse objetos concretos a un estado anterior, sólo la bd en su conjunto (en casos concretos puede realizarse un tablespace point-in-time recovery -TSPITR- ). La bd no está disponible durante el proceso de point-in-time recovery. Point-in-time recovery puede ser pesado dado que todos los ficheros de datos deben restaurarse y después recuperar la bd. Las utilidades flashback proporcionadas por Oracle son más eficientes que la recuperación tradicional en la mayoría de los casos. Administración Avanzada de Oracle 10g RECUPERACION 289
290 TIPOS DE RECUPERACION: FLASHBACK. Flashback proporciona un conjunto de características que permiten evitar la restauración de la bd y la realización de recuperación point-in-time. La mayoría de estas características se desarrollan a un nivel lógico, como son: Oracle Flashback Query. Consultar contenido de bd en un tiempo anterior. Oracle Flashback Version Query. Ver estados anteriores de datos. Oracle Flashback Transaction Query. Ver transacciones que afectan a un tabla a lo largo del tiempo. Oracle Flashback Table. Devolver tablas a un estado previo. Oracle Flashback Drop. Deshace el efecto de drop table. Fl. Table, Fl. Query, Fl. Trans. Query y Fl. Version Query están relacionadas con undo. Fl. Drop se basa en el recycle bin. Administración Avanzada de Oracle 10g RECUPERACION 290
291 TIPOS DE RECUPERACION: FLASHBACK. A nivel físico, Oracle Flashback Database permite en el caso de tener ficheros de datos en los que se desea deshacer cambios volver a su estado anterior. Esta forma de trabajo es mucho más rápida pues no necesita de la restauración de ficheros ni de la aplicación de todo el conjunto del redo archivado. Es necesario configurar un área de memoria flash recovery area y habilitar el flashback logging pues no lo está por defecto. El proceso implica: Averiguar SCN al que retornar, o determinar el punto de retorno apropiado. Consultar CURRENT_SCN en V$DATABASE y la vista V$FLASHBACK_DATABASE_LOG: SQL> SELECT CURRENT_SCN FROM V$DATABASE; SQL> SELECT OLDEST_FLASHBACK_SCN, OLDEST_FLASHBACK_TIME FROM V$FLASHBACK_DATABASE_LOG; Administración Avanzada de Oracle 10g RECUPERACION 291
292 TIPOS DE RECUPERACION: FLASHBACK. Usar, en su caso, el resto de funcionalidades flashback para identificar el SCN en que se produjeron los cambios a deshacer. Ejecutar Fl.Database FLASHBACK DATABASE TO SCN 46963; FLASHBACK DATABASE TO TIMESTAMP (SYSDATE-1/24); FLASHBACK DATABASE TO TIMESTAMP timestamp ' :00:00'; FLASHBACK DATABASE TO TIMESTAMP to_timestamp (' :30:00', 'YYYY-MM-DD HH24:MI:SS'); Abrir la bd en modo sólo lectura y comprobar el resultado. Si es necesario realizar flashback de nuevo a un SCN distinto, debe usarse RECOVER DATABASE para volver al presente y hacer de nuevo flashback. Si el resultado de flashback database es correcto, abrir la bd con la opción RESETLOGS. Administración Avanzada de Oracle 10g RECUPERACION 292
293 ESTRATEGIAS DE RECUPERACION Administración Avanzada de Oracle 10g RECUPERACION 293
294 ESTRATEGIAS DE RECUPERACION. Frente a errores de usuario. Flashback Database. Permite devolver la bd al completo a un estado anterior sin necesidad de restaurar, tomando como referncia un SCN o creando los puntos de restauración, restore points, necesarios. Debe estar configurada una flash recovery area. Recuperación de la bd Point-in-Time. Se recupera un tbsp. o la bd al completo a un momento concreto. Importación desde copia lógica. Frente a fallos de máquina ( media failure ). El tipo de fallo (fallo físico, sobreescritura, borrado o corrupción de un fichero de bd,...) determina la técnica de recuperación a usar. Administración Avanzada de Oracle 10g RECUPERACION 294
295 ESTRATEGIAS DE RECUPERACION. Si la bd está en modo NOARCHIVELOG y hay un fallo en disco, media failure, se debe restaurar la copia completa y consistente más reciente y abrir la bd (si se quisiera la bd actualizada hasta el momento del fallo, habría que introducir todos los cambios manualmente imposible!). Si la bd está en modo ARCHIVELOG y los redo están disponibles, puede emplearse una recuperación completa o incompleta para reconstruir la bd. Administración Avanzada de Oracle 10g RECUPERACION 295
296 ESTRATEGIAS DE RECUPERACION. Probar los mecanismos de copia y recuperación en un entorno apropiado. Planificar la respuesta a los distintos tipos de incidentes. Se atenderá al siguiente procedimiento general: Determinar la información que se necesita recuperar y restaurar. Restaurar copia de los ficheros y cualquier fichero de redo archivado que sea necesario (a nivel de s.o.). Recuperar los ficheros. Abrir la bd. Si se hace una recuperación incompleta o se ha restaurado una copia del fichero de control, debe abrirse con la opción RESETLOGS. Administración Avanzada de Oracle 10g RECUPERACION 296
297 RESTAURACION Y RECUPERACION Administración Avanzada de Oracle 10g RECUPERACION 297
298 RESTAURACION DE FICHEROS. Restaurar un fichero es reemplazarlo por una copia previa del mismo. Se trata de una operación previa a la recuperación de cualquier fichero dañado. Es necesario, por tanto, guardar la localización de los ficheros de datos, control, redo en línea, redo archivado, inicialización, comunicaciones y contraseñas. Localización datos, control y redo en línea. SELECT NAME FROM V$DATAFILE UNION ALL SELECT MEMBER FROM V$LOGFILE UNION ALL SELECT NAME FROM V$CONTROLFILE; Administración Avanzada de Oracle 10g RECUPERACION 298
299 RESTAURAR FICHEROS DE COPIA. Localización redo archivado. SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME LIKE log_archive_dest% AND VALUE IS NOT NULL ; Formato de redo archivado. SHOW PARAMETER LOG_ARCHIVE_FORMAT Listado de redo archivado. SELECT NAME FROM V$ARCHIVED_LOG; Administración Avanzada de Oracle 10g RECUPERACION 299
300 FICHEROS A RESTAURAR. La vista V$RECOVER_FILE muestra el estado de los ficheros que necesitan recuperación, el motivo, el SCN donde debe comenzar,... SELECT * FROM V$RECOVER_FILE; Nota:La vista no es util si el fichero de control en uso es una copia restaurada o uno nuevo creado tras el fallo en disco ( media failure ), pues, en este caso, no contiene la información necesaria para actualizar v$recover_file. De V$DATAFILE y V$TABLESPACE pueden obtenerse nombres de fichero y de tablespaces de aquellos ficheros que necesitan recuperación. SELECT r.file#, d.name, t.name, d.status, r.error, r.change#, r.time FROM V$RECOVER_FILE r, V$DATAFILE d, V$TABLESPACE t WHERE t.ts# = d.ts# AND d.file# = r.file# Administración Avanzada de Oracle 10g RECUPERACION 300
301 RESTAURAR REDO ARCHIVADO. El redo archivado debe ser accesible durante la recuperación en el lugar definido como primer destino de archivado (log_archive_dest_1). Si es necesario indicar una localización alternativa puede hacerse e indicarlo mediante el parámetro LOGSOURCE -orden SET de SqlPlus o el parámetro RECOVER... FROM de la sentencia ALTER DATABASE de forma previa a la recuperación-. También especificando el nuevo destino: RECOVER AUTOMATIC TABLESPACE <tbsp> FROM \...\... ; Para averiguar que ficheros de redo son necesarios, se consultan las vistas: V$ARCHIVED_LOG... Nombres de todos los ficheros de redo archivado. Administración Avanzada de Oracle 10g RECUPERACION 301
302 RESTAURAR REDO ARCHIVADO. V$RECOVERY_LOG... redo archivado necesario para la recuperación (sólo contiene información en caso de necesitarse recuperación para un fichero de datos, no si se trata de una recuperación planificada por un fallo de usuario). Administración Avanzada de Oracle 10g RECUPERACION 302
303 RESTAURAR FICHEROS DE COPIA. Determinar los ficheros de datos a recuperar. Si la bd está abierta, poner los tablespaces a recuperar fuera de línea: ALTER TABLESPACE users OFFLINE IMMEDIATE; Restaurar copias de los ficheros dañados a su misma localización: cp /copia/tbs_24.bak /u02/.../tbs_24.f Recuperar (RECOVER) y poner el tbsp. recuperado en línea: RECOVER TABLESPACE <tbsp>; ALTER TABLESPACE <tbsp> ONLINE; Administración Avanzada de Oracle 10g RECUPERACION 303
304 RESTAURAR Y RECREAR F. CONTROL. Si un fallo de disco, media failure, afecta a los ficheros de control (multiplexados o no), la bd sigue trabajando hasta la primera vez que un proceso background necesita acceder a los mismos; en este instante la bd se cierra automaticamente. Si el fallo es temporal y la bd todavía no se ha cerrado, puede intentarse corregir el fallo. Si la bd cierra, puede arrancarse tras corregir el problema y restaurar el acceso a los ficheros de control. Administración Avanzada de Oracle 10g RECUPERACION 304
305 RECUPERAR F. CONTROL. PERDIDA DE MIEMBRO MULTIPLEXADO. En el caso de que un fallo haya dañado uno o más ficheros de control y, al menos, exista un f.control no dañado. Suponiendo que el disco y el sistema de ficheros donde reside el fichero dañado funcionan correctamente: Parar la bd: SHUTDOWN ABORT Corregir el problema hw. Copiar un fichero de control intacto sobre el/los ficheros/s de control dañado/s cp /u02/.../control01.ctl /u03/.../control02.ctl Arrancar la bd: STARTUP Administración Avanzada de Oracle 10g RECUPERACION 305
306 RECUPERAR F. CONTROL. PERDIDA DE MIEMBRO MULTIPLEXADO. Si el disco y el sistema de ficheros donde reside el fichero dañado NO funcionan correctamente: Parar la bd: SHUTDOWN ABORT Copiar el fichero de control intacto a una localización alternativa: cp /u02/.../control01.ctl /u05/.../control02.ctl Editar el fichero de parámetros de inicialización y modificar la variable CONTROL_FILES de forma que contenga SOLO las localizaciones actuales de los ficheros de control válidos (se excluyen el resto). CONTROL_FILES = '/u02/.../control01.ctl', '/u05/.../control02.ctl' Arrancar la bd: STARTUP Administración Avanzada de Oracle 10g RECUPERACION 306
307 RECUPERAR F. CONTROL. PERDIDA DE TODOS MIEMBROS. No puede montarse ni abrirse la bd hasta tener un fichero de control accesible. Si se intenta montar la bd, se produce el error ORA-00205: error in identifying controlfile, check alert log for more info. Al restaurar una copia del fichero de control, debe abrirse la bd con la opción RESETLOGS. Si se tiene copia del fichero de control. Suponiendo que el disco y el sistema de ficheros donde reside el fichero dañado funcionan correctamente: Parar la bd: SHUTDOWN ABORT Corregir el problema hw. Administración Avanzada de Oracle 10g RECUPERACION 307
308 RECUPERAR F. CONTROL. PERDIDA DE TODOS MIEMBROS. Restaurar la copia del fichero de control a todos los destinos indicados en el parámetro de inicialización CONTROL_FILES (orden cp). Montar la bd: STARTUP MOUNT Recuperar, sentencia RECOVER con la claúsula USING BACKUP CONTROLFILE. Indicar UNTIL CANCEL si se está realizando una recuperación incompleta: RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL Aplicar los log archivados. Si se recibe un mensaje indicando que alguno no existe, probablemente significa que la información necesaria está en los redo en línea -cambios no archivados al suceder el problema-. Administración Avanzada de Oracle 10g RECUPERACION 308
309 RECUPERAR F. CONTROL. PERDIDA DE TODOS MIEMBROS. ORA-00279: change generated at 06/08/ :59:47 needed for thread 1 ORA-00289: suggestion : /oracle/work/arc_dest/arcr_1_111.arc ORA-00280: change for thread 1 is in sequence #111 Specify log: {<RET>=suggested filename AUTO CANCEL} Puede indicarse el nombre de un log en línea y pulsarse retorno de carro: /oracle/dbs/t1_log1.f Log applied. Media recovery complete. Si los redo en línea no están accesibles, puede cancelarse la recuperación sin aplicarlos. En este caso debe recrearse el fichero de control si los cambios en los redo en línea son necesarios. Abrir la bd con la opción RESETLOGS: ALTER DATABASE OPEN RESETLOGS; Realizar una copia completa de la bd. Administración Avanzada de Oracle 10g RECUPERACION 309
310 RECUPERAR F. CONTROL. PERDIDA DE TODOS MIEMBROS. Si no puede restaurarse el fichero de control a su localización original; debe indicarse una nueva localización en el fichero de parámetros, variable CONTROL_FILES. La restauración es idéntica al caso en que se restaure a la localización por defecto, salvo que debe modificarse el fichero de parámetros de forma previa a la misma y al montaje de la bd. Administración Avanzada de Oracle 10g RECUPERACION 310
311 RECUPERAR F. CONTROL. PERDIDA DE MIEMBROS Y COPIAS. Si los ficheros de control se han dañado pero el redo en línea permanece, puede recuperarse la bd tras crear un fichero de control. No se requiere abrir la bd, en este caso, con la opción RESETLOGS. Para crear u fichero de control: Arrancar la bd, no montar: STARTUP NOMOUNT Crear el fichero de control, indicando la opción NORESETLOGS. Por ejemplo: CREATE CONTROLFILE REUSE DATABASE SALES NORESETLOGS ARCHIVELOG... Tras crear el fichero de control, Oracle monta la bd. Recuperar la bd: RECOVER DATABASE Abrir la bd: ALTER DATABASE OPEN; Realizar copia del fichero de control: ALTER DATABASE BACKUP CONTROLFILE TO '/.../copia_fcontrol' REUSE; Administración Avanzada de Oracle 10g RECUPERACION 311
312 RECUPERAR F. CONTROL. PERDIDA DE MIEMBROS Y COPIAS. Existen distintas opciones para crear el fichero de control: En el caso de haber ejecutado un ALTER DATABASE BACKUP CONTROLFILE TO TRACE NORESETLOGS tras el último cambio estructural, o antes de haber realizado este cambio; puede usarse el fichero de traza generado (en caso de no reflejar los últimos cambios, debe editarse y añadirlos). Si se ha realizado una copia a fichero binario, ALTER DATABASE BACKUP CONTROLFILE TO fichero;, debe copiarse el fichero, crear una instancia temporal, montar la bd -STARTUP MOUNT- y realizar una copia a traza -ALTER DATABASE BACKUP CONTROLFILE TO TRACE NORESETLOGS-. Se edita, si es necesario, y se realizan los cambios oportunos. Administración Avanzada de Oracle 10g RECUPERACION 312
313 RECUPERAR F. CONTROL. PERDIDA DE MIEMBROS Y COPIAS. Si no existe copia del fichero de control, debe crearse manualmente (sentencia CREATE CONTROLFILE). Administración Avanzada de Oracle 10g RECUPERACION 313
314 CONDICIONES RECUPERACION. Para realizar cualquier tipo de media recovery debe tenerse en cuenta que: Deben tenerse privilegios de administrador. Una sesión no puede comenzar una recuperación completa mientras otra realiza una recuperación tipo incompleta. No puede realizarse media recovery si se está conectado a la bd a través de un proceso servidor compartido ( shared server ). Debe usarse la sentencia SQL*Plus RECOVER, y realizar una recuperación automática; así no se interroga al aplicar cada log archivado. Los nombres de estos, se obtienen concatenando LOG_ARCHIVE_FORMAT y LOG_ARCHIVE_DEST_n, siendo n el mayor valor entre los destinos habilitados. Administración Avanzada de Oracle 10g RECUPERACION 314
315 CONDICIONES RECUPERACION. Hay dos formas de automatizar la aplicación de los redo necesarios en la recuperación: Ejecutando SET AUTORECOVERY ON antes de RECOVER. Startup mount Set autorecovery on Recover database alter database open; Indicando la claúsula AUTOMATIC como opción de la sentencia RECOVER. Startup mount Recover automatic database alter database open; Administración Avanzada de Oracle 10g RECUPERACION 315
316 RECUPERACION COMPLETA. Se recuperan las copias al SCN actual; bien la bd al completo, o tbsp o ficheros de datos individuales. No es necesario abrir la bd con RESETLOGS, de forma que pueden recuperarse ciertos ficheros de datos en un momento y los restantes posteriormente. Administración Avanzada de Oracle 10g RECUPERACION 316
317 RECUPERACION COMPLETA. BD CERRADA. 1.- Preliminares. Cerrar la bd: SHUTDOWN ABORT. Intentar corregir el fallo que origina el error (puede que el fallo sea temporal y los datos no hayan sido dañados). 2.- Restaurar copias de los ficheros dañados o perdidos. Determinar los ficheros de datos a recuperar. Identificar la copia más reciente de los ficheros dañados (no restaurar ficheros de datos no afectados ni redo en línea). Restaurar los ficheros. Administración Avanzada de Oracle 10g RECUPERACION 317
318 RECUPERACION COMPLETA. BD CERRADA. 3.- Recuperar la bd. Montar la bd: STARTUP MOUNT. Obtener los nombres de los ficheros de datos y su estado: SELECT NAME,STATUS FROM V$DATAFILE; Asegurarse de que todos los f.datos de la bd están en línea (a menos que forme parte de un tbsp. de sólo lectura o se hubiera puesto fuera de línea normalmente): ALTER DATABASE DATAFILE '/.../tbs.dbf' ONLINE; Ejecutar la sentencia paa recuperar la bd -todos los ficheros dañados-, un tbsp. concreto o un fichero de datos (puede indicarse recuperación automática): RECOVER DATABASE; RECOVER TABLESPACE users; RECOVER DATAFILE '/.../tbs.dbf'; Administración Avanzada de Oracle 10g RECUPERACION 318
319 RECUPERACION COMPLETA. BD CERRADA. En una recuperación automatizada, esta continúa hasta que todo el redo archivado y en línea se ha aplicado y aparece el mensaje: media recovery complete. Abrir la bd: ALTER DATABASE OPEN; Administración Avanzada de Oracle 10g RECUPERACION 319
320 RECUPERACION COMPLETA. BD ABIERTA. Puede ocurrir un fallo con la bd abierta, dejando los ficheros no dañados en línea y en condiciones de uso. Oracle automaticamente pone los ficheros dañados fuera de línea -no sus tablespaces - si el DBWR no puede escribir en ellos. Las consultas que no pueden leer en dichos ficheros generan errores, pero Oracle no los pone fuera de línea por esta razón: ERROR at line 1: ORA-01116: error in opening database file 11 ORA-01110: data file 11: '/oracle/dbs/tbs_32.f' ORA-27041: unable to open file SVR4 Error: 2: No such file or directory Additional information: 3 Administración Avanzada de Oracle 10g RECUPERACION 320
321 RECUPERACION COMPLETA. BD ABIERTA. El proceso no es aplicable si se dañan los ficheros del tbsp. SYSTEM, en este caso se cierra la bd automáticamente. 1.- Preliminares. Poner los tbsp que contienen los ficheros dañados fuera de línea: ALTER TABLESPACE users OFFLINE TEMPORARY; Intentar corregir, si es posible, el fallo máquina que origina el error. 2.- Restaurar copias de los ficheros dañados o perdidos. No deben restaurarse copias de ficheros no dañados, redo en línea o ficheros de control. Si se han restaurado a una localización alternativa, deben renombrarse los ficheros de datos: ALTER DATABASE RENAME FILE '/.../tbs1.dbf' TO '/.../tbs1.dbf'; Administración Avanzada de Oracle 10g RECUPERACION 321
322 RECUPERACION COMPLETA. BD ABIERTA. 3.- Recuperar los tbsp. fuera de línea. Conectar con privilegios de administrador. Recuperar todos los tbsp. afectados (aconsejable automáticamente): RECOVER TABLESPACE users, sales La recuperación continúa hasta que todo el redo archivado y en línea se ha aplicado. Poner los tbsp. en línea: ALTER TABLESPACE users ONLINE; ALTER TABLESPACE sales ONLINE; Administración Avanzada de Oracle 10g RECUPERACION 322
323 RECUPERACION INCOMPLETA. Al no recuperar la bd al momento más actual, debe indicarse cuando terminar la recuperación ( point in tine recovery ). Existen diversas opciones: Time-based... Recupera datos hasta un instante concreto. Cancel-based... Recupera hasta el empleo de la sentencia CANCEL. Change-based... Recupera hasta un SCN específico. Tras una recuperación incompleta siempre debe abrirse la bd con resetlogs. Administración Avanzada de Oracle 10g RECUPERACION 323
324 RECUPERACION INCOMPLETA. 1.- Preliminares. Realizar una copia completa de la bd como medida de precaución ante errores durante la recuperación. Cerrar la bd, si está abierta: SHUTDOWN ABORT Intentar corregir el fallo que origina el error. 2.- Restaurar una copia completa de la bd. Si el fichero de control actual no refleja la estructura de la bd en el tiempo al que se quiere recuperar, debe restaurarse una copia del mismo que lo haga. Restaurar copias de todos los ficheros de datos de la bd (previas al momento al que se quiere recuperar). Abrir una sesión Sqlplus como administrador. Administración Avanzada de Oracle 10g RECUPERACION 324
325 RECUPERACION INCOMPLETA. Montar la bd: STARTUP MOUNT Si algún fichero fue restaurado a una localización alternativa anteriormente, indicarlo: ALTER DATABASE RENAME FILE '/.../df2.dbf' TO '/.../df2.dbf'; Obtener el nombre y estado de todos ficheros de datos: SELECT NAME,STATUS FROM V$DATAFILE; Asegurarse de que todos los ficheros de la bd están en línea (a menos que un tbsp se hubiera puesto fuera de línea normalmente -opción NORMAL- o sea de sólo lectura): ALTER DATABASE DATAFILE '/.../tbs.dbf' ONLINE; Administración Avanzada de Oracle 10g RECUPERACION 325
326 RECUPERACION INCOMPLETA. CANCEL BASED. La recuperación finaliza al indicar CANCEL en lugar de un nombre de fichero redo archivado, o cuando todos estos han sido aplicados. Permite controlar el proceso de recuperación. Deben seguirse los siguientes pasos: Conectarse a Sqlplus con privilegios de administrador: sqlplus '/ AS SYSDBA' Montar la bd: STARTUP MOUNT Comenzar la recuperación: RECOVER DATABASE UNTIL CANCEL Si se está usando una copia del f.de control debe indicarse: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE Administración Avanzada de Oracle 10g RECUPERACION 326
327 RECUPERACION INCOMPLETA. CANCEL BASED. Continuar aplicando redo hasta llegar al último y cancelar ejecutando: CANCEL. Si el fichero de control es una copia deberá indicarse también los nombres del redo en línea si desean aplicarse. Oracle devuelve un mensaje indicando si la recuperación fue exitosa. Si se cancela una recuperación antes de que todos los ficheros esten en un SCN consistente y se intenta abrir la bd, se recibe un ORA-1113 en caso de ser necesaria más recuperación. Puede consultarse la vista V$RECOVER_FILE para determinar si es así, o si una copia de algún fichero no fue restaurada antes de comenzar la recuperación. Abrir la bd en modo RESETLOGS. Siempre deben reiniciarse los log en línea después de una recuperación incompleta o con una copia del fichero de control: ALTER DATABASE OPEN RESETLOGS; Administración Avanzada de Oracle 10g RECUPERACION 327
328 RECUPERACION INCOMPLETA. TIME BASED. Ejecutar RECOVER DATABASE UNTIL TIME para comenzar. El tiempo siempre se indica usando el formato: 'YYYY-MM-DD:HH24:MI:SS'. Por ejemplo: RECOVER DATABASE UNTIL TIME ' :12:47:30' Si se usa una copia del fichero de control, restaurada: RECOVER DATABASE UNTIL TIME ' :12:47:30' USING BACKUP CONTROLFILE Aplicar redo archivado. Si el fichero de control es una copia, tras aplicar redo archivado debe indicarse el redo en línea. Finaliza automáticamente la recuperación al alcanzar el tiempo indicado y se devuelve un mensaje indicando si es correcta. Abrir bd en modo RESETLOGS : ALTER DATABASE OPEN RESETLOGS; Administración Avanzada de Oracle 10g RECUPERACION 328
329 RECUPERACION INCOMPLETA. CHANGE BASED. Indicar el SCN de terminación. Por ejemplo: RECOVER DATABASE UNTIL CHANGE 10000; Aplicar redo archivado. Si el fichero de control es una copia, tras aplicar redo archivado debe indicarse el redo en línea. Finaliza automáticamente la recuperación al alcanzar el SCN indicado y se devuelve un mensaje indicando si es correcta. Abrir bd en modo RESETLOGS : ALTER DATABASE OPEN RESETLOGS; Administración Avanzada de Oracle 10g RECUPERACION 329
330 RECUPERACION PARALELA. Por defecto se emplea recuperación paralela, lo que incrementa la productividad. El grado de paralelismo es igual al número de UCP s disponibles, relacionado con el parámetro de inicialización CPU_COUNT. Si se indica RECOVER PARALLEL o RECOVER PARALLEL 0 se evita este comportamiento. Administración Avanzada de Oracle 10g RECUPERACION 330
331 APERTURA BD TRAS RECUPERACION. Siempre que se realiza una recuperación incompleta o recuperación con una copia del fichero de control, debe reinicializarse los logs al abrir la bd. La nueva versión de bd se llama incarnation. Todos los redo archivados generados tras el punto de RESETLOGS en la antigua incarnation son no válidos en la nueva. Al realizar una recuperación completa, no tiene que abrirse la bd con la opción RESETLOGS. Todos las copias y redo archivado creados durante la vida de esta incarnation de la bd son válidos. Administración Avanzada de Oracle 10g RECUPERACION 331
332 APERTURA BD TRAS RECUPERACION. Administración Avanzada de Oracle 10g RECUPERACION 332
333 APERTURA BD TRAS RECUPERACION. Al abrir la bd con RESETLOGS, todos los f.datos obtienen un nuevo RESETLOGS SCN y fecha, y la secuencia de log se reinicia a 1. El log archivado contiene asímismo esos dos valores en la cabecera. Como Oracle no aplica un log archivado a un fichero de datos a menos que RESETLOGS SCN y fecha coincidan, esta operación evita que se corrompan con log archivados que no son de encarnaciones padres directas de a actual. Reinicializar los logs permite: Descartar para siempre cualquier información no aplicada durante la recuperación. Reinicializar la información en el fichero de control sobre redo en línea y redo threads. Crear los ficheros de redo en línea si no existían. Reinicializar el número de secuencia de log a 1. Administración Avanzada de Oracle 10g RECUPERACION 333
334 APERTURA BD TRAS RECUPERACION. Archiva redo en línea, si está accesible, y borra su contenido. Actualizar todos los ficheros de datos y redo en línea y, por tanto, el redo archivado que se produzca con un nuevo RESETLOG SCN y time stamp. Administración Avanzada de Oracle 10g RECUPERACION 334
335 APERTURA BD TRAS RECUPERACION. Tras un RESETLOGS, es aconsejable: Realizar una copia completa de la bd, cerrándola en modo normal (permite recuperar cambios hechos tras la reinicialización). Comprobar que en el alert_sid.log no existen entradas que reflejen inconsistencias detectadas entre el dicconario de datos y el fichero de control (p.ej. Fich. datos que no aparecen en el fich. de control). Administración Avanzada de Oracle 10g RECUPERACION 335
Gran número de usuarios accediendo a un único servicio y con un único protocolo. Servidores y clientes con distintos protocolos.
1RWD7pFQLFD,(OSURWRFRORGHFRQH[LyQ1HW La función principal del protocolo Net 8 es establecer sesiones de red y transferir datos entre una máquina cliente y un servidor o entre dos servidores. Net8 debe
Más detallesOracle NET: Conexión a BD Oracle
Oracle NET: Conexión a BD Oracle Juan Manuel Vara 1 Introducción Para interactuar con cualquier BBDD necesitamos una aplicación software a la que generalmente nos referimos como cliente En realidad, interactuar
Más detallesUNIDESYS UNIVERSAL BUSINESS SYSTEMS INSTALACIÓN NUEVO PUESTO DE TRABAJO
www.ubs-systems.com Teléfono: 91 3681185 UNIDESYS UNIVERSAL BUSINESS SYSTEMS INSTALACIÓN NUEVO PUESTO DE TRABAJO Unidesys Versión 2011 1 CONTENIDO 1 INTRODUCCIÓN 3 2 FUENTES DE DATOS 4 3 INSTALACIÓN DEL
Más detalles2. Configurando Oracle Net
2. Configurando Oracle Net Las redes informáticas evolucionaron desde terminales simples, pasando por arquitecturas cliente servidor y sistemas complejos. Las redes modernas se componen de muchas computadoras
Más detallesOracle Database 10g: Taller de Administración I 1-2
Oracle Database 10g: Taller de Administración I 1-2 Marco de gestión Hay tres componentes principales del marco de gestión de la BD Oracle: Labasededatosylainstanciaqueseestágestionando Un listener que
Más detallesCTSQL Monitor Unix. En este documento se describe el proceso de instalación y configuración básica para monitorizar. BASE 100, S.A. www.base100.
En este documento se describe el proceso de instalación y configuración básica para monitorizar sesiones CTSQL en máquinas Unix. BASE 100, S.A. www.base100.com Índice 1. INTRODUCCIÓN... 3 2. FICHERO DE
Más detallesTEMA 6. NET9. Administración Avanzada de Oracle9i. NET9
TEMA 6. NET9. Administración Avanzada de Oracle9i. NET9 1 TEMA 6. NET. ORACLE NET SERVICES. ORACLE NET. LISTENER. ORACLE CONNECTION MANAGER. OTROS COMPONENTES CONCEPTOS. CONFIGURACION. LISTENER.ORA LISTENER.ORA
Más detallesJAVA EE 5. Arquitectura, conceptos y ejemplos.
JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones
Más detallesSe realiza la parada de base de datos (y del listener ). SQL*Plus: Release 9.2.0.1.0 - Production on Sat Apr 30 17:46:39 2005
PRACTICAS. SHARED SERVER. 1. Observar la estructura e información proporcionada por las vistas V$DISPATCHER, V$DISPATCHER_RATE, V$QUEUE, V$SHARED_SERVER, V$CIRCUIT y V$SHARED_SERVER_MONITOR. Consultar
Más detallesRoles y Características
dominio Roles y Características Una vez instalado Windows Server 2008 y configuradas algunas opciones básicas de Windows Server 2008 desde el Panel de Control o desde el Administrador del Servidor, las
Más detallesPRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información
Más detallesComponentes de Integración entre Plataformas Información Detallada
Componentes de Integración entre Plataformas Información Detallada Active Directory Integration Integración con el Directorio Activo Active Directory es el servicio de directorio para Windows 2000 Server.
Más detallesIII. ADMINISTRACIÓN DE ORACLE.
III. ADMINISTRACIÓN DE ORACLE. 1.- Qué es Oracle? Qué hace un Administrador? 2.- Herramientas de ORACLE. 3.- Características. 4.- Arquitectura. 4.1.- Componentes de la BD. 4.2.- Estructura de la memoria.
Más detallesCOPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA
COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA Autor: Carlos Javier Martín González. Licenciado en Física Teórica por la Universidad Autónoma de Madrid. Analista programador y funcional. Desarrollador
Más detallesArquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Más detallessql*plus es un programa de linea de comandos de oracle que puede ejecutar comandos sql y pl/sql de forma interactiva o mediante un script.
Que es sql plus sql*plus es un programa de linea de comandos de oracle que puede ejecutar comandos sql y pl/sql de forma interactiva o mediante un script. sql*plus opera como una herramienta relativamente
Más detallesInstituto Profesional DuocUC Escuela de Ingeniería Control File
Control File Jaime Amigo P. 2006, Santiago - Chile Objetivos Después de completar esta lección, usted deberá saber lo siguiente: Explicar el uso del archivo de control Listar los contenidos del archivo
Más detallesCreación y administración de grupos de dominio
Creación y administración de grupos de dominio Contenido Descripción general 1 a los grupos de Windows 2000 2 Tipos y ámbitos de los grupos 5 Grupos integrados y predefinidos en un dominio 7 Estrategia
Más detallesAdministración Avanzada de Oracle 10g. Prácticas de shared server.
PRACTICAS TEMA 7. SHARED SERVER. 1. Observar la estructura e información proporcionada por las vistas V$DISPATCHER, V$DISPATCHER_RATE, V$QUEUE, V$SHARED_SERVER, V$CIRCUIT y V$SHARED_SERVER_MONITOR. Consultar
Más detallesEDITRAN/TX. Windows/Unix. Manual de Usuario e Instalación
EDITRAN/TX Windows/Unix Manual de Usuario e Instalación INDRA 15 de octubre de 2014 ÍNDICE 1. INTRODUCCION Y REQUERIMIENTOS.... 1-1 2. EDITRAN/TX... 2-1 2.1. Instalación de EDITRAN/TX en UNIX... 2-1 2.2.
Más detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesAcronis Backup & Recovery 11 Guía de inicio rápido
Acronis Backup & Recovery 11 Guía de inicio rápido Se aplica a las siguientes ediciones: Advanced Server Virtual Edition Advanced Server SBS Edition Advanced Workstation Server for Linux Server for Windows
Más detallesUna ACL es una lista secuencial de sentencias de permiso o denegación que se aplican a direcciones IP o protocolos de capa superior.
Listas de control de acceso o ACL. Listas de control de acceso o ACL. Una ACL es una lista secuencial de sentencias de permiso o denegación que se aplican a direcciones IP o protocolos de capa superior.
Más detallesAyuda de Symantec pcanywhere Web Remote
Ayuda de Symantec pcanywhere Web Remote Conexión desde un navegador web Este documento incluye los temas siguientes: Acerca de Symantec pcanywhere Web Remote Protección de la sesión de Web Remote Formas
Más detallesINSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT
INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT Versión 1. Mayo de 2001 Luis Vinuesa Martínez. Departamento de Informática Universidad de Oviedo vinuesa@correo.uniovi.es www.di.uniovi.es/~vinuesa ÍNDICE. Introducción...
Más detallesComponentes de una BD
Componentes de una BD Cada BD Oracle en ejecución está asociada a una instancia Oracle. Cuando se arranca el servidor, el software de Oracle reserva una zona de memoria compartida denominada System Global
Más detallesGuía de Instalación para clientes de WebAdmin
Panda Managed Office Protection Guía de Instalación para clientes de WebAdmin Tabla de contenidos 1. Introducción... 4 2. Instalación de Panda Managed Office Protection a partir de una instalación de Panda
Más detallesCAPITULO 9. Diseño de una Base de Datos Relacional Distribuida
9.1 Operaciones CAPITULO 9 Diseño de una Base de Datos Relacional Distribuida Las consultas distribuidas obtienen acceso a datos de varios orígenes de datos homogéneos o heterogéneos. Estos orígenes de
Más detallesWINDOWS 2008 4: SERVIDOR DHCP
1.- CONCEPTOS PREVIOS: WINDOWS 2008 4: SERVIDOR DHCP DHCP (Dynamic Host Configuration Protocol = protocolo de configuración dinámica de host) es un protocolo que simplifica la configuración de los parámetros
Más detallesDispositivos de Red Hub Switch
Dispositivos de Red Tarjeta de red Para lograr el enlace entre las computadoras y los medios de transmisión (cables de red o medios físicos para redes alámbricas e infrarrojos o radiofrecuencias para redes
Más detallesCFGM. Servicios en red. Unidad 2. El servicio DHCP. 2º SMR Servicios en Red
CFGM. Servicios en red Unidad 2. El servicio DHCP CONTENIDOS 1 1. Introducción 1.1. Qué es el servicio DHCP 2.1. Características generales del servicio DHCP 2.2. Funcionamiento del protocolo DHCP 2.3.
Más detallesPRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN
PRACTICA CAPITULO 2 MODULO 1 PROTOCOLOS Y LA FUNCIONALIDAD DE LA CAPA DE APLICACIÓN Los protocolos de capa de aplicación de TCP/IP más conocidos son aquellos que proporcionan intercambio de la información
Más detallesLa interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la
Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes
Más detallesRedes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet
Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción
Más detallesCTSQL Monitor Windows
En este documento se describe el proceso de instalación y configuración básica para monitorizar sesiones CTSQL en máquinas Windows. BASE 100, S.A. www.base100.com Índice 1. INTRODUCCIÓN... 3 2. FICHERO
Más detallesUn nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra.
Unidad IV: Seguridad 4.1 Tipos de usuario El objetivo de la creación de usuarios es establecer una cuenta segura y útil, que tenga los privilegios adecuados y los valores por defecto apropiados Para acceder
Más detallesIntroducción a las redes de computadores
Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes
Más detallesGuía de instalación de la carpeta Datos de IslaWin
Guía de instalación de la carpeta Datos de IslaWin Para IslaWin Gestión CS, Classic o Pyme a partir de la revisión 7.00 (Revisión: 10/11/2011) Contenido Introducción... 3 Acerca de este documento... 3
Más detallesDOCENTES FORMADORES UGEL 03 PRIMARIA
DOCENTES FORMADORES UGEL 03 PRIMARIA 1. Recursos y Aplicaciones del Servidor La página de inicio del servidor (http://escuela) contiene los enlaces a las aplicaciones instaladas en el servidor, un enlace
Más detallesCOMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX
COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX En este manual se presenta el proceso de configuración de una Maquina Virtual en VirtualBox, que será utilizada para instalar un Servidor
Más detallesREDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS
REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS Servicio DNS - 1 - Servicio DNS...- 3 - Definición... - 3 - Instalación... - 5 - Configuración del Servidor DNS...- 10 - - 2 - Servicio DNS Definición
Más detallesAutenticación Centralizada
Autenticación Centralizada Ing. Carlos Rojas Castro Herramientas de Gestión de Redes Introducción En el mundo actual, pero en especial las organizaciones actuales, los usuarios deben dar pruebas de quiénes
Más detallesDHCP. Dynamic Host Configuration Protocol. Protocolo de Configuración Dinámica de Host. Administración de Redes de Computadores
DHCP Dynamic Host Configuration Protocol Protocolo de Configuración Dinámica de Host Administración de Redes de Computadores John Deivis Tabares Tobón Luis Fernando Ramirez CONFIGURACION DEL SERVIDOR DHCP
Más detallesConmutación. Conmutación telefónica. Justificación y definición.
telefónica Justificación y definición de circuitos de mensajes de paquetes Comparación de las técnicas de conmutación Justificación y definición. Si se atiende a las arquitecturas y técnicas utilizadas
Más detallesManual De Instalación MySQl 5.1 MANUAL DE INSTALACIÓN Y CONFIGURACIÓN DE MYSQL 5.1.40
MANUAL DE INSTALACIÓN Y CONFIGURACIÓN DE MYSQL 5.1.40 Página 1 de 15 1.- Ejecutamos el fichero mysql-essential-5.1.40-win32. Espera unos minutos mientras se cargan los archivos necesarios para la instalación
Más detallesINTRODUCCION. Tema: Protocolo de la Capa de aplicación. FTP HTTP. Autor: Julio Cesar Morejon Rios
INTRODUCCION Tema: Protocolo de la Capa de aplicación. FTP HTTP Autor: Julio Cesar Morejon Rios Qué es FTP? FTP (File Transfer Protocol) es un protocolo de transferencia de archivos entre sistemas conectados
Más detallesIntroducción a las Redes de Computadoras. Obligatorio 2 2011
Introducción a las Redes de Computadoras Obligatorio 2 2011 Facultad de Ingeniería Instituto de Computación Departamento de Arquitectura de Sistemas Nota previa - IMPORTANTE Se debe cumplir íntegramente
Más detallesGESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD
GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD Manual de usuario 1 - ÍNDICE 1 - ÍNDICE... 2 2 - INTRODUCCIÓN... 3 3 - SELECCIÓN CARPETA TRABAJO... 4 3.1 CÓMO CAMBIAR DE EMPRESA O DE CARPETA DE TRABAJO?...
Más detallesWindows Server 2012: Infraestructura de Escritorio Virtual
Windows Server 2012: Infraestructura de Escritorio Virtual Módulo 1: Application Virtualization Módulo del Manual Autores: James Hamilton-Adams, Content Master Publicado: 5 de Octubre 2012 La información
Más detallesCAPÍTULO HTML Y DHCP DE H0/H2-ECOM100 CONFIGURACIÓN. En este capítulo...
CONFIGURACIÓN HTML Y DHCP DE H0/H2-ECOM100 CAPÍTULO 56 6 En este capítulo... Características DHCP de H0/H2 -ECOM100...................6-2 Deshabilitando DHCP y asignando una DIRECCION IP estática.....6-2
Más detallesTema 4. Gestión de entrada/salida
Tema 4. Gestión de entrada/salida 1. Principios de la gestión de E/S. 1.Problemática de los dispositivos de E/S. 2.Objetivos generales del software de E/S. 3.Principios hardware de E/S. 1. E/S controlada
Más detallesTrabaja los Sistemas Aspel desde tus sucursales con Terminal Server
Trabaja los Sistemas Aspel desde tus sucursales con Terminal Server Debido a los adelantos tecnológicos, hoy en día se pueden realizar conexiones remotas sin necesidad de tener una gran infraestructura
Más detallesManual de Integración CubeCart
Manual de Integración CubeCart Guía de integración de CubeCart con PagosOnline.net VERSIÓN 3.0 Capítulo 1. INTRODUCCIÓN CubeCart es una de las soluciones más populares para el desarrollo de Comercio Electrónico
Más detallesMultiBase y Cosmos. Particularidades sobre la instalación del motor de base de datos en modo cliente servidor. BASE 100, S.A. www.base100.
Particularidades sobre la instalación del motor de base de datos en modo cliente servidor BASE 100, S.A. www.base100.com Índice 1. INSTALACIÓN EN CLIENTE SERVIDOR... 3 1.1 EN LA MÁQUINA SERVIDOR... 3 1.1.1
Más detallesArquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web
Arquitectura 1.- Aplicaciones Web Definición Contenidos 1.- Aplicaciones Web 2.- Arquitectura de aplicaciones Web Lo que distingue una aplicación Web de una mero sitio Web reside en la posibilidad que
Más detallesConfiguracion Escritorio Remoto Windows 2003
Configuracion Escritorio Remoto Windows 2003 Instalar y configurar servicio de Terminal Server en Windows 2003 Fecha Lunes, 25 diciembre a las 17:04:14 Tema Windows (Sistema Operativo) Os explicamos cómo
Más detallesMonitorización SGBD PostgreSQL
Monitorización SGBD PostgreSQL Página 1 Monitorización SGBD PostgreSQL. OpenOffice/PDF Version 1º Edition, 22 September 2012 Copyright 2012 Luis Caballero Cruz Página 2 1 MONITORIZACIÓN
Más detallesÍNDICE CAPÍTULO 1. TIPOS DE ALMACENAMIENTO DE LA INFORMACIÓN... 13
ÍNDICE CAPÍTULO 1. TIPOS DE ALMACENAMIENTO DE LA INFORMACIÓN... 13 1.1 SISTEMAS LÓGICOS DE ALMACENAMIENTO DE LA INFORMACIÓN...13 1.2 ALMACENAMIENTO EN FICHEROS...13 1.2.1 Registros físicos y registros
Más detallesOracle Database 12c (12.1.0.2.0) Instalación-Creación de Base de Datos
Oracle Database 12c (12.1.0.2.0) Instalación-Creación de Base de Datos Antes de comenzar la instalación del software de la base de datos es necesario copiar el software a la máquina virtual. Para ello
Más detallesTELECOMUNICACIONES Y REDES
TELECOMUNICACIONES Y REDES Redes Computacionales I Prof. Cristian Ahumada V. Unidad V: Capa de Red OSI 1. Introducción. 2. Protocolos de cada Red 3. Protocolo IPv4 4. División de Redes 5. Enrutamiento
Más detallesCONFIGURACIÓN DEL ADAPTADOR DE RED EN LINUX
CONFIGURACIÓN DEL ADAPTADOR DE RED EN LINUX 16/09/2005 Índice de Contenidos 1 INTRODUCCIÓN... 1-1 2 DISTRIBUCIONES LINUX... 2-1 3 CONFIGURACIÓN DE RED EN LINUX... 3-1 3.1 FEDORA CORE 3... 3-1 3.1.1 Configuración
Más detallesWindows Server 2003. Windows Server 2003
Windows Server 2003 Windows Server 2003 Es un sistema operativo de la familia Windows de la marca Microsoft para servidores que salió al mercado en el año 2003. Está basada en tecnología NT y su versión
Más detallesLABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO
UNIVERSIDADE DA CORUÑA Departamento de Tecnoloxías da Información e as Comunicacións LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO PRÁCTICA 4: Implementación de un Cliente de Correo
Más detalles1. La Arquitectura de Oracle Net
1. La Arquitectura de Oracle Net Las comunicaciones han evolucionado junto con las aplicaciones, desde programas básicos locales a aplicaciones complejas. Hoy en día las redes modernas se basan en varias
Más detallesOficina Online. Manual del administrador
Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal
Más detallesIngeniería de Software. Pruebas
Ingeniería de Software Pruebas Niveles de prueba Pruebas unitarias Niveles Pruebas de integración Pruebas de sistema Pruebas de aceptación Alpha Beta Niveles de pruebas Pruebas unitarias Se enfocan en
Más detallesModo básico de funcionamiento del módulo Velneo vmodapache V7
Página 1 de 8 Qué es Velneo vmodapache V7? Se trata del módulo Apache para soluciones web. Es un módulo web del servidor Web Apache que permite servir vía web diversos objetos de instancias de un proyecto
Más detallesCIF-KM. GUÍA DE LOS PRIMEROS PASOS
CIF-KM. GUÍA DE LOS PRIMEROS PASOS Secciones 1. CONCEPTOS PREVIOS. 2. INSTALAR CIF-KM. 2.1 Descargar e instalar CIF-KM. 2.2 Configuración de CIF-KM. 2.3 Acceso externo al servidor de CIF-KM. 3. PRIMERA
Más detallesEjercicios Tema 1 1.- Supongamos que hay exactamente un switch de paquetes entre un host que envía y un host que recibe. Las tasas de transmisión entre el host que envía y el que recibe son R 1 y R 2 respectivamente.
Más detallesNota Técnica. Conexión a una red externa Internet / LAN / WAN / ADSL
Nota Técnica Conexión a una red externa Internet / LAN / WAN / ADSL Fecha de Revisión Diciembre 2006 Aplicación VT200-N, VT100-N y Supervisor 1. Objeto Esta nota trata de facilitar la información necesaria
Más detallesControladores de dominio. Redes Microsoft
Controladores de dominio Redes Microsoft NetBIOS Las redes Microsoft han identificado tradicionalmente los ordenadores mediante nombres NetBIOS. NetBIOS facilita el desarrollo de aplicaciones en red (proporciona
Más detallesApuntes finales sobre bases de datos y Visual Basic
1 Visual Basic - Guía del Estudiante Apuntes finales sobre bases de datos y Visual Basic Bases de Datos SQL Server y Oracle Las bases de datos más conocidas de las utilizadas en plataforma Windows son
Más detalles1. Consultar el valor de los parámetros de inicialización SERVICE_NAMES e INSTANCE_NAME. Averiguar el valor de DB_NAME y DB_DOMAIN.
PRACTICAS. NET9. 1. Consultar el valor de los parámetros de inicialización SERVICE_NAMES e INSTANCE_NAME. Averiguar el valor de DB_NAME y DB_DOMAIN. SQL> show parameter instance_name NAME TYPE VALUE ----------
Más detallesConsultas con combinaciones
UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden
Más detallesAdministración Local Soluciones
SISTEMA INTEGRADO DE GESTIÓN DE EXPEDIENTES MODULAR (SIGM) CONFIGURACIÓN PARA LA INTEGRACIÓN CON SISNOT Y CORREOS SIGM v3 Administración Local Soluciones Control de versiones Versión Fecha aprobación Cambio
Más detallesConexión ODBC Visual Basic - MSQL. Cristian Vidal Silva
Conexión ODBC Visual Basic - MSQL Cristian Vidal Silva Qué es un Sistema Cliente Servidor Puede ejecutarse en al menos dos computadores distintos. Existen Procesos Clientes y Procesos Servidores. Un Proceso
Más detallesRedes I Soluciones de la Práctica 1: /etc/network/interfaces, tcpdump y wireshark
Redes I Soluciones de la Práctica 1: /etc/network/interfaces, tcpdump y wireshark Universidad Rey Juan Carlos Curso 2007/2008 Resumen Los primeros cuatro apartados de la práctica consisten en replicar
Más detallesINSTALACIÓN DE MySQL SERVER EN WINDOWS
INSTALACIÓN DE MySQL SERVER EN WINDOWS Seguir los siguientes pasos: En primer lugar necesitaremos disponer del programa de instalación. Se puede descargar gratuitamente de http://dev.mysql.com/downloads
Más detallesIntercambio de ficheros institucionales
Intercambio de ficheros institucionales Unidad de Infraestructuras Junio 2013 Versión: 1.0 INDICE 1. INTRODUCCIÓN... 4 2. INICIO DEL CLIENTE DE INTERCAMBIO DE FICHEROS INSTITUCIONALES... 5 3. VISTA GENERAL
Más detallesEl proceso de Instalación de Microsoft SQL Server 2008
El proceso de Instalación de Microsoft SQL Server 2008 Luis Alejandro Esteban C - nave_tze@hotmail.com Este documento va dirigido a profesionales de tecnología interesados en entender el proceso de instalación
Más detallesINSTALACIÓN DE MÚLTIPLES SUPERVISOR VS EN RED
ESPAÑOL Nota Técnica INSTALACIÓN DE MÚLTIPLES SUPERVISOR VS EN RED Fecha de revisión: Aplicación: Enero 2012 Supervisor VS 5.0 Actualmente es posible instalar varios supervisores en red trabajando de forma
Más detallesFamilia de Windows Server 2003
Familia de Windows Server 2003 Windows Server 2003 está disponible en cuatro ediciones. Cada edición se ha desarrollado para una función de servidor específica, como se describe en la tabla siguiente:
Más detallesCURSOS Y DESCRIPCIÓN 16-0071 / 29-0942 ADMINISTRACIÓN DE BASE DE DATOS
16-0071 / 29-0942 ADMINISTRACIÓN DE BASE DE DATOS Descripción General: El participante podrá conocer el modelaje conceptual de los datos: con respecto a la definición del modelo, clasificación de los modelos
Más detallesExamen Cisco Online CCNA4 V4.0 - Capitulo 5. By Alen.-
Cuál es la forma predeterminada en la que el tráfico IP se filtra en un router Cisco? bloqueado hacia adentro y hacia afuera de todas las interfaces bloqueado en todas las interfaces entrantes, pero permitido
Más detallesPresentación de BlackBerry Collaboration Service
Presentación de Collaboration Service Presentación de Collaboration Service Remitente Servidor de mensajería instantánea Collaboration Service Dispositivo con 10 Destinatario 1 de 13 Presentación de Collaboration
Más detallesGLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.
GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.
Más detallesAdministración de la Contabilidad y Control de Acceso de la Red
UNIVERSIDAD TECNOLÓGICA ECOTEC GESTIÓN DE UTILIZACIÓN DE REDES Administración de la Contabilidad y Control de Acceso de la Red GRUPO: David González PROFESOR: Ing. Francisco Palacios 2013 Administración
Más detallesBackup & Recovery Oracle 9i
Configuración de Copia de Seguridad y Recuperación Cómo ya sabemos, todas las transacciones se registran en los ficheros redo log online. Esto permite la recuperación automática de las transacciones en
Más detallesOracle 12c DISEÑO Y PROGRAMACIÓN
Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo
Más detallesRedes de área local: Aplicaciones y servicios WINDOWS
Redes de área local: Aplicaciones y servicios WINDOWS 4. Servidor DNS 1 Índice Definición de Servidor DNS... 3 Instalación del Servidor DNS... 5 Configuración del Servidor DNS... 8 2 Definición de Servidor
Más detallesINTRANET M2M. Manual de Instalación y Configuración: Conector Intranet M2M
INTRANET M2M Manual de Instalación y Configuración: Conector Intranet M2M ÍNDICE 1. Introducción... 2 2. Instalación del servicio... 3 2.1. Requisitos... 3 2.2. Pasos previos al proceso de instalación...
Más detallesEn caso de que el cliente nunca haya obtenido una concesión de licencia de un servidor DHCP:
Servidor DHCP El protocolo de configuración dinámica de host (DHCP, Dynamic Host Configuration Protocol) es un estándar TCP/IP diseñado para simplificar la administración de la configuración IP de los
Más detallesINSTALACION DE APTOUR
INSTALACION DE APTOUR 1.Introducción...2 2.Instalación del Motor de Base de Datos Sql Server 7.0...3 Paso 1...3 Paso 2 :...3 Paso 3...4 Paso 4...4 Paso 5...5 Paso 6...5 Paso 7...6 Paso 8...6 Paso 9...7
Más detallesPara poder instalar el producto, tendremos que obtener el instalador apropiado para nuestro entorno hardware y software.
Instalación de Oracle Service BUS (OSB) 1 DESCARGA DE INSTALADOR Para poder instalar el producto, tendremos que obtener el instalador apropiado para nuestro entorno hardware y software. En la siguiente
Más detallesLuis Eduardo Peralta Molina Sistemas Operativos Instructor: José Doñe 2010-2940. Como crear un Servidor DHCP en ClearOS
Servidores DHCP Como crear un Servidor DHCP en ClearOS Dynamic Host Configuration Protocol (DHCP) Protocolo de Configuracion Dinamica de Host, es un protocolo de Red que asigna automaticamente informacion
Más detallesPráctica 2. Montaje de Redes Locales. Parte III
Práctica 2. Montaje de Locales. Parte III 2º Informática Curso 2003/2004 1 Conceptos Adicionales Qué son las? Cómo funciona un router? Qué es y cómo funciona un firewall? Qué es el servicio DNS? Qué es
Más detallesManual de Usuario de la Herramienta SICRES-Tester. SIR Sistema de Interconexión de Registros. Tipo de documento. Fecha de entrega 08/04/2014
MINISTERIO DE HACIENDA Y ADMINISTRACIONES PÚBLICAS SECRETARÍA DE ESTADO DE ADMINISTRACIONES PÚBLICAS DIRECCIÓN GENERAL DE MODERNIZACIÓN ADMINISTRATIVA, PROCEDIMIENTOS E IMPULSO DE LA ADMINISTRACIÓN ELECTRONICA
Más detallesabacformacio@abacformacio.com 1
Cu Oracle 10gg Estudia el servidor de bases de datos Oracle 10g desde el punto de vista de un diseñador y programador de bases de datos, prestando atención a los objetos que puede crear, como tablas, consultas
Más detallesEDITRAN/CL. Manual de Usuario e Instalación. Módulo de Cliente Departamental. Windows
EDITRAN/CL Módulo de Cliente Departamental Windows Manual de Usuario e Instalación INDRA 30 de octubre de 2014 ÍNDICE 1. INTRODUCCIÓN.... 1-1 2. INSTALACIÓN.... 2-1 2.1. Requisitos necesarios.... 2-1 2.2.
Más detalles