Nos encontramos ante el evento de tener que redimensionar un Tablespace por un problema de crecimiento de Datafiles no planificado de la Base, por medio de la ejecucion de un proceso batch que inserta cambios en difrentes tablas, una insercion masiva.
Veamos que ocurre.
El DBA ejecuta la sentencia para expandir el Tablespace:
SQL> ALTER TABLESPACE TST_DATA RESIZE 10240 M; ALTER TABLESPACE TST_DATA RESIZE 10240 M * ERROR at line 1: ORA-32773: operation not supported for smallfile tablespace TST_DATA
Ante que nos encontramos ?
Operation not supported for smallfile tablespace string
Esto quiere decir que no estamos intentado ejecutar un cambio soportado solamente para BIGFILEs TABLESPACEs , como es en nuestro caso, redimensionar un tablespace.
La solucion que propongo es realizar el cambio que aplica a los dos siguientes casos:
- Redimensionar el DATAFILE de forma tardicional, que es soportado para los objetos SMALLFILE.
- Redimensionar el DATAFILE y dejarlo con el AUTO EXTEND en ON.
Para el primer caso:
SQL> alter database datafile '/u01/app/oracle/oradata/CDB1/pdb12/tst_data.dbf' resize 10240M; Database altered.
Para el segundo caso:
alter database datafile '/u01/app/oracle/oradata/CDB1/pdb12/tst_data.dbf' autoextend on maxsize 10240M;
Ademas de ello…
Si quieren verificar cuales son los datafiles que nos puede ocacionar este problema, podemos consultar con el siguiente query para trabajar de una forma activa:
set line 150 col FILE_NAME format a70 select tablespace_name, file_name, autoextensible from dba_data_files;
Veamos un ejemplo:
SQL> set line 150 SQL> col FILE_NAME format a70 SQL> select tablespace_name, file_name, autoextensible from dba_data_files; TABLESPACE_NAME FILE_NAME AUT -------------------------- ----------------------------------------------------- --- TST_DATA /u01/app/oracle/oradata/CDB1/pdb12/tst_data.dbf NO
Mit freundlichen Gruessen !