Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Manejo de tablespaces - REUSE

Estas en el tema de Manejo de tablespaces - REUSE en el foro de Oracle en Foros del Web. Hola, mi pregunta es relativa al uso de tablespace. Actualmente tengo un tablespace users con un solo fichero dbf de 13 GB. Debido a mis ...
  #1 (permalink)  
Antiguo 10/10/2011, 07:33
Avatar de triqui  
Fecha de Ingreso: diciembre-2008
Ubicación: Zaragoza(España)
Mensajes: 624
Antigüedad: 15 años, 4 meses
Puntos: 31
Manejo de tablespaces - REUSE

Hola, mi pregunta es relativa al uso de tablespace.

Actualmente tengo un tablespace users con un solo fichero dbf de 13 GB.

Debido a mis limitaciones de disco duro, he tenido que limitarlo y poner AUTOEXTESIBLE = NO.

Actualmente me dice que esta lleno, y tengo todas las tablas truncadas.

Me gustaría darle opción de "reutilizar archivo existente".

pero me he dado cuenta que no he encontrado nada que me permita hacer algo como:

Código SQL:
Ver original
  1. ALTER  DATAFILE '/u01/oracle/oradata/sicbi11g/users01.dbf'  REUSE;

Todo lo que he leido de utilizar el reuse es sobre datafiles nuevos, por supuesto esto no me lo puedo permitir porque no puedo crearme un nuevo datafile ya que no dispongo de espacio.

alguna idea que me permita reutilizar el espacio del tablespace user cuando las tablas esten truncados y no se ocupe ese espacio?
__________________
La nueva red social de quinielas quiniela resultados
Cazaresultados Futbol base en directo
  #2 (permalink)  
Antiguo 10/10/2011, 17:50
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Manejo de tablespaces - REUSE

Tienes 3 opciones para resolver el problema.

1. Agregar al tablespace users un segundo datafile sobre una partición diferente con espacio libre.

Código:
alter tablespace users 
 add datafile '/u02/oracle/oradata/sicbi11g/users02.dbf' size 1024M;
La parte que define el tamaño del datafile con "size 1024M" es solo un ejemplo, puedes indicar el tamaño que quieras.

2. Mover el datafile existente a la partición con espacio. Los pasos son: poner el tablespace users en offline, mover desde el sistema operativo el datafile, renombrar en la base el datafile y volver a online el tablespace.

Código:
alter tablespace users offline normal;

--Aquí es donde debes mover el datafile

alter tablespace users rename datafile
    '/u01/oracle/oradata/sicbi11g/users01.dbf'
     TO
     '/u02/oracle/oradata/sicbi11g/users01.dbf';

alter tablespace users online;
3. Por último, crear un segundo tablespace en la partición con espacio y mover las tablas e indices.

Código:
alter table t1 move tablespace_nuevo;
alter index idx1 rebuild tablespace_nuevo;
Saludos

Etiquetas: manejo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:41.