天天看點

Oracle表空間不足的處理步驟

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;