Capítulo 14. Diversas funciones de alta disponibilidadEn el capítulo se verán las características principales para mejorar...
NOTALa tabla flashback de comando antes de soltar no se recupera restricciones de referencia.Usted puede utilizar el cambi...
El parámetro de inicialización DB_FLASHBACK_RETENTION_TARGET establece el límite superior(en minutos) para que tan atrás e...
Usted puede verificar el estado de la base de datos que recuerda al consultar V $DATABASE, la columna FLASHBACK_ON tendrá ...
Extracto del diccionario de datos para rehacer los archivos de registro.         Utilice el diccionario de datos en línea ...
Reorganización de objetos en líneaPuede reorganizar muchos objetos de bases de datos en línea. Las opciones son lassiguien...
La redefinición de las tablas en líneaPuede cambiar la definición de una tabla a la vez que sea accesible por los usuarios...
NOTAPara evitar ese paso manual, puede utilizar el COPY_TABLE_ DEPENDIENTESprocedimiento para crear todos los objetos depe...
Conclusión:Oracle tiene diferentes tipos de funciones las cuales sirven para mejorar las aplicaciones de lasbases de datos...
Upcoming SlideShare
Loading in …5
×

Conclu miriam

221 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
221
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Conclu miriam

  1. 1. Capítulo 14. Diversas funciones de alta disponibilidadEn el capítulo se verán las características principales para mejorar las aplicaciones de las bases dedatos. Una de estas aplicaciones es el LogMiner entre otras las cuales son mejoras de versionesanteriores de Oracle. La papelera de reciclaje y el comando flashback de base de datos, se hanintroducido en Oracle Database 10g y mejorado en Oracle Database 11g.Funciones para mejorar la disponibilidad de la base de datos:-Flashback Gota-Flashback Database-LogMiner-Online reorganización objetos opcionesFlashback Drop Este se comporta como la papelera de reciclaje en Windows puede restaurar a su asu estado original objetos con todos los índices y limitaciones intactos. Flashback base de datos sebasa en los datos almacenados en el área de recuperación flash, esta área se introdujo a OracleDatabase 10g. LogMiner, disponible desde Oracle9i, se basa en los archivos de registro de rehacerpara ver los cambios realizados en las tablas, índices y otras estructuras de bases de datosLa recuperación de las Tablas eliminadas mediante Flashback Gota Cuando se elimina una tabla (índices asociados, limitaciones y las tablas anidadas), Oracle Nosuelta inmediatamente el espacio de la tabla en disco para su uso por otros objetos en el espaciode tablas. En su lugar, los objetos son retenidos en la papelera de reciclaje hasta que se realicemanualmente por el usuario o que se necesite espacio por objetos.Usted puede ver los objetos caídos consultando la vista RECYCLEBIN diccionario de datos. Notaque el formato para la columna OBJECT_NAME pueden diferir entre las versiones:SQL>selectobject_name, original_Name operación, tipo de usuario, 2 can_undrop espacio,desde RecycleBin;RECYCLEBIN muestra las entradas de papelera de reciclaje para el usuario actual. DBA pueden vertodos los objetos caídos a través de la DBA_ RECYCLEBIN diccionario de datos de punto de vista.SQL>AUTOR table flashback;Flashback completeLa tabla ha sido restaurada, con sus filas, índices y estadísticas. ¿Qué sucede si se le cae de la tablaAUTOR, vuelva a crear, y luego caer de nuevo? El reciclaje bin contendrá tanto las tablas. Cadaentrada de la papelera de reciclaje serán identificados a través de su SCN y la fecha y hora de laentrega.
  2. 2. NOTALa tabla flashback de comando antes de soltar no se recupera restricciones de referencia.Usted puede utilizar el cambio de nombre a cláusula de la tabla de comandos flashback a cambiarel nombre de la tabla a medida que lo flash back.De forma predeterminada, la papelera de reciclaje está habilitada en Oracle Database 10 g y 11 g.Usted puede utilizar el RECYCLEBIN inicialización parámetro para activar la papelera de reciclajedentro y fuera, también puede activar y bajar en el nivel de sesión, como en este ejemplo:alterar set session RecycleBin = apagado;La desactivación temporal de la función de papelera de reciclaje no afecta a los objetosactualmente en el la papelera de reciclaje, incluso cuando la papelera de reciclaje estádesactivada, todavía puede recuperar los objetos actualmente en la papelera de reciclaje. Sólo losobjetos cayeron mientras la papelera de reciclaje está desactivada no se pueden recuperar.El Comando de Flashback DatabaseEl comando devuelve la base de datos flashback de la base de datos a un tiempo pasado o SCN,proporcionando una rápida alternativa para realizar la recuperación de base de datos incompletos.A raíz de una operación de base de datos flashback, con el fin de tener acceso de escritura a labase de datos flashed-back, debe reabrir con un alter base de datos resetlogscomando open. Debetener el privilegio del sistema SYSDBA para poder utilizar el comando de base de datos flashback.NOTALa base de datos debe de haber sido puesto en modo de flashback con un alter base de datosretrospectiva en el comando..La sintaxis para el comando de base de datos flashback es el siguiente:Flashback [standby] base de datos [base de datos]{A scn {| timestamp} expr| {A antes scn | timestamp} expr}Puede flash antes de volver a un punto crítico (por ejemplo, una transacción que produce unaconsecuencia no deseada de varias tablas). Utilice el ORA_ROWSCN pseudo-columna para ver losSCN de las transacciones de fila más recientes.
  3. 3. El parámetro de inicialización DB_FLASHBACK_RETENTION_TARGET establece el límite superior(en minutos) para que tan atrás en el tiempo la base de datos puede estar en flashback. El DB_RECOVERY_FILE_DEST parámetro de inicialización establece el tamaño del área derecuperación flash. Tenga en cuenta que el comando de tabla retroceso utiliza los datos yaalmacenados en el espacio de tabla mientras que el comando flashback de base de datos se basaen los registros de flashback almacenados en el área de recuperación flash.El Comando de Flashback DatabaseEl comando devuelve la base de datos flashback de la base de datos a un tiempopasado o SCN, proporcionando una rápida alternativa para realizar larecuperación de base de datos incompletos. A raíz de una operación de base dedatos flashback, con el fin de tener acceso de escritura a la base de datos flashed-back, debe reabrir con una base de datos alternativa con los comandos open.Debe tener el privilegio del sistema SYSDBA para poder utilizar el comando debase de datos flashback.La base de datos debe de haber sido puesto en modo de flashback con unflashback de base de datos en el comando alter. La base de datos debe sermontado de modo exclusivo pero no abrir cuando que se ejecuta el comando.Usted puede utilizar el scn a la cláusula o marca de tiempo para ajustar el punto alque se debe la base de datos completa brilló de nuevo. Usted puede parpadearantes de volver a un punto crítico (tal como una transacción que produce unaconsecuencia no deseada de varias tablas). Utilice el ORA_ROWSCN pseudo-columna para ver los SCN de las transacciones filas más recientes.Si aún no lo ha hecho, tendrá que cerrar su base de datos y permitir retrocesodurante el proceso de arranque utilizando esta secuencia de comandos:startup mount exclusive;alter database archivelog;alter database flashback on;alter database open;Dos ajustes de los parámetros de inicialización de controlar la cantidad de datosde flashback es retenido en la base de datos. El parámetro de inicializaciónDB_FLASHBACK_RETENTION_TARGET establece el límite máximo (en minutos)para que tan atrás en el tiempo la base de datos pueda ser flasheada. ElDB_RECOVERY_FILE_DEST parámetro de inicialización establece el tamaño delárea de recuperación flash. Hay que tener en cuenta que el comando de tablaretrospectiva utiliza datos ya almacenados en el espacio de tabla undo (no crearentradas adicionales), mientras que el comando de base de datos retrospectiva sebasa en los registros de flashback almacenados en el área de recuperación flash.
  4. 4. Usted puede verificar el estado de la base de datos que recuerda al consultar V $DATABASE, la columna FLASHBACK_ON tendrá un valor YES si el flashback seha habilitado para la base de datos.Usando LogMinerOracle utiliza archivos de registro de rehacer en línea para realizar un seguimientode cada cambio que se realice a los datos del usuario y el diccionario de datos. Lainformación almacenada en los archivos de registro de rehacer se utiliza paravolver a crear la base de datos, en parteo en su totalidad, durante la recuperación.Para habilitar la recuperación de la base de datos a un punto en el tiempo despuésde la copia de seguridad de base de datos se hizo, usted puede mantener copiasarchivadas de los archivos de registro de rehacer. La utilidad LogMinerofrece unavisión vital en las modificaciones que se han producido dentro de su base dedatos.Cuando se utiliza LogMiner, se ve tanto los cambios que se han hecho (elSQL_redo) y el SQL que puede utilizar para revertir estos cambios (la SQL_undo).Por lo tanto, puede revisar la historiade la base de datos, sin tener que aplicarningún registro de rehacer, y obtener el código para revertir las transaccionesproblemáticas. Usando LogMiner, se puede señalar la operación en la que lacorrupciónocurrió por primera vez para que pueda determinar el punto correcto enel tiempo o SystemChangeNumber (SCN) para usar como punto final para unarecuperación de base de datos.Cómo funciona LogMinerPara ejecutar la utilidad LogMiner, usted debe tener el privilegio EXECUTE sobreel paquete DMBS_LOGMNR o el papel EXECUTE_CATALOG_ROLE. LogMinerrequiere de un diccionario de datos de traducir completamente el contenido delregistro de rehacer en archivo y traducir los identificadores de objetos internos ytipos de datos para los nombres de objetos y formatos de datos externos.Si un diccionario de datos no está disponible, LogMiner devolverá los datos enformato hexadecimal y la información del objeto como ID de objetos internos.Se tiene tres opciones para la obtención de un diccionario de datos para su usoLogMiner: Extraer la información del diccionario de datos a un archivo plano.
  5. 5. Extracto del diccionario de datos para rehacer los archivos de registro. Utilice el diccionario de datos en línea de la base de datos actual.Extraer el Diccionario de DatosUn problema potencial con la extracción del diccionario de datos en un archivoplano, es que mientras que usted está extrayendo el diccionario de datos, alguienmás podría hacer declaraciones DDL. Por lo tanto, el diccionario de datos puedeser extraído fuera de sincronización con la base de datos. Cuando se use una limaplana para almacenar el diccionario de datos, menos recursos del sistema que sonnecesarios cuando se utiliza rehacer los archivos de registro.Al extraer el diccionario de datos para rehacer los archivos de registro, sininstrucciones DDL se pueden procesar durante el tiempo en que se extrae eldiccionario de datos. Por lo tanto, el diccionario estará sincronizadocon la base dedatos, la extracción es más intensiva en recursos, pero el proceso de extracciónes más rápido.Para extraer el diccionario de datos a un archivo plano o rehacer los archivos deregistro, se utiliza el procedimiento DBMS_LOGMNR_D.BUILD. El archivo dediccionario de datos se coloca en un directorio. Por lo tanto, debetener permiso deescritura para el directorio en el que se coloca el archivo. Para definir la ubicacióndel directorio, utilice el UTL_FILE_DIR parámetro de inicialización.Para ejecutar el procedimiento DBMS_LOGMNR_D.BUILD, debe especificar unnombre para el diccionario, el nombre de ruta del directorio del archivo, y si deseaque el diccionario escrito en un archivo plano o archivos de registro de rehacer.(lupe)
  6. 6. Reorganización de objetos en líneaPuede reorganizar muchos objetos de bases de datos en línea. Las opciones son lassiguientes:-Creación de índices en línea-La reconstrucción de índices en línea-Índices coalescentes línea-Reconstruir índice de tablas organizadas en línea-Usando el paquete DBMS_REDEFINITION redefinir una mesa onlineCrear índices en líneaPuede crear y reconstruir índices, mientras que las tablas de base sean accesibles a losusuarios finales. Las operaciones DDL no se permiten mientras que el índice se estáconstruyendo. Para crear un índice se utiliza el comando CREATE INDEX, asíAUTH crear índice en $ NOMBRE AUTOR (AuthorName) en línea;Volver a generar índices en líneaCuando se utiliza la cláusula de reconstrucciónALTER INDEX, Oracle utiliza el índiceexistente la fuente de datos para el nuevo índice, se debe de tener espacio suficiente paraguardar dos copias del índice. Para volver a generar el índice en línea, utilice la cláusulade reconstrucción en línea ALTER TABLE, como en el ejemplo:alterar AUTH índice $ NOMBRE reconstruir en línea;Índices coalescentes líneaSe pueden unir varios índices para recuperar espacio. Cuando se unen índices, no sepueden mover a otro espacio de tabla (como puede con una reconstrucción).Para unirse un índice, utilice la cláusula de unirse el comando ALTER INDEX. Todos losíndicescaleses son operaciones en línea. El siguiente es un ejemplo coalescer.alterar AUTH índice $ NOMBRE unen;Reconstruir de tablas organizadas por índicesUsted puede utilizar el alter table. . . moverse en línea para reconstruir una línea detabla organizada por índices.El segmento de datos de desbordamiento, si está presente,se vuelve a crear si se especifica la palabra clave de desbordamiento.Al utilizar este comando, no se puede realizar DML paralelo.
  7. 7. La redefinición de las tablas en líneaPuede cambiar la definición de una tabla a la vez que sea accesible por los usuarios de laaplicación.A partir de Oracle Database 11g, hay muy pocas restricciones sobre los tipos de tablas nopueden ser redefinido en línea. Aquí algunos ejemplos de restricciones clave:-La tabla de desbordamiento de un IOT debe volver a definirse en el mismo tiempo que laIOT base.-Las tablas con el control de acceso de grano fino no se puede redefinir online.Las tablas con columnas BFILE no se puede redefinir online.-Tabla con columnas LONG y LONG RAW pueden ser redefinidos, pero el LONG y LONG-Columnas RAW se debe convertir a CLOB y BLOB.Para este ejemplo, la tabla CLIENTE se creará en la SCOTT esquema y entoncesredefinió:crear tabla CLIENTE(Nombre VARCHAR2 (25) de clave principal,Calle VARCHAR2 (50),City VARCHAR2 (25),Estado CHAR (2),NÚMERO Postal);La tabla es un candidato para la redefinición en línea si el procedimiento devuelve elmensaje:PL / SQL terminado con éxito.O puede mandar un mensaje de error.Ahora puede ejecutar el procedimiento START_REDEF_TABLE delDBMS_REDEFINITION para iniciar el proceso de redefinición.Si no se suministra asignación de columna, todos los nombres de columna y definicionesen eltabla original y la tabla provisional debe ser la misma.ejecutar DBMS_REDEFINITION.START_REDEF_TABLE -(SCOTT, Cliente, CUSTOMER_INTERIM);
  8. 8. NOTAPara evitar ese paso manual, puede utilizar el COPY_TABLE_ DEPENDIENTESprocedimiento para crear todos los objetos dependientes de la tabla provisional. Losobjetos dependientes apoyados a través de este método incluyen triggers, índices,subsidios y restricciones.Usted puede verificar mediante la consulta de la redefinición del diccionario de datos:selecttable_name, high_valuede DBA_TAB_PARTITIONSdonde owner = SCOTT;TABLE_NAMEHIGH_VALUE-----------------------------------------------CLIENTE MAXVALUECLIENTE LPara abortar el proceso después de ejecutar el procedimiento START_REDEF_TABLE,ejecute el Procedimiento ABORT_REDEF_TABLE (los parámetros de entrada son elnombre de esquema, tabla original, y el nombre de la tabla provisional).
  9. 9. Conclusión:Oracle tiene diferentes tipos de funciones las cuales sirven para mejorar las aplicaciones de lasbases de datos ya que mediante estas funciones se pueden restaurar datos al igual que volveratrás en el tiempo en la base de datosLa base de datos se pueden retornar a un punto anterior para corregir ciertoserrores o resultados, también internamente la base de datos utiliza el LogMinerpara contemplar los cambios de uno en uno que se han realizado en las diversasmodificaciones con las cuales nos permiten tener una idea en que momentoexacto queremos regresar la base de datos.Un problema en la extracción de la base de datos, es precisamente el diccionariode datos ya que es posible que otro usuario este usando la base de datos y hagacambios en ella, lo que daría como resultado que la base de datos no este ensincronización.(lupe)Existen muchas maneras de reorganizar objetos de bases de datos en línea algunas son:Crear índices, reconstrucción de índices, índices coalescentes, etc.Para crear o reconstruir índices se necesita que los usuarios finales tengan acceso a las tablas de labase. Para volver a generar un índice en línea se utiliza el comando ALTER INDEX, pero para creareste se debe de tener un espacio para guardar dos copias del índice, a diferencia del índicecoalescente en línea que no necesita de espacio de almacenamiento, así que este es útil paracuando el espacio es limitado.Las tablas temporales no se pueden redefinir en línea, y una tabla se puede redefinir mientras a lavez es la tabla es accesible a los usuarios de la aplicación.

×