Liberar espacio

Boris Valladares
09 de Noviembre del 2004
Buena tarde grupo, tengo un servidor con Windows 2000 advanced Server y la base de datos Oracle 8i,
resulta que en un mismo table espace donde tengo un usuario dueño de ciertos objetos importe un archivo dmp de otra base de datos, lo use como dos semanas y luego borre el usuario pero el espacio en disco ocupado crecio, como puedo liberar ese espacio si ya borre el usuario temporal??
Gracias

Jorge-DBA
09 de Noviembre del 2004
Lo que necesitas es hacer un mantenuimiento al Tablespace.

Te ofrezco 2 opciones ANTES REALIZA UN COLDBACKUP O UN BUEN RESPALDO (siempre y cuando no sea el tablespace system):

1)
Verifica con el Tablespace Map del OEM, cuanto espacio libre contiguo tienes disponible apartir del ultimo segmento que esta escrito, realiza un Coalesce y realizas un resize al Datafile con esta caracterísitca, la desventaja es que si algun segmento se extendió y si escribió casi al final del tablespace, tendrías que reconstruirlo nuevamente y volverlo a crear, antes haciendo un Resize.

2)
Realiza un export únicamente de los segmentos que esten escritos en el Tablespace, posteriormente los remueves, realizas un coelsce al tablespace, e importas los segmentos del archivo dump que generaste en el respaldo (export), Esto hará que cada segmento escriba las extensiones contiguas y como resultado obtendrás solo el espacio libre que requieres (sin segmentos).

3)

Crea un nuevo tablespace permanente y solo mueves los segmentos del tablespace origen al nuevo que acabas de crear, para los indices realizas un rebuild y para las tablas las alteras moviendolas de un tablespace origen al nuevo con una sentencia MOVE, posteriormente al tablespace realizas un reisize al (a los) datafile(s) y nuevamente vuelves a mover los segmentos del tablespace nuevo al origen una vez que esten todos los segmentos como deseas con el tablespace con la medida que tenia origienalmente remueves el tablespace nuevo que es el que se supone, ya no tiene segmentos escritos.

Saludos.

Jorge - DBA

Jorge-DBA
09 de Noviembre del 2004
Lo que necesitas es hacer un mantenuimiento al Tablespace.

Te ofrezco 2 opciones ANTES REALIZA UN COLDBACKUP O UN BUEN RESPALDO (siempre y cuando no sea el tablespace system):

1)
Verifica con el Tablespace Map del OEM, cuanto espacio libre contiguo tienes disponible apartir del ultimo segmento que esta escrito, realiza un Coalesce y realizas un resize al Datafile con esta caracterísitca, la desventaja es que si algun segmento se extendió y si escribió casi al final del tablespace, tendrías que reconstruirlo nuevamente y volverlo a crear, antes haciendo un Resize.

2)
Realiza un export únicamente de los segmentos que esten escritos en el Tablespace, posteriormente los remueves, realizas un coelsce al tablespace, e importas los segmentos del archivo dump que generaste en el respaldo (export), Esto hará que cada segmento escriba las extensiones contiguas y como resultado obtendrás solo el espacio libre que requieres (sin segmentos).

3)

Crea un nuevo tablespace permanente y solo mueves los segmentos del tablespace origen al nuevo que acabas de crear, para los indices realizas un rebuild y para las tablas las alteras moviendolas de un tablespace origen al nuevo con una sentencia MOVE, posteriormente al tablespace realizas un reisize al (a los) datafile(s) y nuevamente vuelves a mover los segmentos del tablespace nuevo al origen una vez que esten todos los segmentos como deseas con el tablespace con la medida que tenia origienalmente remueves el tablespace nuevo que es el que se supone, ya no tiene segmentos escritos.

Saludos.

Jorge - DBA