jueves, 19 de noviembre de 2009

Reducir tamaño de tablespace TEMP en Oracle 10g

El día de Hoy se presento este problema justo en el ambiente de produccion de Oracle 10g, el tablespace TEMP crecio intempestivamente a un tamaño de 23GB llenando casi a la unidad donde estaba alojada, como es en un ambiente de produccion que tiene que estar activa las 24 horas no hay forma casi de bajar la DB, asi es que tenia que hacerlo de otra forma online. Lo que al final hice fue lo siguiente:

1. Desde el sqlplus agregue un archivo temporal al tablespace TEMP de la siguiente manera:

Alter Tablespace TEMP ADD TEMPFILE '/d01/oradata/orabn/temp03.dbf' SIZE 4096M;

ven que le di un tamaño de 4GB, bueno le di ese tamaño para que tampoco en el ambiente de produccion no se quede muy chico, en mi caso yo ya tenia 2 archivos temporales asi es que cree el numero 3.

2. Ahora puse en OFFLINE los 2 tempfiles anteriores dejando solo como online al que agregue recien. Esto lo pueden hacer directamente desde el Enterprise Manager o tambien por comandos pero yo lo hice desde el EM.

3. Ahora le hice un DROP a los anteriores que habia puesto como OFFLINE con el sigueinte comando:

ALTER TABLESPACE TEMP DROP TEMPFILE '/d08/oradata/temp02.dbf';

y con eso libere el espacio que estaban utilizando en disco y ademas deje con un nuevo archivo Temp limpio y mas pequeño.

Hay que tener en cuenta que la informacion que se almacena en el TEMP no es relevante y se puede borrar con toda confianza.
Espero que les sirva.
Saludos

No hay comentarios: