Вы находитесь на странице: 1из 2

Como recrear el Tablespace Temporal TEMP en

Oracle 10g
En muchas ocasiones tenemos que ampliar el Tablespace temporal (nombrado habitualmente
como TEMP) de nuestra Base de Datos Oracle por alguna razn como, Query muy pesada que
requiere ordenacin, creacin de ndices nuevos de tablas enormes, el Tablespace temporal lo
creamos con AUTOEXTEN a ON y se hizo enorme, etc., el caso es que nos podemos encontrar
con un Tablespace demasiado grande y todo ese espacio que hemos aadido de forma puntual
nos gustara recuperarlo. No pueden surgir las siguientes preguntas Como podemos reducirlo
para liberar espacio? Podemos hacer la operacin con la Base de Datos arriba?

En Oracle no hay posibilidad de reducir el tamao del Tablespace temporal por lo que tenemos
que realizar un truco alternativo.

Con el siguiente procedimiento siguiente podemos reconstruir nuestro Tablespace Temporal o
TEMP al espacio que realmente queremos tener y sin necesidad de tirar nuestra base de datos
Oracle, es decir, no vamos a producir perdida de servicio.

Lo primero que necesitamos es un poco de espacio en algn filesystem para crear un segundo
Tablespace Temporal, a este tablespace comodin le llamaremos por ejemplo
TEMP_SECUNDARIO, con unos 20 o 30 MB ser suficiente.

Una vez que tengamos la ubicacin de nuestro espacio creamos este segundo Tablespace
temporal.

view source

print?
1.CREATE TEMPORARY TABLESPACE TEMP_SECUNDARIO TEMPFILE
'/oracle/oradata/PRUEBA01/tmp/PRUEBA01_tmp02.dbf' size 20M;

Bien, ahora vamos hacer que sea el Tablespace Temporal por defecto de nuestra Base de Datos.

view source

print?
1.ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP_SECUNDARIO;

Como nuestra Base de Datos ya tiene un Tablespace temporal nuevo vamos a borrar el original.

Primero ponemos en OFFLINE el Datafile del Tablespace TEMP (original).
view source

print?
1.ALTER DATABASE TEMPFILE
'/oracle/oradata/PRUEBA01/tmp/PRUEBA01_tmp01.dbf' OFFLINE;

Вам также может понравиться