Tamaño de datafiles...

Tengo un problema con un dos datafiles existentes en un tablespace. Resulta que ya están llenos y no tengo ni un solo registro. Me han dicho que esto se debe a que yo he eliminado muchas veces los registros de las tablas existentes y el oracle no los elimina físicamente. ¿Qué debo hacer para liberar ese espacio y dejar los datafile vacíos?. ¿La única forma es eliminando los datafile y volviéndolos a crear?. ¿Existe otra?.
1

1 respuesta

Respuesta
1
Efectivamente, el tamaño de los datafiles son fijos. En realidad cuando creas un tablespace le das un espacio físico "reservado", por así decirlo, da igual que este lleno o vacío, si creas un tablespace de 1GB, para el S.O. hay 1GB lleno, porque esta reservado para Oracle.
Para evitar derroches lo que se puede hacer es crear los datafiles autoextensibles, es decir, de un tamaño mínimo y que vaya aumentando una cifra que tu le dices cada vez que se llene, siendo el único límite el que impone Oracle para los datafiles (creo que son 4GB).
Con respecto a tu pregunta, si no tienes nada en el tablespace, yo lo borraría, borraría los datafiles (sólo en la 9i Oracle borra los ficheros, si es una 8i o inferior, físicamente Oracle no lo hace) y crearía un tablespace con un único fichero de un tamaño un poco mayor a lo que creas que vas a necesitar y el datafile autoextensible.
OJO, no puedes borrar el datafile sin haber borrado su tablespace correspondiente, TE CARGARÍAS "TODA" la base de datos con pocas posibilidades de recuperación.
Saludos y si tienes dudas pregunta, que es una operación delicada
Gracias. ¿Puedo borrar los dos datafile solamente sin borrar el tablespace y luego crear uno sólo como usted me dice?
No, ni de coña que pierdes todos los datos.
Lo mejor es que borres el tablespace y crees uno nuevo, al fin y al cabo el procedimiento es casi el mismo.
Si quieres que te lo de avisa, pero en principio lo mejor es que borres el tablespace.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas