mailxmail - Cursos para compartir lo que sabes

Introducción a Oracle
Autor: Roberto www.ForInfor.net

1

mailxmail - Cursos para compartir lo que sabes

Presentación del curso
En el curso se introducen los conceptos básicos para saber que es un Gestor de Bases de Datos Relacional, y la utilidad de Oracle para este cometido.

2

mailxmail - Cursos para compartir lo que sabes

1. Introducción
Introducción ForInfor.net te ofrece este curso que pronto estará disponible en su portal de teleformación y que junto con los contenidos teóricos te ofrecerá simulaciones y numerosos ejercicios para que afiances tus conocimientos. Por ello, agradeceremos cualquier comentario o sugerencia que nos quieras hacer llegar a info@ForInfor.net Un Sistema de Gestión de Bases de Datos Relacionales (SGBDR), permite el almacenamiento de datos en tablas formadas por filas y columnas, y su posterior consulta y mantenimiento mediante un sencillo y potente lenguaje de consulta estructurado (SQL). Bajo las siglas SGBDR se oculta toda la complejidad informática necesaria para gestionar: El acceso controlado de los procesos de los usuarios a los datos La gestión del almacenamiento de los datos La gestión de las comunicaciones entre procesos clientes y servidores Interconexión con distintos protocolos y sistemas operativos Acceso a los recursos conectados a la red ... El modelo relacional fue planteado por Codd a principios de 1970 en su artículo "A Relacional Model of Data for Large Shared Data Bank" en el cual establecía las características que debían de tener los sistemas informáticos para tratar grandes volúmenes de información, llegando a definir las doce reglas que considera necesarias para que el sistema se pueda definir como relacional. Existen numerosos SGBDR´s y entre ellos el más popular a nivel profesional es el de Oracle. Dado que Codd considera que un SGBDR ha de cumplir las 12 reglas, se podría pensar que por lo tanto Oracle las cumple. En el artículo titulado " Are SQL Server, DB2 and Oracle really relational?" se analizan estas tres aplicaciones y se concluye que todos son similares pero no llegan a cumplirlas en su totalidad, ya que concretamente no permiten las actualizaciones sobre vistas. Aunque estrictamente hablando el SGBDR incluye la colección de datos, por extensión se denomina así a la aplicación software que los gestiona hablando por tanto del SGBDR de Oracle. El SGBDR de Oracle se instala en prácticamente cualquier equipo informático, pudiendo empezar por un ordenador personal basado en Windows e ir escalando a arquitecturas más complejas a medida que las necesidades de la carga de proceso lo requieran. Oracle en este sentido es un SGBDR muy amigable, pues permite trasladar las estructuras de datos y desarrollos a arquitecturas más complejas sin necesidad de realizar cambios significativos. El SGBDR de Oracle es muy potente, pero para obtener un rendimiento correcto, es necesaria la intervención del administrador de la base de datos (DBA). Las tareas más comunes del DBA son:

3

mailxmail - Cursos para compartir lo que sabes
La instalación del software de Oracle La creación de la base de datos La actualización del software y base de datos a nuevas versiones. Arrancar y parar la base de datos. Gestionar las estructuras de almacenamiento de la base de datos. Gestionar la seguridad y acceso de los usuarios. Gestionar los esquemas de objetos de cada usuario. Establecer la política de realización de copias de seguridad de la base de datos (backups) y realizar la recuperación de la misma si hay incidencias. Monitorizar la actividad de la base de datos, y realizar las acciones necesarias para optimizar su rendimiento. Antiguamente el DBA requería una amplia experiencia y profundos conocimientos para la realización de estas tareas, pero hoy en día Oracle proporciona numerosas herramientas y asistentes para simplificar las tareas y permitir que prácticamente cualquier usuario con un mínimo de conocimientos pueda realizarlas correctamente. Las herramientas que ayudan a la instalación y actualización del software de Oracle y de la base de datos son: El instalador universal de Oracle (Oracle Universal Installer - OUI) se encarga de instalar el software del SGBDR con las opciones seleccionadas. Automáticamente crea la base de datos con la ayuda del asistente de configuración de la base de datos. El asistente de configuración de la base de datos (DataBase Configuration Asistant DBCA) permite crear una base de datos utilizando las plantillas predifinidas que mejor se adapten a la utilización de la base de datos. El asistente de actualización de la base de datos (Database Upgrade Assistant DUA) permite migrar los datos de una base de datos Oracle a una versión posterior de la misma. El gestor de red de Oracle (Oracle Net Manager) permite configurar el acceso al servidor de la base de datos. Una vez instalado y configurado el software, el DBA utilizará habitualmente la herramienta denominada Oracle Enterprise Manager, que es fundamental para controlar el rendimiento de la base de datos y ofrece consejos para optimizar su uso. En este curso se introducirán los conceptos mínimos que todo DBA debe conocer y los asistentes que permiten su aplicación y gestión.

4

mailxmail - Cursos para compartir lo que sabes
2. Instalación del software y creación de la base de datos
Instalación del software y creación de la base de datos Oracle ofrece una versión gratuita de la versión 10g denominada Express Edition destinada a: Desarrolladores que trabajen en SQL, PL/SQL, PHP, Java, .Net y en cualquier otra aplicación de código abierto Administradores que necesiten realizar prácticas Instituciones educativas y estudiantes. Esta versión tiene un interfaz y funcionalidad diferente a la del resto de productos, por lo que para el presente curso se utiliza la versión comercial, y lo primero es adquirir el software. Hay que tener en cuenta que Oracle es un software licenciado, por lo que se ha de adquirir una licencia del producto antes de su utilización. Desde la página web de Oracle Technology Network se pueden descargar versiones de todos los productos con una licencia de uso limitado pero suficiente para que puedas evaluar el producto y realizar un prototipo de tu aplicación.

A continuación se muestra un extracto de los términos de la licencia tal y como aparece a finales de 2005. License Rights We grant you a nonexclusive, nontransferable limited license to use the programs only for the purpose of developing a single prototype of your application, and not for any other purpose. If you use the application you develop under this license for any internal data processing or for any commercial or production purposes, or you want to use the programs for any purpose other than as permitted under this agreement, you must contact us, or an Oracle reseller, to obtain the appropriate license. We may audit your use of the programs. Traducción literal: Derechos de la licencia Se otorga una licencia limitada de uso no exclusivo, ni transferible para usar el programa sólo con el propósito de desarrollar un prototipo de su aplicación, y no para otros propósitos. Si usa la aplicación que ha desarrollado bajo esta licencia para cualquier uso interno de procesado de datos o para cualquier actividad comercial o propósito de productivo, o quiere usar los programas con otros propósitos distintos a los permitidos bajo este acuerdo, debe contactar nos directamente o a través de un revendedor, para obtener la licencia apropiada. Podemos auditar el uso del programa. Aceptados los términos de la licencia y respectando sus condiciones, se puede iniciar la descarga del software para el sistema operativo correcto. Como se ve en la siguiente imagen, en el caso de la versión 10g para Windows, el fichero comprimido (ZIP) a descargar es de aproximadamente 650MBytes.

5

mailxmail . OUI permite mediante una interfaz gráfica ver los productos de Oracle que hay instalados en el servidor. hay que descomprimir el fichero en un directorio cualquiera del disco duro como por ejemplo "C:/ Oracle102" En la estructura de directorios creada está la aplicación del instalador universal de Oracle (Oracle Universal Installer .OUI).Cursos para compartir lo que sabes Una vez descargado el software. instalar 6 .

ya que cualquier usuario mal intencionado que consiguiera conectarse con esta clave podría consultar. donde los dos primeros son los usuarios de administración de la base de datos. estándar y empresarial. SYSMAN y DBSNMP. pudiendo escoger entre una versión personal. En la siguiente enlace puedes ver una película con el proceso de instalación del software y creación de una base de datos por defecto descargado directamente de www. instalar nuevos productos y desinstalar alguno de los existentes. Aceptando las opciones por defecto y salvo complicaciones extraordinarias. por lo que es la que se utiliza durante el curso.ForInfor. Esta contraseña de base de datos sólo debe ser conocida por el DBA. Durante todo el proceso de instalación o desinstalación ofrece ayuda para mejorar la comprensión de los procesos que se van a llevar a cabo. en cuyo caso se ha de dar un nombre único para la misma y la contraseña que se desea utilizar para los superusuarios. Al iniciar el OUI se asignan valores por defecto para: definir el directorio raíz donde se instalará el software seleccionar el tipo de instalación ha realizar.mailxmail . borrar o modificar cualquier información almacenada en la base de datos. SYSTEM.Cursos para compartir lo que sabes OUI permite mediante una interfaz gráfica ver los productos de Oracle que hay instalados en el servidor. Crear opcionalmente una base de datos. el OUI y el DBCA finalizarán con la creación de una base de datos totalmente operativa.net 7 . La versión empresarial es la más completa he incluye las herramientas de gestión más avanzadas. Observar que se pide introducir una contraseña para los superusuarios SYS.

La velocidad. Plantillas de la Base de Datos Las plantillas contienen un conjunto de valores por defecto que se consideran óptimos para la creación de una base de datos en función del uso al que va a ser destinada. Combina características de las dos anteriores. disponibilidad y concurrencia son fundamentales.Cursos para compartir lo que sabes 3. actualizaciones y borrados de datos. Los tiempos de respuesta y la disponibilidad son cruciales. Operaciones. inserciones. permitiendo introducir un mayor número de opciones. Asistente de Configuración de la base de datos Asistente de Configuración de la base de datos Desde el menú de inicio de Windows podemos invocar directamente al DBCA El DBCA se puede utilizar para realizar las siguientes operaciones: Crear una base de datos Configurar las opciones de una base de datos Suprimir una base de datos Gestionar las plantillas Configurar la gestión automática del almacenamiento Paso 1. Oracle facilita por defecto tres plantillas: Uso principal de la base de datos Almacén de datos Descripción Los usuarios ejecutan numerosas consultas de elevada complejidad y que procesan un elevado volumen de datos. Procesado de transacciones Uso general Personalizar Base de Datos 8 . Varios usuarios ejecutan simultáneamente consultas. Permite la máxima flexibilidad para crear una base de datos.mailxmail . Paso 2. Crear Base de Datos A través de un asistente se ayuda a la realización de esta tarea facilitando valores por defecto que se han de ir confirmando en los pasos sucesivos.

