UnDomain Un friki suelto por la red

Pasar de RBS a UNDO


¿Que qué es el RBS y el UNDO?
Pues el RBS es el RollBack Segment y es la forma en la que las BDD anteriores a la 9i gestionan los rollback. El UNDO es el método nuevo (a partir de la 9i) y es gestionado automáticamente creando y eliminando los segmentos de rollback a medida que los necesita.

Si tienes una BDD migrada de una versión anterior a la 9i posiblemente tengas un tablespace llamado RBS o algo así por el estilo.
En este caso, no estaría de mas hacer una pequeña modificación y pasar a UNDO, que además, hace juego con mi alias y mi web ^_^

Tanto si lo necesitas como si es simplemente por curiosidad, vamos a ver paso a paso como hacer esta modificación... y tranquilo, es muy fácil y rápido :)

Lo primero que necesitas es saber el tamaño de tu actual RBS. Para ello, puedes utilizar la siguiente query:

SELECT TABLESPACE_NAME, SUBSTR(FILE_NAME,1,50) FICHERO, ROUND(BYTES/1024/1024) "MB"
FROM DBA_DATA_FILES
WHERE TABLESPACE_NAME IN ( SELECT DISTINCT TABLESPACE_NAME FROM DBA_ROLLBACK_SEGS WHERE TABLESPACE_NAME<>'SYSTEM' );

Con esto ya tenemos el nombre, ruta del DBF y tamaño.
Ahora solo hace falta crear el nuevo tablespace. Para esto, nos basta con ejecutar la siguiente sentencia (OJO CON EL ESPACIO DISPONIBLE!):

CREATE UNDO TABLESPACE [nombre_del_tablespace] DATAFILE '[ruta]/[nombre_fichero]' SIZE [tamaño en megas]M REUSE AUTOEXTEND OFF;

Ten en cuenta que el tamaño que le has de dar tendría que ser el mismo que el tablespace anterior, a no ser que quieras redimensionarlo.
Si quieres poner varios ficheros, una vez creado el tablespace, solo tienes que añadir los nuevos DBFs con la siguiente sentencia:

ALTER TABLESPACE [nombre_del_tablespace] ADD DATAFILE '[ruta]/[nombre_fichero]' SIZE [tamaño en megas]M REUSE AUTOEXTEND OFF;

Una vez creado el tablespace y los DBFs que quieras, solo tenemos que hacer que la BDD los utilice. Para ello tenemos que añadir/modificar los siguientes parámetros de inicio.

UNDO_MANAGEMENT=AUTO
UNDO_RETENTION=14400
UNDO_SUPPRESS_ERRORS=FALSE
UNDO_TABLESPACE=PSAPUNDO
ROLLBACK_SEGMENTS=''

Si es un fichero init.ora, lo editamos a pelo, y si es un spfile tendremos que tirar de un alter system.

Ahora ya solo tenemos que reiniciar la BDD y listos. Ya tenemos activado el UNDO.
¡Pero espera! ¡Todavía tienes el tablespace antiguo ocupando espacio!

Pues nada, se elimina con el siguiente comando, y listos:

DROP TABLESPACE [nombre tablespace antiguo] INCLUDING CONTENTS AND DATAFILES;

¿A que ha sido fácil? :)

Tags:

Enviar un comentario nuevo

El contenido de este campo se mantiene privado y no se mostrará públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.

Más información sobre opciones de formato

Image CAPTCHA
Enter the characters shown in the image. Ignore spaces and be careful about upper and lower case.

Afiliados:


I Love Your Blog

Otorgado por:Darlantan

Inicio de sesión


Todo el contenido mostrado ha sido obtenido libremente por la red. Las marcas indicadas son propiedad de sus legítimos dueños y se muestran a modo informativo de manera libre y voluntaria, sin intención publicitaria ni ánimo de lucro. Todo el material propio, y salvo que se indique lo contrario, se encuentra bajo licencia Creative Commons. Si tienes el Copyright de algún contenido o has detectado algna anomalia, por favor, infórmalo al correo undomain@gmail.com para ser corregido cuanto antes. El autor de esta Web no se hace responsable del contenido de terceras personas y de sites ajenos a este.

Powered by Drupal, an open source content management system