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;