1、--找出目前TEST表空间最大的block_idSELECT MAX(block_id)FROM dba_extentsWHERE tablespace_name = 'TEST';MAX(BLOCK_ID)------------- 136
2、--计算目前最大块的段所占用的空间(该数据库的block大小是8192)show parameter db_block_size ;NAME TYPE VALUE------------------------------------ ----------- ------------------------------db_block_size integer 8192SELECT 136*8192/1024/1024 "MAX(M)" FROM dual;MAX(M)----------1.0625
3、--查看表空间物理文件的名称及大小set line 200col file_name for a50select tablespace_name, file_id荑樊综鲶, file_name,round(bytes/(1024*1024),0) "total_space(M)"from dba_data_fileswhere tablespace_name ='TEST' ;TABLESPACE_NAME FILE_ID FILE_NAME total_space(M)------------------------------ ---------- -------------------------------------------------- --------------TEST 6 /u01/oradata/source/test01.dbf 100
4、--resize表空间SQL> ALTER DATABASE DATAFILE '/u01/oradata/source/test01.dbf' RESIZE 1M;ALTER DATABASE DATAFILE '/u01/oradata/source/test01.dbf' RESIZE 1M*ERROR at line 1:ORA-03214: File Size specified is smaller than minimum requiredSQL> ALTER DATABASE DATAFILE '/u01/oradata/source/zfl01.dbf' RESIZE 2M;Database altered.