oracle檔案清理

2021-09-20 20:02:34 字數 1263 閱讀 1038

1、檢視各資料檔案的使用情況,sql語句如下:

select

d.file_name,d.file_id,

round(d.total_size_gb) total_size_gb,

round(f.free_size_gb) free_size_gb,

round(((d.total_size_gb - f.free_size_gb)/d.total_size_gb) * 100) used_space_pct

from

(select 

file_name,file_id,

sum(bytes)/1024/1024/1024 total_size_gb

from 

dba_data_files

group by file_name,file_id

) dleft join

(select

file_id,tablespace_name,

sum(bytes)/1024/1024/1024 free_size_gb

from 

dba_free_space

group by file_id,tablespace_name

) fon d.file_id = f.file_id 

/*where  f.tablespace_name='dprp_data'*/

order by used_space_pct asc;

查詢結果字段說明:

file_name :資料檔案在伺服器上的路徑及位置

file_id : 資料庫檔案的id號

total_size_gb: 資料檔案的大小

free_size_gb:資料檔案的空餘大小

used_space_pct:資料檔案的使用量

如上圖,file_id字段值未30的資料檔案,實際大小20g,還有13g空餘的,,只使用了20-13=7g,使用量為32%,,為了節約伺服器的磁碟空間,我們可以將資料檔案縮小到10g,10-7=3,多流出3g的空間,防止資料檔案內容增加的時候沒有剩餘空間,給它剩餘3g的空間,使用如下的sql:

alter database datafile 30 resize 10g; //執行縮小的語句

請看:

Oracle 清理歸檔檔案

1 使用sysdba使用者登入檢視archive log 存放位置 2 一般value為空時,可以用archive log list 檢查一下歸檔目錄和log sequence 3 檢查flash recovery area的使用情況,可以看見archivelog已經很大了,達到102.21 4 計...

oracle資料清理日誌

背景 公司生產資料庫伺服器表空間free不足,整個空間32個g,92 的空間被5 的表給佔了 這幾張大表中大部分都是歷史資料,實際可用資料只需6個月內即可,每張表有2000萬左右的資料,檢索效率較低 為了節省空間,提供表的檢索效率,所以考慮對這幾張大表進行歷史資料清理 方案 1 利用凌晨0 00到5...

oracle歸檔日誌清理

rman清除方式會自動清除磁碟上的歸檔日誌檔案,同時會釋放控制檔案中對應的歸檔日誌的歸檔資訊。list expired archivelog all 列出所有失效的歸檔日誌 delete archivelog until sequence 16 刪除log sequence為16及16之前的所有歸檔...