Ta có thể thực hiện việc kết hợp các vùng không gian trống liên tiếp nhau mỗi khi các extents trong cùng một tablespace được giải phóng. Điều này rất dễ xảy ra, ví dụ: khi có hai table bị huỷ (dropped). Các extents trống này có thể được kết hợp lại thành một extent trong các điều kiện:
Khi tiến trình SMON khởi tạo một space transaction để kết hợp các extents trống. Khi Oracle server cần phải cấp phát vùng trống mà nó cần tới lượng không gian trống
lớn hơn không gian của một extent.
Hình vẽ 41.Kết hợp các vùng không gian trống
Lưu ý
Tiến trình SMON sẽ chỉ kết hợp các extent trong cùng tablespaces khi mà PCTINCREASE lớn hơn 0. Trong storage clause mặc định của tablespaces, đặt PCTINCREASE=1 khi đó các user objects có thể được tự động kết hợp các vùng trống mỗi khi nó được giải phóng.
Yêu cầu kết hợp vùng trống
View DBA_FREE_SPACE_COALESCED được dùng để xem tablespace nào có các extents rỗng có thể kết hợp được với nhau. Sử dụng câu lênh truy vấn sau đây để lấy các thông tin:
SVRMGR> SELECT tablespace_name, total_extents, 2> percent_extents_coalesced
3> FROM dba_free_space_coalesced
4> WHERE percent_extents_coalesced <> 100; TABLESPACE_NAME TOTAL_EXTE PERCENT_EX --- --- ---
RBS 3 33
DATA01 9 22
2 rows selected.
Thực hiện kết hợp các vùng không gian trống trong tablespace bằng lệnh dưới đây: ALTER TABLESPACE tablespace COALESCE;
Trong OEM, ta thực hiện theo các bước sau 1. Sử dụng công cụ Oracle Tablespace Manager. 2. Chuyển tới nút Expand Tablespaces.
3. Chọn tablespace tương ứng.
10.3.BLOCK D" LI#U