[Script] Cách tăng dung lượng cho Mount point chứa data files và temp files

08:27


ORAPLUS xin chào các bạn!

Trong bài này mình sẽ giới thiệu với các bạn cách sizing cho phân vùng mount point chứa file dữ liệu cần tăng thêm sao cho phù hợp.

Ví dụ: Mình có 3 mount point chứa các data files, temp files như sau:
  • Mount point 1: /u01/app/oracle/oradata/MP1
  • Mount point 1: /u01/app/oracle/oradata/MP2
  • Mount point 1: /u01/app/oracle/oradata/MP3
Các thông số ban đầu của 3 mount point trước khi extend:


Sử dụng câu lệnh sau để lấy ra giá trị "NEED_ADD" để extent cho từng mount point:

select m_point, sum(num_of_files), sum (max_size_gb), sum(sum_gb), sum(need_add)
from (
 SELECT SUBSTR (name, 1, INSTR (name, '/',1,6)) m_point,
         COUNT (*) num_of_files,
         COUNT (*) * 30 max_size_gb,
         ROUND (SUM (bytes) / 1024 / 1024 / 1024) sum_gb,
         COUNT (*) * 30 - ROUND (SUM (bytes) / 1024 / 1024 / 1024) need_add
   FROM v$datafile
GROUP BY SUBSTR (name,1,INSTR (name,'/',1,6))
UNION ALL
  SELECT SUBSTR (name, 1, INSTR (name, '/',1,6)) m_point,
         COUNT (*) num_of_fles,
         COUNT (*) * 30 max_size_gb,
         ROUND (SUM (bytes) / 1024 / 1024 / 1024) sum_gb,
         COUNT (*) * 30 - ROUND (SUM (bytes) / 1024 / 1024 / 1024) need_add
   FROM V$tempfile
GROUP BY  SUBSTR (name,1,INSTR (name,'/',1,6))
)
group by m_point
ORDER BY 1


Ví dụ về kết quả đầu ra như sau, ở đây mình lấy Max của 1 datafile là 30Gb theo script:


Như vậy mình đã hướng dẫn các bạn cách tính toán sao cho ra được con số phù hợp cần tăng thêm cho từng mount point chứa data file và temp file. Để chính xác hơn, chúng ta phải tính toán thêm cả phần dung lượng free hiện tại của mount point. 

Đây là bài toán nhỏ trong phần tính toán sizing trong oracle. Hy vọng phần nào giúp ích cho các bạn trong quá trình vận hành và quản trị hệ thống oracle database.

Mọi ý kiến đóng góp, xin vui lòng gửi về địa chỉ oraplus.net@gmail.com





You Might Also Like

0 nhận xét

Popular Posts

Like us on Facebook

Flickr Images