miércoles, 22 de abril de 2009

Que son los tablespace del tipo undo y como funcionan

Es el que almacena la información transaccional. Todas las bases de dato oracle deben tener un metodo para mantener la información que es usada para realizar un rollback. Tal información
consiste en registros de acciones de transacciones, antes de realizarse su commit correspondiente. A esta colección de registros se les conoce como Undo. Los registros de Undo son usados para:

  • Realizar rollback de transacciones cuando se usa la sentencia ROLLBACK.
  • Recuperar la base de datos
  • Proveer consistencia de lectura
  • Hacer una recuperación de una corrupción lógica

Cuando se realiza una sentencia rollback, los registros en undo son usados para deshacer los cambios que fueron hechos en la base de datos por la transacción que aún no ha sido commiteado. Durante la recuperación de la base de datos, los registros de undo se usan para dehacer los cambios aplicados del redo log. Los registros undo mantienen consistencia de lectura pues mantienen una imagen de la data para los usuarios que acceden a la data al mismo tiempo que otro usuario la está alterando.Oracle administra automaticamente el tablespace de undo si el manejo automatico está habilitado y el ususario no crea su undo tablespace. Pero
uno puede crear su propio undo tablespace usando una sentencia como 'CREATE
UNDO TABLESPACE’.

Por ejemplo para crear un tablespace de undo podemos hacer los siguiente:CREATE undo tablespace undo_tbs datafile ‘/u02/oradata/strinix/undo_tbs_01.dbf’ size 600M;

y luego indicar a oracle que queremos usarlo como undo tablespace

alter system set undo_tablespace = ;

6 comentarios:

  1. Muy interesante, aun después de 5 años sigue siendo util :D Saludos y Gracias.

    ResponderEliminar
  2. Muchas gracias por la explicación, más claro imposible!

    ResponderEliminar
  3. Se puede accesar a la BD mientas realizamos Shutdon transaccional ?

    ResponderEliminar
  4. Se puede accesar a la BD mientas realizamos Shutdon transaccional ?

    ResponderEliminar
    Respuestas
    1. No se permiten nuevas conexiones o no se permiten nuevas transacciones a empezar luego de que se ejecuta la sentencia. Es un modo de apagado para solo la instancia, asi que solo espera las transacciones locales a completarse, no todas las transacciones. Luego que todas las transacciones terminan, cualquier cliente conectado a esta instancia es desconectado.

      Eliminar
  5. Buenas Tardes felicidades muy buena explicación.

    ResponderEliminar