Identificar la base de datos En este paso se ha de asignar un nombre que identifique de manera única la base de datos en el sistema. lo mejor es seleccionar la plantilla de "Uso general" y utilizar las opciones por defecto facilitadas por el asistente. Para utilizar la opción de la gestión centralizada con Oracle Enterprise Manager Grid. han de estar instalados con antelación a la base de datos para que esta opción aparezca activada. el DBA puede modificar y optimizar la parametrización de la base de datos en función del uso real de la carga de trabajo que soporte y los consejos que le faciliten los asistentes. La instalación del agente y los componentes del Grid. se puede indicar un servidor de correo saliente y una cuenta de correo donde se recibirán avisos de incidencias relacionadas con la base de datos y emitidos automáticamente por el gestor. Como se verá posteriormente. Paso 4. se pueden modificar. Paso 3. En esta versión el Enterprise Manager es una aplicación web que proporciona las herramientas necesarias para la gestión de una base de datos local. Al seleccionar la gestión local.Cursos para compartir lo que sabes Si no hay un criterio claro sobre el uso que se va ha hacer de la base de datos. Se pueden utilizar una estructura jerarquizada basada en dominios de la forma : <dominio>.mailxmail .<nombre_basedatos> Aunque por defecto el nombre de la base de datos global y el SID son iguales. 9 . Opciones de Gestión Por defecto aparece seleccionada la opción de gestión local "Configurar Base de Datos con Enterprise Manager". es necesario tener instalado el agente de gestión Oracle Management Agent en el servidor y seleccionarlo en el menú desplegable Management Service.

Credenciales de la base de datos La base de datos crea automáticamente varios usuarios que son necesarios para la posterior administración de la misma. Posteriormente si se desea. 10 . Paso 6. o bien se puede poner una distinta para cada uno de ellos. SYSMAN y DBSNMP. Paso 5. En versiones anteriores del SGBDR de Oracle se les asignaban a estos usuarios claves por defecto que posteriormente el DBA debía de modificar. El usuario y clave del sistema operativo son necesarios para que posteriormente el Enterprise Manager pueda escribir en el disco. por lo que en esta primera instalación no se pasa al paso siguiente sin seleccionar estas casillas.Cursos para compartir lo que sabes También se puede establecer una política de gestión de copias de seguridad que se realizarán automáticamente a la hora indicada. La opción por defecto es la más habitual para una base de datos de propósito general. La clave puede ser la misma para todos ellos. y se puede ver una explicación del resto de opciones pinchando en el botón de " Ayuda". control y log. Si sólo va a haber un DBA lo normal será utilizar la misma clave para todos los superusuarios.mailxmail . Para mejorar la seguridad es necesario introducir una clave personalizada para los superusuarios : SYS. SYSTEM. Opciones de Almacenamiento En este paso se puede seleccionar el mecanismo que se va a utilizar para almacenar los ficheros asociados a la base de datos : datos. se pueden modificar los valores de la notificación de correo y copia de seguridad desde el Enterprise Manager. Cada día se realiza una copia de seguridad de la base completa. La copia de seguridad se realiza en el área denominada "Area de recuperación Flash" y que se configura posteriormente. pero lo cierto es que en muchas ocasiones esta tarea no se hacía y era posible conectarse al SGBDR utilizando las claves por defecto (sys/change_on_install o system/manager).

. Ubicaciones de Archivos de la Base de Datos La plantilla establece unos valores por defecto que se pueden revisar pinchando el botón "Variables de Ubicación de Archivos .mailxmail .Cursos para compartir lo que sabes Paso 7.." 11 .

Cuando se habla de realizar copias de seguridad se sobreentiende que éstas serán guardadas en un medio de almacenamiento externo (CD-ROM. se podrá recrear la base de datos a partir de la copia disponible en otro disco. Cinta. lo normal será tener un único disco y por lo tanto no será posible. En esta versión Oracle se encarga de gestionarlas automáticamente las copias en el "Área de Recuperación Flash" y recuperarlas de la misma si es necesario. pero es conveniente tener en cuenta este detalle y utilizar si es posible el disco compartido de otro servidor conectado a la red para la realización de las copias de seguridad. los valores por defecto son adecuados y pueden ser modificados en un paso posterior. Si se selecciona el modo "Archivado".. por lo que aceptaremos el valor por defecto y dejaremos para los ajustes como una tarea posterior del DBA. Observar la recomendación que hace el asistente de utilizar distintos discos para los archivos de datos y de área de recuperación.. . Ni que decir tiene que si los datos y su copia están en el mismo disco. y el disco se avería.mailxmail . Definir el tamaño del "Área de Memoria Flash" no es una tarea fácil. El archivado automático es más eficaz y libera al administrador de esta tarea.). Paso 8. será imposible recuperar la base de datos. y si hay que recuperar la base de datos hay que recuperar la copia. Configuración de Recuperación En este paso se puede modificar el valor por defecto asignado al "Área de Recuperación Flash" utilizada para la realización de copias de seguridad. Es recomendable establecer el modo "Archivado" de manera que la instancia de la base de datos realice el archivado de archivos de "redo log" automáticamente. se activa el botón para seleccionar los parámetros del mismo 12 . y activar el modo "Archivado".Cursos para compartir lo que sabes Salvo que se tengan varios discos disponibles o se desee utilizar otra estructura de directorios. En pequeños servidores basados generalmente en Windows. DVD. Si el disco sufre un daño físico y deja de funcionar. para ello utiliza un proceso en segundo plano identificado como ARC0 y que archiva los grupos de archivos de redo log online cuando están llenos. Los archivos creados son almacenados en el área de recuperación Flash.

El asistente ofrece una serie de pestañas con los parámetros más significativos en cada caso 13 . Contenido de la Base de Datos En este paso se permite indicar si se desean crear en la base de datos los esquemas de usuarios utilizados por las aplicaciones de ejemplo que acompañan a la base de datos. este formato ayuda a la posterior identificación de los ficheros. Por lo general no será necesario. Se pueden editar los parámetros de inicialización para: Optimizar el rendimiento mediante el ajuste de las estructuras de memoria Definir el tamaño de las unidades más pequeñas de almacenamiento Definir el idioma y juego de caracteres que se van a utilizar Seleccionar el modo en que va a funcionar la base de datos durante la conexión de un usuario. Paso 10. y vienen preestablecidos en la plantilla seleccionada para la creación de la misma.mailxmail . Parámetros de inicialización Los parámetros de inicialización de la base de datos influyen notablemente en su rendimiento. Paso 9.Cursos para compartir lo que sabes El formato por defecto para los archivos utiliza los siguientes parámetros: Parámetro % S % R %T Descripción Incluye el número de secuencia de log Incluiye el identificador del log de reestablecimiento Incluye el número de thread aunque se puede modificar. y dado que requieren unos 130MB de espacio en disco.

. En estos archivos se guardan todos los archivos log y de base de datos.Cursos para compartir lo que sabes También se pueden revisar y modificar todos los parámetros pinchando en el botón "Todos los Parámetros de inicialización. y además pueden ser modificados posteriormente si se considera que el rendimiento no es óptimo desde el Enterprise Manager o con la sentencia SQL ALTER SYSTEM. Paso 11. se muestran la ubicación de los ficheros de la base de datos.." La lista de parámetros es muy larga y sus nombres son poco descriptivos. Almacenamiento de la Base de Datos Mediante una estructura en árbol. abrir y acceder a la base de datos. información de sincronización necesaria para la recuperación y el nombre de la base de datos.mailxmail . Para la creación de una base de datos de propósito general son válidos los valores por defecto. pero la ventana que se abre permite "Mostrar una Descripción" de los mismos que es de gran ayuda para su comprensión. Juegan un papel 14 . Los archivos de datos almacenan los distintos esquemas de los usuarios y las estructuras de datos de cada uno de ellos. Los archivos se agrupan atendiendo a su función: El archivo de control es necesario para montar. Los archivos redo log se utilizan para mantener un registro de todos los cambios realizados en los datos.

2.mailxmail . llamando al resto de ficheros.2.2. DEFINE SYSPassword = &1 PROMPT specify a password for SYSTEM SYSTEM as parameter 2.0\db_4/dbs/spfilepruebasid. DEFINE dbsnmpPassword = &4 PROMPT specify host user administrador password as parameter 5. En versiones anteriores de Oracle.0\db_4\bin\oradim.ora" @C:\temp\bdprueba\postDBCreation.ora password=&&SYSPassword force=y @C:\temp\bdprueba\CloneRmanRestore.2.sql @C:\temp\bdprueba\cloneDBCreation. 0 \ d b _ 4 \ b i n \orapwd. DEFINE SYSMANPassword = &3 PROMPT specify a password for dbsnmp as parameter 4.sql host "echo SPFILE='C:\Oracle\product\10.2.ora' > C : \Oracle\product\10.exe file=C:\Oracle\product\10.exe -edit -sid PRUEBASID -startmode auto -srvcstart SYSTEM C : \Oracle\product\10. Lo más didáctico en nuestro caso va a ser crear el fichero de comandos y revisar las sentencias que se van a ejecutar para llevar a cabo la creación de la base de datos.0\db_4\database\PWDpruebasid.0\db_4\bin\sqlplus /nolog @C:\temp\bdprueba\pruebasid. DEFINE hostPassword = &5 host C : \Oracle\ p r o d u c t \ 1 0 . los cambios se pueden recuperar de los archivos redo log. ésta era la única manera de crear la base de datos. DEFINE SYSTEMPassword = &2 PROMPT specify a password for SYSMAN as parameter 3.sql Como se ve crea la estructura de directorios.2.exe -new -sid PRUEBASID -startmode manual -spfile C : \Oracle\product\10. generar una plantilla con las características que hemos definido en los pasos anteriores o bien crear un fichero de comandos que podremos ejecutar posteriormente.0\db_4\cfgtoollogs\DBCA\prueba mkdir C:\Oracle\product\10.2.0\db_4\database\initpruebasid.2. Paso 12. Si navegamos al directorio donde se han creado los ficheros se obtendrá el siguiente listado Como se ve hay un "Archivo por lotes MS-DOS" que se puede ejecutar y desencadena el proceso de creación de la base de datos.Cursos para compartir lo que sabes importante en la recuperación de la base de datos.sql @C:\temp\bdprueba\postScripts.0\db_4\bin\oradim. Opciones de creación Finalmente podemos iniciar la creación de la base de datos. inicia la instancia de la base de datos con el comando "oradim.0\db_4\dbs set Oracle_SID=pruebasid C:\Oracle\product\10. ya que si se produce un fallo en la misma antes que estos datos se escriban en el disco.sql" set verify off PROMPT specify a password for SYS as parameter 1. Su contenido es: mkdir C:\Oracle\admin\prueba\adump mkdir C:\Oracle\admin\prueba\bdump mkdir C:\Oracle\admin\prueba\cdump mkdir C : \Oracle\admin\prueba\dpdump mkdir C:\Oracle\admin\prueba\pfile mkdir C:\Oracle\admin\prueba\udump mkdir C : \Oracle\flash_recovery_area mkdir C:\Oracle\oradata\prueba mkdir C : \Oracle\product\10.sql 15 .exe" e invoca al SQLPlus para ejecutar el fichero "pruebasid. 2 .

