Oracle表空間不足的處理步驟
1.檢視所有表空間使用情況
select
b.file_id 檔案ID号,
b.tablespace_name 表空間名,
b.bytes/1024/1024||'M'位元組數,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' 已使用,
sum(nvl(a.bytes,0))/1024/1024||'M' 剩餘空間,
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 占用百分比
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_id,b.bytes
order by b.file_id;
2.檢視使用者預設的表空間.
sql: select username,default_tablespace from dba_users;
3.檢視要擴充的表空間使用的資料檔案路徑與名字
sql:select * from dba_data_files where tablespace_name like 'USERS%';
4.擴充表空間,表空間擴充有兩種方法:增加資料檔案;調整目前資料檔案的大小或擴充的大小。
(1)增加資料檔案
ALTER TABLESPACE TESTTBS
ADD DATAFILE 'D:/ora/datafile/users.ora' SIZE 500M
AUTOEXTEND ON
NEXT 50M
MAXSIZE 2000M;
增加了一個500M的資料檔案,并且可以自動擴充到2G,每次擴充50M。
(2)增加目前資料檔案的大小
ALTER DATABASE
DATAFILE 'D:/ora/datafile/users.ora'
RESIZE 50000M;
或者使用file_id
ALTER DATABASE
DATAFILE 10
RESIZE 50000M;
(3)在使用過程中,如果想改變某個資料檔案的最大大小,可以
ALTER DATABASE
DATAFILE 'D:/ora/datafile/users.ora'
AUTOEXTEND ON
MAXSIZE 10240M;