查詢目前資料庫有哪些表
oracle 查詢表的大小,表空間的使用情況,預設表空間
–檢視某張表占用磁盤空間大小 ( 表名大寫 )
檢視使用者預設表空是那個
–表空間空閑
select tablespace_name, sum(bytes)/(*) as free_space
from dba_free_space
group by tablespace_name;
–檢視資料庫表空間的使用情況
select b.file_name 實體檔案名,
b.tablespace_name 表空間,
b.bytes / / 大小M,
(b.bytes - sum(nvl(a.bytes, ))) / / 已使用M,
substr((b.bytes - sum(nvl(a.bytes, ))) / (b.bytes) * , , ) 使用率
from dba_free_space a, dba_data_files b
where a.file_id = b.file_id
group by b.tablespace_name, b.file_name, b.bytes
order by b.tablespace_name
–編輯擴大表空間,将表空間擴大到2M
若不知道 ‘/oradata/rszpdb/TEST1.dbf’ 這個位址,
可使用一下語句查詢:
select b.file_name 實體檔案名 from dba_free_space a, dba_data_files b
where a.file_id = b.file_id and b.tablespace_name = '表空間名'
group by b.tablespace_name, b.file_name, b.bytes
–通過擴大資料檔案來增大表空間,将表空間 RCMT_TEST 擴大1G (實際用)
alter tablespace RCMT_TEST add datafile '/oradata/rszpdb/RCMT_TEST2.dbf' size G;
/oradata/rszpdb/RCMT_TEST2.dbf:不能跟原來的資料檔案名稱一樣
(原來:/oradata/rszpdb/RCMT_TEST1.dbf)
RCMT_TEST:表空間
1G:擴大1G
在原來資料檔案 RCMT_TEST1.dbf 所擁有的空間使用完之後,會自動使用 RCMT_TEST2.dbf 的空間。