Kiểm tra dung lượng Tablespace đã sử dụng bao nhiêu %

Kiểm tra dung lượng Tablespace đã sử dụng bao nhiêu % được cấp phát và tổng dung lượng cả chưa được cấp phát của data file.

SELECT 
df.tablespace_name,
df.Max_size AS DUNG_LUONG_TONG,
df.total_space_mb DUNG_LUONG_DA_CAP,
NVL(fs.free_space_mb, 0) AS DUNG_LUONG_CHUA_SU_DUNG,
df.total_space_mb - NVL(fs.free_space_mb, 0) AS DUNG_LUONG_DA_SU_DUNG,
ROUND(((df.total_space_mb - NVL(fs.free_space_mb, 0)) / df.total_space_mb) * 100, 2) AS pct_used,
ROUND(((df.total_space_mb - NVL(fs.free_space_mb, 0)) / df.Max_size) * 100, 2) AS pct_used_Total
FROM 
(SELECT 
tablespace_name,
ROUND(SUM(bytes) / 1024 / 1024,0) AS total_space_mb,
ROUND(sum(maxbytes/1024/1024),0) AS Max_size
FROM 
dba_data_files
GROUP BY 
tablespace_name) df
LEFT JOIN 
(SELECT 
tablespace_name,
ROUND(SUM(bytes) / 1024 / 1024,0) AS free_space_mb
FROM 
dba_free_space
GROUP BY 
tablespace_name) fs
ON 
df.tablespace_name = fs.tablespace_name
ORDER BY 
pct_used DESC;

Screenshot 2024 05 31 153301

Trong đó:

PCT_USED_TOTAL là chỉ số % đã sử dụng trên tổng dung lượng tối đa, bao gồm cả chưa cấp phát bộ nhớ

PCT_USED là % đã sử dụng của dung lượng đã được cấp phát

Khi mà PCT_USED đạt 100% thì hệ thống tự động cấp phát thêm dung lượng với điều kiện là các tablespace phải đặt ở chế độ autoextend cho datafile

Khi mà PCT_USED_TOTAL >=85% thì chúng ta hãy thêm datafile vào tablespace để tránh lỗi hết dung lượng. Nếu PCT_USED_TOTAL>=100% thì hệ thống sẽ không còn dung lượng =>> treo ngay lập tức nếu tiếp tục ghi dữ liệu vào.

=>> chúng ta có thể tạo kịch bản để khi PCT_USED_TOTAL >=80% thì tự động add thêm datafile vào tablespace được.

0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest

0 Góp ý
Phản hồi nội tuyến
Xem tất cả bình luận