alter database national character set INTERNAL_CONVERT AL16UTF16. Puede agregar discos a un grupo de discos. GROUP 2 ('C:\Oracle/oradata/prueba/redo02. Create controlfile reuse set database "prueba" MAXINSTANCES 8 MAXLOGHISTORY 1 MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 Datafile 'C:\ Oracle\oradata\prueba\SYSTEM01.0\db_4\assistants\DBCA\templates\Seed_Database. alter database character set INTERNAL_CONVERT WE8MSWIN1252. El procedimiento seguido para crear la base de datos consiste en recuperar la copia de seguridad. alter database rename global_name to "prueba".DBF' LOGFILE GROUP 1 ('C:\Oracle/oradata/prueba/redo01.restoreDataFileTo(3. alter user SYS identified by "&&SYSPassword". begin dbms_output. 'UNDOTBS1'). GROUP 3 ('C:\ racle/oradata/prueba/redo03. connect "SYS"/"&&SYSPassword" as SYSDBA set echo on spool C:\temp\bdprueba\cloneDBCreation. Como ejemplo se muestra a continuación el contenido del fichero "cloneDBcreation. dbms_backup_restore. 0.restoreSetDataFile.sql" y su finalidad es recuperar la base de datos inicial a partir de la cual se va a realizar la creación de la nueva base de datos. 'C:\Oracle\oradata\prueba\SYSAUX01.put_line(' Specifying datafiles.. exec dbms_backup_restore.log') SIZE 51200K RESETLOGS.restoreDataFileTo(2. donde se ven los comandos utilizados para actualizar la base de datos con las opciones que se han ido indicando en el asistente. 'C:\Oracle\oradata\prueba\USERS01. y posteriormente ejecuta el resto de ficheros de comandos.'YYYYMMDD HH:MI:SS') from DUAl. 'SYSAUX'). El primer fichero de comandos que se ejecuta es "CloneRmanRestore.DBF'. declare omfname varchar2(512) := NULL. ').ASM) y los grupos de discos asociados independientemente de si se crea una base de datos. end if.. serial#.deviceDeallocate. borrar y modificar plantillas de bases de datos. done boolean.DBF'. / select TO_CHAR(SYStimestamp.log') SIZE 51200K. si no que se parte de una base de datos de la que se ha realizado una copia de seguridad y que está incluida entre los ficheros de instalación. program.DBF'. 'C:\Oracle\oradata\prueba\UNDOTBS01.log') SIZE 51200K. 'C:\Oracle\oradata\prueba\SYSAUX01.restoreDataFileTo(4.log') SIZE 51200K.. 'C:\ Oracle\oradata\prueba\SYSTEM01. done).deviceAllocate. Suprimir una base de datos En dos pasos permite suprimir una base de datos y todos sus archivos. 'SYSTEM'). username from v$session.put_line(' Restoring . 0. variable devicename varchar2(255).').DBF'. select TO_CHAR(SYStimestamp. dbms_backup_restore.DBF'.zerodbid(0).log') SIZE 51200K RESETLOGS. así como añadir opciones de base de datos que no se han configuradas previamente. dbms_backup_restore. if done then dbms_output. set serveroutput on. dbms_output..mailxmail . startup nomount pfile="C:\temp\bdprueba\initpruebasidTemp. 'C:\Oracle\oradata\prueba\UNDOTBS01.log Create controlfile reuse set database "prueba" MAXINSTANCES 8 MAXLOGHISTORY 1 MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 Datafile 'C:\ Oracle\oradata\prueba\SYSTEM01. dbms_output.DBF' SIZE 20480K REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED. 'C:\Oracle\oradata\prueba\USERS01. 'C:\Oracle\oradata\prueba\SYSAUX01. ')..put_line(' Allocating device.DBF'.put_line(' ORA-XXXX: Restore failed '). GROUP 3 ('C:\ racle/oradata/prueba/redo03.put_line(' Specifing datafiles. :devicename := dbms_backup_restore.restoreBackupPiece('C:\Oracle\product\10.log') SIZE 51200K. dbms_output. dbms_backup_restore.DBF' LOGFILE GROUP 1 ('C:\Oracle/oradata/prueba/redo01.Cursos para compartir lo que sabes Al ejecutar el fichero se pide que se introduzcan las claves para los superusuarios de administración. dbms_backup_restore. select sid. alter database O "prueba" open resetlogs. dbms_backup_restore. montar todos los grupos de discos o uno de ellos o crear instancias de ASM 16 . shutdown O immediate.put_line(' Restore done. 'C:\Oracle\oradata\prueba\UNDOTBS01. Configurar la gestión automática del almacenamiento En tres pasos se permite crear y gestionar una instancia de gestión de almacenamiento automática (Automatic Storage Management .restoreDataFileTo(1. dbms_backup_restore.ora"..put_line(' ').DBF'.. 0. GROUP 2 ('C:\Oracle/oradata/prueba/redo02. dbms_output. else dbms_output. ')..DBF'. set echo off.. que por seguridad no se han grabado en los ficheros de creación.dfb'.2. '). end. y por ello no se utilizan comandos del tipo CREATE DATABASE.'YYYYMMDD HH:MI:SS') from DUAl. Gestionar las plantillas En nueve pasos se permite crear. 0. Otras operaciones con DBCA Configurar las opciones de una base de datos A través de cuatro pasos permite cambiar la configuración de un servidor dedicado a un servidor compartido. alter SYSTEM enable restricted session.sql". alter SYSTEM disable restricted session.DBF'. select tablespace_name from dba_tablespaces where tablespace_name='USERS'. alter user SYSTEM identified by "&&SYSTEMPassword". 'USERS'). ALTER TABLESPACE TEMP ADD TEMPFILE 'C:\Oracle\oradata\prueba\TEMP01. La base de datos no se crea desde cero. 'C:\Oracle\oradata\prueba\USERS01.DBF'.

