6.Oracle杂记——数据字典dba_free_space
有时候需要经常查看表空间中剩余的空间,这个就需要用到dba_free_space视图了。
查看该视图如下:
sys@PDB1> desc dba_free_space;
Name Null? Type
------------------------------------------------------------- ------------------------------------
TABLESPACE_NAME VARCHAR2(30)
FILE_ID NUMBER
BLOCK_ID NUMBER
BYTES NUMBER
BLOCKS NUMBER
RELATIVE_FNO NUMBER
其中:
TABLESPACE_NAME :表示表空间名字
FILE_ID :表示表空间所在文件ID
BLOCK_ID:表示空闲块开始的块ID
BYTES:表示空闲的字节数
BLOCKS:表示空闲块数量
RELATIVE_FNO:表示相对文件ID
通过该视图可以直接看到某个表空间的空出来的数量。
此处空闲的最小计算单位应该是块的。
执行如下:
sys@PDB1> select * from dba_free_space;
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS RELATIVE_FNO
------------------------------ -------------------- ---------- ---------- ------------
SYSAUX 9 64200 29818880 3640 4
SYSAUX 9 63376 196608 24 4
SYSAUX 9 63360 65536 8 4
SYSAUX 9 63192 327680 40 4
SYSAUX 9 62744 458752 56 4
SYSAUX 9 62712 65536 8 4
SYSTEM 8 33048 1900544 232 1
USERS 10 12801035468800 126400 10
USERS 10 312 589824 72 10
TPCC 13 13696 97517568 11904 13
TPCC 13 13528 327680 40 13
TPCCTAB 14 12864 104333312 12736 14
SYSAUX 9 62696 65536 8 4
SYSAUX 9 62528 65536 8 4
SYSAUX 9 16096 65536 8 4
SYSAUX 9 63888 65536 8 4
SYSAUX 9 63104 65536 8 4
SYSAUX 9 61920 65536 8 4
SYSAUX 9 63408 65536 8 4
SYSAUX 9 63168 65536 8 4
SYSAUX 9 61816 65536 8 4
SYSAUX 9 63520 65536 8 4
SYSAUX 9 62672 65536 8 4
SYSAUX 9 62168 65536 8 4
SYSAUX 9 61944 65536 8 4
SYSAUX 9 61792 65536 8 4
SYSAUX 9 16040 65536 8 4
SYSAUX 9 62808 65536 8 4
SYSAUX 9 62552 65536 8 4
SYSAUX 9 15832 65536 8 4
SYSAUX 9 62728 65536 8 4
TPCCTAB 14 12712 65536 8 14
TPCCTAB 14 12720 65536 8 14
TPCCTAB 14 12728 65536 8 14
TPCCTAB 14 12736 65536 8 14
TPCCTAB 14 12744 65536 8 14
TPCCTAB 14 12752 65536 8 14
TPCCTAB 14 12408 65536 8 14
TPCCTAB 14 12672 65536 8 14
TPCCTAB 14 12680 65536 8 14
TPCCTAB 14 12688 65536 8 14
TPCCTAB 14 12696 65536 8 14
TPCCTAB 14 12704 65536 8 14
43 rows selected.
因为一个文件中并不一定是连续空闲,所有可能有好几条记录,如果要计算总个文件的空闲空间,需要进一步处理一下。