Migración de una base de datos Migración de una base de datos Como administrador de la base de datos en ocasiones se ha de migrar una versión antigua del gestor a otra más reciente.mailxmail . como son: Identificar las opciones de la base de datos que han de ser modificadas Verifica el espacio en disco y en los tablespaces Realiza las copias de seguridad necesarias Ejecuta los archivos de comandos necesarios Actualiza los parámetros obsoletos Informa de las tareas que se van realizando.DBUA) El asistente se encarga en siete pasos de ejecutar las tareas que en versiones anteriores debía realizar el administrador manualmente. y además crea ficheros de registro detallados.Cursos para compartir lo que sabes 4. 17 . por ejemplo pasando una base de datos Oracle 9i a la versión Oracle 10g. Para la realización de esta tarea se facilita el asistente denominado "Asistente de Actualización de la Base de Datos" (Database Upgrade Assistant .

Enterprise Manager. ficheros de redo logs y ficheros de control. Puede establecer una política básica utilizando el archivado automático de los ficheros de redo log. siendo una url válida por ejemplo: http://hugo:1158/EM Mostrándose la cónsola de conexión donde se han de introducir los datos de un usuario válido. Al crear nuevos usuarios se le asignan privilegios y roles para controlar el acceso que tienen a los objetos de la base de datos. Configurar las conexiones de red para permitir la conexión de clientes al servidor de base de datos.mailxmail . Para arrancar el Enterprise Manager hay que escribir en un navegador la dirección h t t p : / /direccion:puerto/EM donde la dirección es la del servidor donde se ha instalado la base de datos. Gestión de los objetos de un esquema. creando usuarios y los objetos que necesiten. Introducción al Enterprise Manager Database Control Además de monitorizar el rendimiento de la instancia de la base de datos. Introducción El Enterprise Manager Esta herramienta es instalada por el OUI al finalizar la creación de la base de datos. pero puede ser necesario cerrarla y pararla para realizar operaciones de mantenimiento o recuperación. La instancia suele estar configurada de forma que se arranca automáticamente y se abre la base de datos cuando se inicia el sistema operativo. 18 . El Enterprise Manager permite que usuarios con poca experiencia puedan realizar tareas complejas de administración en un entorno web intuitivo.Cursos para compartir lo que sabes 5. Definir la política de copias de seguridad y recuperación. Administrar usuarios y la política de seguridad. como por ejemplo "SYS" o "SYSTEM" que son superusuarios y tienen todos los privilegios necesarios para acceder a todas las opciones posibles. algunas de las tareas que habitualmente ha de realizar el administrador son: Iniciar la instancia y abrir la base de datos. y aprender a utilizarla es fundamental para la gestión de una base de datos Oracle. Gestionar las estructuras de almacenamiento tales como : tablespaces y ficheros de datos. y el puerto por defecto 1158.

Cursos para compartir lo que sabes 6. Entendemos por cliente cualquier aplicación que manipula los datos almacenados en el servidor.ora # listener. En el cliente es necesario almacenar una descripción de la base de datos a la que se va a poder conectar y que está descrita en el fichero tnsnames.mailxmail .2. El proceso ejecutado en segundo plano en el servidor de base de datos que se encarga de recibir las peticiones de los clientes es conocido como Listener y su configuración se almacena en el fichero listener.2. pero configurado para recibir conexiones básicas de un cliente.2. ORCLE10 = (DESCRIPTION = # Descripción de la dirección del servidor (ADDRESS = (PROTOCOL = TCP)(HOST = Hugo)(PORT = 1 5 2 2)) (CONNECT_DATA = (SERVER = DEDICATED) # Nombre del servicio (SERVICE_NAME = orcle10) ) ) El nombre asignado al servicio también es denominado "Cadena Conexión" en algunas aplicaciones.0\db_4\network\admin\listener.0\db_4\network\admin\tnsnames. y que permite que se comuniquen entre si. 19 .ora # tnsnames. Configuración del entorno de red Configuración del entorno de red Al finalizar la instalación de la base de datos se tiene un servidor de base de datos totalmente funcional. y el servidor a de controlar el acceso a la misma. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (Oracle_HOME = C : \Oracle\product\10.ora # Generated by Oracle configuration tools.ora Network Configuration File: C : \Oracle\product\10. Enterprise Manager. El cliente ha de tener información sobre el servidor de base de datos al que se va a conectar.ora # Generated by Oracle configuration tools.0\db_4) (PROGRAM = extproc) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) (ADDRESS = (PROTOCOL = TCP)(HOST = Hugo)(PORT = 1 5 2 2)) ) ) Es de destacar la descripción del protocolo que utiliza la máquina y el puerto por el cual recibe las peticiones. Oracle Net es una capa de software que se instala tanto en el servidor de base de datos como en los clientes. como por ejemplo SQL*Plus.ora Network Configuration File: C:\Oracle\product\10.

se puede utilizar el Asistente de Configuración de Red.mailxmail . 20 .Cursos para compartir lo que sabes Para facilitar la configuración del entorno de red.

ora Desde la página de inicio de las propiedades de la instancia. se muestran las propiedades del mismo. se tiene un enlace de acceso a los listeners listeners instalados. Pinchando en el enlace.Cursos para compartir lo que sabes Desde el Enterprise Manager también se puede modificar la configuración del Listener y del fichero tnsnames.mailxmail . 21 .

mailxmail .Cursos para compartir lo que sabes Para acceder a los ficheros tnsnames.ora. se ha de volver a la página de inicio de la instancia y seleccionar las propiedades del host En la lista de "Enlaces relacionados" está el enlace a la "Administración de servicios de red" 22 .

Cursos para compartir lo que sabes Al seleccionar la nomenclatura local. y para ello se muestra una pantalla de conexión.ora. 23 . en la que se han de introducir los datos de un usuario del Sistema Operativo que tenga permisos de escritura en el directorio de "Ubicación del Archivo de Configuración". se va a editar el fichero tnsnames.mailxmail .

pero estos dos datos son obligatorios para poder seguir utilizando el Enterprise Manager.Cursos para compartir lo que sabes En Windows es habitual que la conexión al equipo se realice sin tener que introducir un usuario o clave. lo que obliga a definir al menos un usuario con su correspondiente clave. Una vez en la página se pueden editar. 24 .mailxmail . crear y probar los servicios de red definidos.

Cursos para compartir lo que sabes Seleccionando el "Nombre del Servicio de Red" que se desea editar. se accede a una página desde la cual se ofrece de una forma descriptiva información sobre las distintas opciones de configuración. 25 .mailxmail .

pero esto no es viable y hay que buscar una solución de compromiso en la cual se encuentre en memoria principal un alto porcentaje de datos que evite tener que acceder frecuentemente a la memoria secundaria. El SGBDR de Oracle accede a ellos a través de lo que se conoce como una instancia. estado. La información almacenada en la SGA puede ser accedida por múltiples usuarios. En la página de inicio se muestra información sobre la instancia : nombre. pero el Enterprise Manager proporciona recomendaciones para gestionar y optimizar el rendimiento de los "Parámetros de Memoria". aunque utilizamos los valores recomendados por el asistente. es decir. cuyo resultado es la apertura o cierre de la instancia de la base de datos. Pinchando en el botón "cerrar" se inicia el proceso de cierre de la instancia. Desde la ventana de servicios se puede iniciar o detener este servicio.mailxmail . Además.. Lo ideal sería que toda la información estuviera en la memoria principal y la SGA tuviera suficiente tamaño para contenerla. Para que los usuarios puedan conectarse a la base de datos y consultar o manipular los datos almacenados en la misma. Enterprise Manager. La SGA (Shared Global Area) es un área de memoria compartida que almacena datos e información de control de la instancia.. y evita tener que acceder a la memoria secundaria (disco duro) a buscarla. vamos a ver ahora brevemente en qué consisten estas estructuras. es necesario que la instancia esté arrancada. pero será necesario introducir de nuevo los datos de un usuario válido del sistema operativo y del servidor de base de datos. lo que permite acelerar la respuesta del sistema. y que tiene como sufijo el nombre de la misma. Gestión de la instancia Gestión de la instancia La información de la base de datos almacenada por el usuario y la información propia del SGBDR que son necesarios para su correcto funcionamiento están almacenados en ficheros en la memoria secundaria del servidor. En Windows hay un servicio (OracleService<SID>) que se corresponde con los procesos de la instancia. 26 . en Windows hay otros dos servicios relacionados con la instancia que son el asociado al Listener (Oracle<Oracle_home><SID>Listener) y el que permite la conexión de los clientes al Enterprise Manager (Oracle<Oracle_home><SID>DBConsole) Estructuras de memoria Como ya vimos durante la creación de la base de datos se ofrecía la posibilidad de particularizar el tamaño de las estructuras de memoria denominadas SGA y PGA. la cual está formada por unas estructuras de memoria y un conjunto de procesos que se ejecutan en segundo plano. Esta no es una tarea fácil.Cursos para compartir lo que sabes 7. en los discos duros. .

la SGA se divide en varias otras estructuras donde las más importantes son: Nombre Caché de Buffers (45%) Pool Compartido (45%) Descripción Todos los datos de la base de datos que van a ser leídos o modificados. Contiene información para compartir entre los usuarios como sentencias SQL y procedimientos almacenados recientemente ejecutados.mailxmail .Cursos para compartir lo que sabes Como se ve en las gráficas. han de ser almacenados previamente en esta área. 27 .

28 . También hemos visto que si se cierra el sistema operativo sin haber cerrado previamente la base de datos. En Windows ya hemos visto que los servicios asociados a la instancia se arrancan automáticamente. Process Se encarga de liberar los recursos utilizados por los procesos de usuario que fallan. Servicio Descripción Data Se encarga de escribir en la base de datos los bloques de información modificados en el Buffer Cache de la SGA Writer Log Writer Se encarga de escribir los ficheros de Redo Log en el disco Se encarga de realizar la recuperación del sistema cuando se arranca una instancia que había caído anteriormente. Por defecto la base de datos se cierra inmediatamente desconectando a los usuarios que estén conectados y deshaciendo las transacciones no completadas. Si se abre la base de datos. Cuando la base de datos está montada y abierta se permite que los usuarios se conecten e interactúen con ella. pero no la conexión de otros usuarios. Al volver a iniciar el servidor y arrancar la base de datos. la instancia de la base de datos sufre una caída que se recupera automáticamente la próxima vez que se arranque. Procesos segundo plano Como ya se ha comentado en Windows hay un único servicio (OracleService<SID> ) que agrupa los servicios que en otros sistemas operativos como Unix se ejecutan como demonios independientes. Estos privilegios los tienen por defecto el usuario SYS. Por lo tanto.Cursos para compartir lo que sabes La PGA en cambio es un área de memoria específica para cada proceso y contiene información de conexión y propia de la sesión. la base de datos se monta y abre. Monitor Cuando la base de datos está en modo archivado. Al cerrar la instancia se ejecutan los mismos pasos en orden inverso. En algunos sistemas operativos o por configuración puede ser necesario que un administrador tenga que abrir y cerrar la instancia manualmente. Por defecto al abrir la instancia. Para la compresión de las tareas que realiza es mejor describirlos por separado. se encarga de almacenar los ficheros de redo log que están Archiver llenos.mailxmail . se abren los ficheros de redo log y datos. Para realizar esta tarea puede utilizar el Enterprise Manager conectándose con privilegios de SYSADMIN o SYSOPER que permiten realizar cualquier tipo de operación o administrar sólo la base de datos respectivamente. Arrancar y parar la instancia La instancia ha de estar arrancada para que los usuarios puedan conectarse y operar con la base de datos. Durante el proceso de apertura de la instancia se realizan las siguientes tareas: Oracle lee el fichero de parámetros Crea las estructuras de memoria Inicia los procesos de segundo plano Si se monta la base de datos. SYSTEM Hay que tener en cuenta que el servidor se puede apagar voluntario o involuntariamente sin haber apagado Monitor la base de datos previamente. en general no es necesaria la intervención del administrador para abrir o cerrar la instancia. esta se recupera automáticamente y no se producen pérdidas de datos. Cuando la base de datos está montada se permite realizar tareas administrativas. además se abre el fichero de control.

Desde la página de administración de la instancia. La página de parámetros muestra tanto los valores contenidos en el fichero SPFILE como los que se están utilizando en ese momento. Se pueden introducir patrones de búsqueda. transaccional. inmediato o abortar. Fichero de parámetros de inicialización Durante el proceso de creación de la base de datos el asistente a optimizado los valores de los parámetros de inicialización. y que almacena de forma persistente los cambios que se realicen dinámicamente. Una vez leídos los parámetros son almacenados en memoria principal y muchos de ellos pueden ser modificados dinámicamente durante el funcionamiento de la base de datos. se pueden consultar los parámetros de inicialización.Cursos para compartir lo que sabes aunque se pueden seleccionar otro tipo de cierres que afectan de diferente forma a las transacciones en curso de los usuarios : normal. aunque el DBA puede modificarlos posteriormente para mejorar el rendimiento. Los parámetros se almacenan en un fichero denominado SPFILE (Server Parameter File) mantenido en el servidor de Oracle.mailxmail . 29 . La pantalla permite introducir distintos criterios para filtrar los parámetros mostrados en base a: su nombre.

y aunque Enterprise Manager ejecutará de forma transparente al usuario la sentencia SQL apropiada. Los cambios realizados en los parámetros dinámicos son aplicados automáticamente por la instancia de la base de datos. Se pueden modificar los valores de todos los parámetros.Cursos para compartir lo que sabes si es básico.mailxmail . en base a la categoría a la que está asignado. Los parámetros identificados como básicos son un subconjunto que se considera que es imprescindible para mantener operativa la base de datos sin problemas. mientras que los estáticos obligan a parar y arrancar la instancia. si ha sido modificados. se puede consultar pinchando en el botón "Mostrar SQL" 30 . si es dinámico.

Las estructuras físicas son aquellas se pueden ver en el sistema operativo somo son los ficheros. Como mínimo toda base de datos tiene dos ficheros de redo logs. de forma que se puede optimizar su uso..) Grupos de tablespaces temporales Al asignar un "Grupo de tablespaces temporales" a un usuario. . Extensiones. Se utilizan para gestionar poder deshacer las transacciones incompletas. Los usuarios más avanzados tendrán conocimiento de la estructura lógica de la base de datos. Este tipo de tablespaces serán asignados a uno o varios usuarios y contendrán los objetos de su esquema (tablas. Gestión del espacio de almacenamiento Gestión de las estructuras de almacenamiento El SGBDR de Oracle tiene estructuras lógicas y físicas que el administrador ha de gestionar. como por ejemplo una tabla. Enterprise Manager.. Temporary tablespaces.mailxmail .Cursos para compartir lo que sabes 8. Archivos de datos Segmentos de Rollback En versiones anteriores se utilizaban para deshacer las transacciones incompletas. A medida que se llenan las extensiones se van añadiendo nuevas extensiones. Es recomendable tener varias copias del fichero de control para poder arrancar la base de datos si una de ellas se estropea. Un segmento contiene un tipo específico de objetos de la base de datos. índices. Son los ficheros del sistema operativo en los cuales se van a almacenar los datos de la base de datos. sus transacciones pueden utilizar cualquiera de los tablespaces temporales asignados al grupo. Bloques de datos. Cada extensión está formada por un conjunto de bloques de datos consecutivos. Un segmento está compuesto de extensiones que definen el tamaño disponible para el segmento. Es una estructura lógica que agrupa uno más ficheros de datos o ficheros temporales (tempfiles) y que permiten almacenar los objetos creados por los usuarios. como son por ejemplo los tablespaces. Desde la página de administración del Entreprise Manager se pueden gestionar con total comodidad las estructuras físicas y lógicas. que tienen por misión registrar todas 31 . Hay varios tipos de tablespaces: Tablespaces Undo tablespaces. Almacenamiento Archivos de Control Descripción Contiene información de control y seguimiento imprescindible para el funcionamiento de la base de datos. Se estructuran en : Segmentos. procedimientos. En versiones anteriores se utilizaban los segmentos de Rollback para realizar esta tarea. y es responsabilidad del DBA gestionar la correspondencia entre las estructuras lógicas y físicas para tener un rendimiento óptimo. y durante la creación se crean tres ficheros. Permiten entre otras tareas mejorar el tiempo de respuesta en las ordenaciones Permanent tablespaces. Es la unidad de almacenamiento más pequeña que se puede utilizar en una operación de entrada o salida de datos. mientras que las estructuras lógicas sólo se pueden ver desde el servidor de Oracle.

pero a medida que se van almacenando datos. 32 . al recuperarse utilizará la información de estos ficheros para Grupos de Redo Logs actualizar los datos. Se entiende por un grupo de redo logs. Estos archivos son estructuras físicas que se pueden consultar desde el sistema operativo. su tamaño y el porcentaje de utilización de los mismos. pero se pueden "agregar" más para mejorar la seguridad y proteger la base de datos contra la pérdida del fichero de redo log. a un fichero de redo log y las copias del mismo.mailxmail . En la página se muestra información sobre la ubicación de los archivos. Si se consultara el tamaño de los mismos se vería que tienen su tamaño máximo aunque tengan un porcentaje de utilización mínimo. que tienen por misión registrar todas las modificaciones que se realizan sobre la base de datos.Cursos para compartir lo que sabes Como mínimo toda base de datos tiene dos ficheros de redo logs. los "Archivos de Datos" crecerán y será necesario asignarles más espacio. Como se aprecia cada archivo de datos tiene asignado un tablespace y un estado. los ficheros de redo log que se van llenando se almacenan Archive Logs como un fichero con nombre propio en el sistema operativo. Por defecto hay un único fichero en el grupo. Cuando se activa el modo de archivado. A través de los enlaces podemos acceder a las estructuras lógicas que nos proporcionan los tablespaces. Si la base de datos se cae sin haber grabado de forma permanente los cambios. Durante la creación de la base de datos se han creado los archivos necesarios para su funcionamiento.

mailxmail . Ejecutar el Asesor de Segmentos para obtener recomendaciones Mostrar Contenido del Tablespace que nos permite ver los objetos de usuario que están almacenados en el mismo.Cursos para compartir lo que sabes Junto a la lista de tablespaces podemos ejecutar acciones asociadas como: Agregar un archivo de datos para aumentar su tamaño o distribuir los datos entre varios discos. Cambiar su estado (online/offline) Seleccionando la acción de "Generar DDL" se puede ver la sentencia SQL que se va a ejecutar para realizar la acción seleccionada. Pinchando sobre el enlace asociado a un tablespace se muestra la información del mismo y se facilitan acciones específicas para el mismo 33 .

ha de ejecutar de vez en cuando el "Asesor de segmentos" que permite compactar los segmentos y eliminar la fragmentación interna de los datos. Además. Desde la página de tablespaces del Enterprise Manager cuenta con formularios para ejecutar estas acciones.Cursos para compartir lo que sabes Tareas del administrador La gestión de las estructuras físicas y lógicas corresponde al adminstrador. ya que si está offline ningún usuario o aplicación podrá acceder al mismo. Como se verá posteriormente. Crear.mailxmail . el SGBDR de Oracle proporciona alertas. e incluye por ejemplo: Definir si es necesario crear un nuevo tablespace para almacenar los datos de un usuario o aplicación. avisos y páginas de monitorización para facilitar esta tarea 34 . y permite controlar el acceso a los datos. Vigilar el porcentaje de uso de los tablespaces. modificar y borrar tablespaces. También se pueden realizar copias de seguridad de un tablespace. Hay que tener en cuenta que los tablespaces pueden ponerse online u offline. por lo que si los objetos de una aplicación están en un único tablespace se simplifica la gestión de copias de seguridad. incrementando su tamaño o añadiendo nuevos ficheros si es preciso.

y como vemos hay 28 aunque la mayoría tienen sus cuentas bloqueadas y sus claves han caducado. Desde la página de administración se tiene acceso a las páginas para la gestión de los "Usuarios y privilegios" Desde un punto de vista práctico vamos a partir del hecho de que para poder operar sobre la base de datos hay que tener un usuario y clave. Anonymous.) están creados pero tienen sus cuentas bloqueadas y no pueden conectarse. y otros muchos usuarios (SCOTT. Las cuentas están bloqueadas por razones de seguridad. SYSTEM. . 35 .mailxmail . ya que un usuario mal intencionado. La mejor forma de conocer cuales son los usuarios presentes en la base de datos es consultando este apartado directamente desde la consola..Cursos para compartir lo que sabes 9. DBSNMP). SYSMAN. Administración de usuarios y seguridad Administración de usuarios y seguridad Al crear la base de datos se han creado varios usuarios de administración automáticamente (SYS. Enterprise Manager.. podría conectarse a la base de datos con las claves por defecto y consultar o modificar la información de la misma.

y la autorización para crear nuevos objetos. General La mínima información necesaria para crear un usuario es asignarle un nombre y contraseña. el resto de valores opcionales toman valores por defecto. o bien cuentan con listas para ayudar en su selección. Para facilitar la gestión de los privilegios se agrupan en roles que pueden ser asignados en grupo a los usuarios..Cursos para compartir lo que sabes Desde esta página se pueden "Crear". el usuario Scott tiene asignada la utilización ilimitada de su tablespace. Como se ve en la siguiente imagen. Se pueden editar las características del usuario "Scott" para: ver el tablespace por defecto que tiene asignado ejecutar la acción de desbloquear la cuenta ver los roles y privilegios que tiene asignados. Privilegios del sistema Los privilegios del sistema otorgan al usuario la capacidad para crear. "Editar" y "Suprimir" usuarios. . Mediante los privilegios asignados al usuario. el SGBDR controla los objetos de la base de datos a los que puede acceder.mailxmail .. 36 . modificar y eliminar los objetos de la base de datos. el nivel de acceso que tiene sobre los objetos.

disparadores.). que aunque es muy extensa. y que permiten su creación. Como ejercicio has de revisar la lista de privilegios del sistema. y puede ser asignado directamente a los usuarios. Los privilegios sobre los objetos pueden ser concedidos a otros usuarios con el objeto de permitirles accederlos y manipularlos.. índices. 37 . generar estadísticas.mailxmail . es decir. borrar o consultar. modificar. se puede agregar un privilegio al usuario "Scott" relativo un "objeto procedimiento" del usuario SYS (SYS. EXECUTE y REFERENCE REFERENCE respectivamente. Por ejemplo. para simplificar esta tarea se han desarrollado los roles. la concesión de privilegios se hace pesada y tediosa.. Los privilegios sobre los objetos suelen ser para insertar.) Si se le retira un privilegio a un usuario esto no tiene efectos en cascada. éste puede ser administrado por su creador o por cualquier usuario que tenga el privilegio ANY PRIVILEGE. secuencias. funciones. . procedimientos..DBMS_FEATURE_PARTITION_SYSTEM) para permitir que los pueda ejecutar "Execute" Roles Cuando hay muchos usuarios y objetos. Privilegios para realizar operaciones sobre el sistema (auditar actividad de la base de datos.Cursos para compartir lo que sabes Los privilegios del sistema se pueden agrupar en: Privilegios para el manejo de objetos (tablas.APS_VALIDATE y SYS. se mantendrán los objetos que pudiera haber creado y las concesiones que pudiera haber realizado a otros usuarios. modificación o borrado. Un rol agrupa bajo un nombre una lista de privilegios. verás que sus nombres son totalmente descriptivos de su significado.. Aunque también son necesarios para poder ejecutar una unidad de programa almacenada en la base de datos o referenciarlos en una clave ajena. vistas. Privilegios sobre objetos Una vez que se ha creado un objeto en la base de datos. paquetes. o conceder los privilegios a otros usuarios.

Como se puede observar.Cursos para compartir lo que sabes Desde el nodo de Roles se pueden "Crear". RESOURCE. Todos estos roles están accesibles para ser asignados a los usuarios. que asigna los privilegios necesarios para poder realizar una conexión a la base de datos y crear objetos sencillos. Como ejercicio compara el rol CONNECT con el rol RESOURCE y observa cuál es la diferencia entre ambos. Son de destacar tres que se han mantenido por compatibilidad con versiones anteriores y que pueden ser de gran utilidad: CONNECT. que permite crear todo tipo de objetos. Seleccionando por ejemplo el rol CONNECT se pueden ver los privilegios del sistema que agrupa. 38 .mailxmail . al crear la base de datos se han creado numerosos roles. "Editar" y "Suprimir".

secuencias. secuencias. se aplican un conjunto de técnicas que van encaminadas a obtener modelos entidad-relación que estén al menos en tercera forma normal. funciones. La forma básica de crear los objetos es utilizando el lenguaje SQL aunque existen multitud de herramientas con entornos gráficos con las que el usuario podrá simplificar esta tarea. Por lo tanto. Sin entrar en conceptos de diseño. Gestión de los objetos del esquema Gestión de los objetos del esquema Objetos de base de datos Los usuarios de la base de datos.. Cuando los desarrolladores o usuarios finales necesiten nuevos privilegios u objetos que no pueden crear. los administradores... La tarea de modelado de la base de datos suele ser realizada principalmente por los analistas funcionales. de igual forma. bastaría con pinchar en el botón "Crear" para que se fueran sucediendo los formularios para definir la tabla y sus columnas. Tablas En el proceso de diseño de una base de datos relacional. recurrirán al administrador. aunque siempre queda un pequeño porcentaje de refinamiento en el diseño que no se realiza hasta la fase de diseño técnico o desarrollo de los componentes. Enterprise Manager. Desde la gestión del esquema. el esquema es una agrupación lógica de tablas. que pueden realizar cualquier operación sobre la base de datos Cada usuario creado en la base de datos tiene su propio esquema. aunque no se entrará en detalle en ellos ya que cae fuera del alcance del curso y se ve en detalle en el curso de El lenguaje SQL. La tabla es el objeto básico de la base de datos.Cursos para compartir lo que sabes 10. . que sólo acceden a la base de datos mediante una aplicación para consultar y modificar información los desarrolladores. que han sido creadas por un usuario. índices. procedimientos. índices. el administrador puede utilizar el entorno gráfico del Enterprise Manager para crear los objetos y generándose de forma automática las sentencias SQL equivalentes.. se permite administrar los objetos de los esquemas tales como tablas. que suelen tener un número limitado de privilegios y roles para consultar objetos y crear objetos en su esquema. En este capítulo se mostrarán las posibilidades de la herramienta para la creación y mantenimiento de los objetos más comunes que soporta una base de datos Oracle. y éste deberá realizar las correspondientes tareas de creación y concesión de privilegios para que los usuarios o desarrolladores puedan realizar su trabajo. . 39 . vistas. se pueden clasificar en: usuarios finales. paquetes. y en él pueden crearse objetos que se considerarán propiedad suya. que sobrepasan el objetivo de este curso y que se tratan en otro curso. donde se van a guardar los datos de los usuarios y el rendimiento de las aplicaciones depende en gran medida de cómo se hayan diseñado.mailxmail .

los datos se van almacenando desordenadamente en ella según se van insertando. 40 . La tabla almacenará sus datos en el tablespace USERS. y aunque el usuario conectado al Enterprise Manager sea SYS. organización en pilas".mailxmail . y su organización es "Estándar. y si se opta por índices se almacenan ordenadamente los campos que forman parte de la clave primaria de la tabla. como por ejemplo la tabla de empleados (EMP) Como se aprecia la tabla está creada en el esquema del usuario "Scott".Cursos para compartir lo que sabes Para aprender cómo crear una tabla es muy didáctico ver las propiedades de las existentes. si se selecciona como una pila. puede crear la tabla en cualquier esquema existente. Durante la creación de una tabla se puede seleccionar si tiene ordenación por pilas o índices.

se muestran sus propiedades en un formato similar al utilizado durante la creación de una nueva tabla 41 .mailxmail . Si se selecciona el botón de "Editar".Cursos para compartir lo que sabes En la sección de restricciones se muestra la clave primaria (PK_) y una clave externa (FK_). se pueden obtener información del mismo. y pinchando en el enlace del índice.

restringir automáticamente el acceso a los datos. Vistas Las vistas son similares a las tablas. Para crear y mantener los datos se deben ejecutar sentencias de manipulación de datos (Data Manipulation Language o DML). pero se pueden consultar sin más que ejecutar la acción "Ver Datos" asociada a la misma. Supongamos que queremos crear una vista que muestre el número y nombre de los empleados (Scott. si no que se recuperan y ordenan en tiempo de ejecución.mailxmail .. Cuando se crea una tabla está vacía.dept). tener columnas agrupadas. como por ejemplo Como se ve se podría haber creado directamente la tabla desde el intérprete de comandos SQL*Plus mediante la sentencia que se muestra en el gráfico anterior. junto con campos calculados. Desde el asistente se indica la consulta en lenguaje SQL con la que se va a crear la vista y los alias con que se van a nombrar las columnas resultantes. que generalmente son ocultar la complejidad de la consulta de unión de tablas a los usuarios. De modificación: La sentencia UPDATE se utiliza para modificar los valores de algún registro o fila ya existente.emp) junto con el número y el nombre del departamento donde trabajan (Scott.Cursos para compartir lo que sabes Pinchando en el botón "Mostrar SQL" se puede visualizar la sentencia SQL que se va a ejecutar. pero con la diferencia fundamental de que sus datos no están almacenados físicamente. Desde el Enterprise Manager no se pueden modificar ni borrar los datos de una tabla. que son: De inserción: La instrucción básica para crear un nuevo registro es INSERT y con ella lo que hacemos es crear un nuevo registro o tupla en la tabla de empleados. no contiene datos. . Una vista se crea por múltiples razones. 42 . es decir. En una vista se puede mostrar información de una o varias tablas.. De borrado: Para borrar registros de una tabla se utiliza la sentencia DELETE.

Quizás en base a los tiempos de respuesta se considerara necesario crear un índice en los campos localidad (LOC) y número de departamento (deptno). Supongamos por ejemplo que una empresa tuviera varios departamentos en cada localidad.Cursos para compartir lo que sabes Seleccionando la acción "Ver Datos" se muestran los valores devueltos al consultar la vista. Indices Los índices tienen por finalidad permitir acelerar la recuperación de los datos de una consulta.mailxmail . Sinónimos Un sinónimo es un sobrenombre que se aplica a los objetos para eliminar por ejemplo la necesidad de tener que referenciarlos teniendo en cuenta el esquema donde han sido creados. y siempre recupera sólo los departamentos de cada una de ellas. Por defecto los objetos sólo pertenecen al esquema del usuario donde se crearon y han de ser referenciados como 43 . Observar que el orden de la columna sirve además para indicar cuáles de ellas forman parte del índice.

mailxmail . hay que recordar que para poder consultar la vista los usuarios han de tener los privilegios necesarios para ello Una vez concedidos los privilegios sobre el objeto al usuario SYSTEM. éste podrá realizar la siguiente consulta: SELECT * FORM EMP_DEPT. En este caso se ha creado un sinónimo público. Secuencias Una secuencia es un objeto que permite generar números secuenciales sin repetición en un entorno de usuarios concurrentes.NombreObjeto".Cursos para compartir lo que sabes " NombreEsquema. 44 . para que cualquier usuario la pueda referenciar como "EMP_DEPT". es decir que va a poder referenciarse desde cualquier otro esquema. Supongamos por ejemplo que queremos simplificar la referencia a la vista de "Empleados_Departamento" del usuario Scott. Aunque pueda ser referenciado por otros usuarios distintos de Scott.

El código almacenado puede ser codificado en PL/SQL o Java. puede se utilizado por cualquier usuario autorizado. aunque lo más habitual será utilizar PL/SQL. En la siguiente imagen se muestra una consulta realizada para ver los paquetes válidos del usuario "SYSTEM" desde la cual se tiene acceso a la página de edición para compilar y corregir los posibles errores. pero efectos laterales al modificar otros objetos de la base de datos pueden quedar en estado "no válido" y no serán ejecutables. 45 . S Para conocer el valor actual de la secuencia podremos hacer la siguiente consulta: SELECT SECUENCIA. Paquetes Un paquete es una estructura de almacenamiento que contiene la descripción de tipos.mailxmail . Programas Oracle permite almacenar procedimientos en la base de datos. con lo que se una vez probado y verificado su funcionamiento.Cursos para compartir lo que sabes En este caso hemos creado la secuencia de nombre SECUENCIA que comienza con uno y cada vez que se recupera un nuevo valor ( ECUENCIA. funciones y procedimientos públicos que se van a codificar en su cuerpo. variables. y los crearemos en orden. además hemos fijado un valor máximo y mínimo. Los paquetes y en general todos los programas han de estar en estado "válido" para su correcta ejecución.CURRVAL FROM DUAL.NEXTVAL) lo incrementa en 1.

Cuerpo del paquete En el cuerpo del paquete se han de codificar las funciones y procedimientos públicos que han sido declarados en el paquete.exe que se puede encontrar en el directorio <raíz de Oracle>/bin/wrap. Oracle permite almacenar en la base de datos el código en un formato codificado conocido como "wrap" y que impide que otros usuarios pueden manipularlo o copiarlo. SQL>SELECT esquema. En este ejemplo. Al terminar la codificación y "Aceptar". Los procedimientos privados sólo podrán ser llamados desde las funciones o procedimientos del paquete.nombre_paquete.nombre_función FROM DUAL. el error es haber codificado primero el cuerpo del paquete y faltar por lo tanto la especificación del mismo.mailxmail . el paquete puede haber quedado en estado "no válido" y entrando en él se puede ejecutar la acción "Compilar" para ver los errores que se producen.nombre_paquete. Al crear un paquete por defecto se muestra la sintaxis de los procedimientos y funciones para facilitar su codificación. y nunca directamente.nombre_procedimiento.Cursos para compartir lo que sabes Para ejecutar un procedimiento o función almacenado basta con indicar el nombre del esquema seguido del nombre del paquete y terminado por el nombre del procedimiento o función. y todas las funciones y procedimientos privados que sea necesario.exe 46 . Para realizar esta operación se utiliza el comando MSDOS wrap. Por ejemplo desde la línea del intérprete de comandos podríamos escribir SQL>EXECUTE esquema.

Observar que mientras que el procedimiento se puede ejecutar directamente. Los disparadores suelen utilizarse para realizar tareas de verificación de los datos.nombre_procedimiento.Cursos para compartir lo que sabes C:\Oracle\product\10. modificación o borrado de datos. Por ejemplo desde la línea del intérprete de comandos podríamos escribir SQL>EXECUTE esquema. SQL>SELECT esquema. control de acceso.mailxmail . Procedimientos y funciones Los procedimientos y funciones pueden ser creados como unidades independientes de código. Para ejecutar un procedimiento o función almacenado basta con indicar el nombre del esquema seguido del nombre del procedimiento o función. y en la pestaña de eventos se muestra un formulario contextual con el tipo de evento al que se asocia el disparador: eventos de tabla eventos de vista 47 .0\db_4\BIN>wrap iname=origen..sql oname=destino. vistas u otros eventos y se ejecuta cada vez que se produce por ejemplo una inserción. Disparadores de base de datos Un disparador al igual que los procedimiento y funciones.. . es una unidad de código almacenada en la base de datos con la particularidad de que está asociado a tablas.sql El código que está "wrapped" o "ajustado" no puede ser modificado desde el Enterprise Manager y aparece el mensaje "Source code could not be displayed. y se diferencian en que las funciones devuelven un valor. tareas de auditoria. la función ha de ser llamada desde una sentencia SELECT para tratar el dato devuelto.2. because it is wrapped" o "No se ha podido mostrar el código de origen porque está ajustado". La página de definición del disparador es similar a la del resto de programas.nombre_función FROM DUAL.

Cursos para compartir lo que sabes eventos del esquema eventos de la Base de Datos 48 .mailxmail .

COUNT(*) ---------. El diccionario de datos se crea en el esquema del usuario SYSTEM y ha de permanecer en él.298 SQL> SELECT COUNT(*) 2 FROM USER_VIEWS.-----------------. generalmente SYS.15045 SQL> SELECT COUNT(*) 2 FROM CATALOG. Guión Descripción catalog. COUNT(*) ---------. SQL> 49 .2041 SQL> Es imposible guardar toda esta información en nuestra memoria. Bastaría hacer una consulta desde SQL*Plus de las tablas y vistas del usuario SYS para ver el número de objetos de los que podemos obtener información SQL> CONNECT SYS@SID AS SYSDBA. y que se actualiza con cada operación de definición de datos (DDL).1820 SQL> SELECT COUNT(*) 2 FROM USER_OBJECTS. OBJECT_TYPE 3 FROM ALL_OBJECTS 4 WHERE OBJECT_NAME LIKE UPPER('%&patrón_de_búsqueda%') 5* ORDER BY 2.sql Ejecuta todos los guiones necesarios para poder ejecutar PL/SQL catclust. Introduzca la contraseña: ********** Conectado.sql Crea las vistas del diccionario de datos para el Oracle9i Real Application Clusters Hemos ido viendo que hay mucha más información almacenada en el SGBDR que los datos de los usuarios. SQL> SELECT COUNT(*) 2 FROM USER_TABLES.I_ACTPACKAGE INDEX CIOPACKAGE PACKAGE DBMS_REPCAT_INTERNAL_PACKAGE PACKAGE IFR_PACKAGE PACKAGE CIOPACKAGE PACKAGE BODY DBMS_REPCAT_INTERNAL_PACKAGE PACKAGE BODY IFR_PACKAGE PACKAGE BODY DBMS_REPCAT_INTERNAL_PACKAGE SYNONYM CI_PACKAGES VIEW CI_ROOT_PACKAGES VIEW 10 filas seleccionadas. COUNT(*) ---------.1 Introduzca un valor para patrón_de_búsqueda: package antiguo 4: WHERE OBJECT_NAME LIKE UPPER('%&patrón_de_búsqueda%') nuevo 4: WHERE OBJECT_NAME LIKE UPPER('%package%') OBJECT_NAME OBJECT_TYPE -----------------------------. catproc.sql Crea el diccionario de datos y sinónimos públicos para sus vistas.mailxmail . COUNT(*) ---------. pero en un momento dado podemos recuperar algunas referencias válidas si utilizamos la siguiente consulta: SQL> R 1 SELECT OBJECT_NAME 2 . El diccionario es un repositorio de datos que almacena información sobre todos los objetos contenidos en la base de datos. y que en ocasiones puede ser necesario consultarla.Cursos para compartir lo que sabes El diccionario de datos Si se crea la base de datos con el DBCA se crea automáticamente el diccionario de datos. Si la base de datos se crea manualmente será necesario será necesario ejecutar estos guiones (scripts) con un usuario con privilegios de SYSDBA.

parámetros. desde la rotura de un disco duro hasta el borrado accidental de uno o varios ficheros. Para realizar copias consistentes de la base de datos es necesario cerrarla previamente. Se dice que una copia de seguridad es inconsistente cuando los ficheros no contienen todos los cambios realizados en la base de datos. Los fallos a nivel físico pueden ser de cualquier tipo. Gestión de copias de seguridad Gestión de copias de seguridad Cuando se habla de copias de seguridad se está hablando de poder recuperar la base de datos ante posibles fallos físicos de alguno de sus ficheros de : datos. Aunque el proceso de recuperación es más sencillo cuando la copia de seguridad es consistente tiene la desventaja de que hay que parar y cerrar la base de datos. Esta tarea se utiliza para sincronizar la información contenida en los ficheros recuperados con los cambios registrados en los ficheros de redo log. También se pueden exportar datos de tablas a nivel lógico. En este área Oracle se encarga automáticamente de almacenar por ejemplo los ficheros de redo logs. Si es necesario recuperar los ficheros del sistema de almacenamiento secundario y almacenarlos en el directorio donde la base de datos lo busca Recovery. Guardar una copia de los ficheros de la base de datos en un medio de almacenamiento secundario. y es necesario utilizar la información de los ficheros de redo log más recientes. Básicamente se han de realizar tres tareas: Backup. control. 50 . y por ello se denomina copia de seguridad fuera de línea (Backup offline). Enterprise Manager. Backup En el paso 8 de la creación de la base de datos se puede configurar la gestión de copias de seguridad automáticas. o redo log. de todos ellos se puede recuperar la información si se realiza una adecuada gestión de copias de seguridad. Restore.mailxmail .Cursos para compartir lo que sabes 11. por lo que nos centraremos en el nivel físico. aunque en cualquier momento se puede configurar mediante: La utilización de un área de recuperación flash (Flash Recovery Area) que permite automatizar la gestión de copias de seguridad de la mayoría de los ficheros. por ello suele ser útil realizar copias de seguridad inconsistentes con la base de datos trabajando en modo archivado (ARCHIVELOG) que ofrecen total seguridad para la recuperación posterior de la base de datos. y de borrarlos cuando ya no son necesarios. pero no son suficientes para recuperar la base de datos.

Entre ellas se pueden indicar cuándo hacer copias de seguridad de determinados ficheros. El Enterprise Manager sugiera una política de copias de seguridad básica pero robusta 51 .Cursos para compartir lo que sabes Ejecutar la base de datos en el modo archivado (ARCHIVELOG) de manera que se puedan realizar las copias de seguridad en línea sin parar la base de datos. Definir las políticas que se han de aplicar para gestionar el área de memoria flash.mailxmail . Utilizar el área de recuperación flash para almacenar los ficheros de archivado. y cuánto tiempo se han de mantener los datos.

recover copy of database with tag 'ORA$OEM_LEVEL_0'. las copias de seguridad incrementales contienen los cambios que se han realizado a la base de datos desde la última copia de seguridad completa. siguiéndose un procedimiento similar al del punto anterior. permiten restaurar los ficheros o bien elementos lógicos como tablas o tablespaces. En los días posteriores. La configuración indica que: Se realiza una copia de seguridad completa la primera vez que se ejecuta Las veces posteriores se realizan copias de seguridad incrementales Se guardan las copias de seguridad necesarias para permitir la recuperación completa de la base de datos. } Con esta política de copias de seguridad se pueden recuperar los datos en base a los siguientes casos: Supongamos que al finalizar el primer día (24:00:00 horas) se realiza una copia completa de la base de datos con los datos actualizados hasta ese momento.Cursos para compartir lo que sabes que se completa en cuatro pasos El destino es el disco y concretamente el área de memoria flash.mailxmail . La copia completa realizada el primer día y actualizada con los cambios realizados el segundo día. o hasta un momento en el tiempo anterior a la última copia incremental realizada. backup incremental level 1 cumulative copies=1 for recover of copy with tag 'ORA$OEM_LEVEL_0' database. Las opciones para recuperar la base de datos completa. En el último paso se muestra el comando que se ejecutara diariamente Archivo de Comandos Diario: run { allocate channel oem_disk_backup device type disk. Se planifica la hora del día en que se realiza la copia de seguridad. permiten recuperar los datos hasta cualquier momento del tercer día utilizando el redo log del mismo. La copia de la base de datos junto con el fichero de redo log del segundo día. Restauración y recuperación La recuperación completa de la base de datos a partir de los ficheros contenidos en la copia de seguridad se realiza de forma automática por el Enterprise Manager. permiten recuperar los datos hasta cualquier momento del segundo día. 52 . Al finalizar el segundo día (24:00:00) se realiza una copia de seguridad incremental con los cambios que ha habido durante el segundo día en la base de datos.

53 . y pide confirmación. la base de datos se cerrará y montará. Si se confirma la operación.mailxmail . y para realizar la restauración ha de cerrarla y dejarla en estado "Montada".Cursos para compartir lo que sabes Si realizamos la recuperación de la base de datos completa. el Enterprise Manager informa que la base de datos está "abierta". accediendo posteriormente a una nueva página del asistente de recuperación.

0.Production on Lun Nov 21 17:25:48 2005 Copyright (c) 1982.Production on Lun Nov 21 17:26:01 2005 Copyright (c) 1982.1.2.2. De nuevo es necesario conectarse con un usuario con privilegios de administración en el sistema operativo y en el SGBDR. SQL> SQL> Desconectado de Oracle Database 10g Enterprise Edition Release 10. Indicar si se desea recuperar la base de datos hasta el momento actual o hasta un punto anterior en el tiempo.Production on Lun Nov 21 17:25:55 2005 Copyright (c) 1982.0 . Instancia Oracle cerrada. All rights reserved. OLAP and Data Mining options SQL*Plus: Release 10. 'YYYY-MM-DD HH24:MI:SS')".2.1. Oracle. Oracle. 'YYYY-MM-DD HH24:MI:SS')". Se ha visto que la recuperación de la base de datos se puede realizar hasta un punto de restauración denominado "SCN".Production With the Partitioning. } Al finalizar la operación se muestra el resultado de la misma y los comandos ejecutados. SQL> SQL> Conectado. 'YYYY-MM-DD HH24:MI:SS')". 54 . All rights reserved.1. Flashback. Oracle. SQL*Plus: Release 10. Permite verificar los comandos que se van a ejecutar.Production With the Partitioning. Los cinco pasos que se siguen para la restauración completa son: Point-in-time. OLAP and Data Mining options Recovery Manager : Release 10.2. 2005.1.0. En la recuperación completa no aplica. RMAN> conectado a la base de datos destino: ORCLE10 (DBID=3008764522. Planificar. SQL> Desconectado de Oracle Database 10g Enterprise Edition Release 10. 4> } Iniciando restore en 21/11/05 canal asignado: ORA_DISK_1 canal ORA_DISK_1: sid=156 devtype=DISK Finalizada la recuperación se ha de arrancar la instancia de la base de datos para que vuelva a estar disponible a todos los usuarios. no abierto) se utiliza el archivo de control de la base de datos destino en lugar del catálogo de recuperación RMAN> echo activado RMAN> run { 2> restore database until time "to_date('2005-11-20 17:19:00'. Permite indicar una nueva ubicación para los archivos restaurados. el Enterprise Manager permite que el administrador cree un SCN cuando considere que la información almacenada en la base de datos hasta ese momento es consistente e importante para realizar una recuperación hasta ese punto si fuera necesario.1. run { restore database until time "to_date('2005-11-20 17:19:23'. debiendo de seleccionar la segunda opción. SQL> SQL> Conectado a una instancia inactiva. Cambiar nombre. recover database until time "to_date('2005-11-20 17:19:23'.0 . 2005.mailxmail .0 . All rights reserved. SQL> SQL> Instancia Oracle iniciada.0 . No aplica Revisar. 'YYYY-MM-DD HH24:MI:SS')". Total SYSTEM Global Area 167772160 bytes Fixed Size 1247876 bytes Variable Size 88081788 bytes Database Buffers 71303168 bytes Redo Buffers 7139328 bytes Base de datos montada.0. 3> recover database until time "to_date('2005-11-20 17:19:00'.2.Cursos para compartir lo que sabes Como se ve la instancia está "montada" y se ofrece la posibilidad de iniciarla o realizar la recuperación. 2005.0.0.0 . SQL> SQL> SQL> ORA-01109: base de datos sin abrir Base de datos desmontada.

Desde el Enterprise Manager se pueden "Gestionar las copias de seguridad actuales". La razón puede ser sencillamente que está almacenada en una cinta que no está accesible en ese momento. El registro asociado a una copia de seguridad puede estar en tres estados: Disponible. Caducado. pero el registro todavía está en el repositorio. Esta recuperación se puede realizar tanto en tablas existentes como ya borradas. Si la copia ha sido borrada definitivamente del disco. La gestión de las copias de seguridad incluye por una parte un aspecto físico relacionado con el dispositivo donde ha sido almacenada y otra lógica relativa al registro que se mantiene en el repositorio de la base de datos. indicando que la copia de seguridad no puede ser utilizada para la recuperación de la base de datos. debe de eliminarse el registro del repositorio. Al seleccionar el tipo de objeto "tabla" se puede realizar una recuperación denominada Flasback que muestra los datos que tenía la tabla en el momento indicado. No disponible. Borrar los registros asociados a copias caducadas u obsoletas. 55 . que indica que la copia está en el disco o cinta de almacenamiento y los registros en el repositorio. Una copia de seguridad también puede quedar obsoleta porque se cambie la política de gestión de copias de seguridad y la información contenida en ella no sea necesaria para la recuperación de la base de datos.mailxmail . Desde el Enterprise Manager se puede además: Listar las copias de seguridad que se han realizado Realizar chequeos cruzados que entre otras tareas permiten identificar copias que están caducadas por no estar disponibles los ficheros. Este tipo de recuperación permite recuperar exclusivamente un elemento lógico en el cual se pueden haber insertado.Cursos para compartir lo que sabes Cuando se realiza la recuperación lógica el número de pásos varía entre tres y siete en función del tipo de objeto que se desee recuperar. que indica que la copia de seguridad ha sido borrada del disco. actualizado o borrado datos de manera errónea.

y el DBA puede modificarlos en función de sus necesidades. por ejemplo para comprimir el tablespace. Por defecto están codificadas algunas alertas junto con sus umbrales. y si detecta anomalías informa mediante una alerta al DBA. Las alertar pueden ser enviadas por correo electrónico al DBA. siempre se puede modificar desde la página de configuración.mailxmail . por ejemplo. cuando un tablespace está ocupado al 97% de su capacidad. Aunque la configuración se puede hacer en el paso 4 de la creación de la base de datos. la alerta puede ejecutarse una acción de respuesta (script). El SGBDR de Oracle permite visualizar información sobre el rendimiento de la base de datos y del host. y para ello debe estar configurado correctamente el servidor de correo saliente (SMTP) que se va a utilizar.Cursos para compartir lo que sabes 12. Monitorización y ajuste de la base de datos Monitorización y ajuste de la base de datos Una de las tareas más importantes que debe de realizar el DBA es vigilar el rendimiento de la base de datos y optimizarlo. 56 . Adicionalmente a la generación del aviso. Enterprise Manager.

si no la que aparecerá como remitente de la misma. se pueden establecer reglas y planificar los envíos. Además. El ADDM se ejecuta periódicamente y guarda la información instantánea recopilada en el repositorio AWR (Automatic Worload Repository). 57 . a través de la comparación de las distintas instantáneas es capaz de analizar la evolución del rendimiento e identificar los problemas potenciales.Cursos para compartir lo que sabes La dirección de correo electrónico que se indica no es a la que se va a enviar la notificación. Para vigilar el rendimiento del SGBDR Oracle incluye un Monitor de Diagnóstico de la Base de Datos Automático (Automatic Database Diagnostic Monitor o ADDM) que identifica potenciales problemas y proporciona soluciones a los mismos. Desde la página de preferencias se puede asociar una o varias direcciones de correo destinatarias de las notificaciones para los usuarios administradores.mailxmail . En cualquier momento podemos ejecutar el ADDM y obtener un informe actualizado.

Los asistentes se ejecutan manualmente por el DBA y realizan análisis más exhaustivos que las alertas. Otra útil herramienta son los asesores que proporcionan generalmente una información más comprensiva que las alertas y cubren áreas como el rendimiento o el espacio utilizado. Proporciona información sobre el tamaño del segmento de deshacer (undo) y del tiempo de retención para la Deshacer utilización del Flashback. optimizando el uso de la memoria global de la instancia.. pero consumiendo más recursos del sistema. Los asesores disponibles son Asesor de Memoria Descripción Analiza el tamaño de la SGA y de la PGA. Acceso SQL Analiza las consultas realizadas y puede indicar si es conveniente crear índices o vistas materializadas para mejorar los tiempos de respuesta.mailxmail ..Cursos para compartir lo que sabes La información que analiza el ADDM es: Cuellos de botella en la CPU Gestión ineficiente de conexiones Bloqueos Operaciones de entrada/salida Tamaño de las estructuras de memoria Carga de sentencias SQL Tiempo de ejecución de procedimientos PL/SQL y Java . Ajustes 58 .

Permite establecer el tiempo medio de recuperación (Mean Time To Recovery) Segmentos Proporciona información útil para el dimensionado de los segmentos y para detectar aquellos que deben ser comprimidos.Cursos para compartir lo que sabes Ajustes SQL MTTR Analiza las sentencias SQL y ofrece optimizaciones sobre las mismas. 59 .mailxmail .

Sign up to vote on this title
UsefulNot useful