Quản trị Undo Tablespace trong Pluggable Database (PDB) là một nhiệm vụ quan trọng để đảm bảo rằng các hoạt động Undo được quản lý một cách hiệu quả. Mỗi PDB có thể có Undo Tablespace riêng của nó, hoặc có thể sử dụng Undo Tablespace chung của Container Database (CDB). Trong ví dụ này chúng ta đề cập đến undo tablespace riêng của nó.
Các Bước Quản Trị Undo Tablespace trong PDB
1. Kiểm tra Undo Tablespace hiện tại
Trước tiên, hãy kiểm tra Undo Tablespace hiện tại đang được sử dụng trong PDB.
SELECT tablespace_name, status FROM dba_tablespaces WHERE contents = 'UNDO';
2. Tạo Undo Tablespace mới trong PDB
CREATE UNDO TABLESPACE undo_tbs DATAFILE '/path/to/datafile/undo_tbs01.dbf' SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED; OMF: CREATE UNDO TABLESPACE undo_tbs DATAFILE SIZE 500M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;
3. Thiết lập Undo Tablespace cho PDB
ALTER SYSTEM SET UNDO_TABLESPACE = undo_tbs;
4. Kiểm tra cấu hình Undo Tablespace
SHOW PARAMETER UNDO_TABLESPACE;
5. Thay đổi Undo Tablespace trong PDB
ALTER SYSTEM SET UNDO_TABLESPACE = new_undo_tbs;
6. Xóa Undo Tablespace không còn sử dụng
DROP TABLESPACE old_undo_tbs INCLUDING CONTENTS AND DATAFILES;
Quản lý Undo Retention
Bạn cũng có thể quản lý thời gian giữ Undo (Undo Retention) để đảm bảo rằng Oracle giữ lại dữ liệu Undo đủ lâu cho các yêu cầu đọc nhất quán hoặc Flashback, thời gian tính bằng giây, mặc định là 900s = 15phut.
ALTER SYSTEM SET UNDO_RETENTION = 3600; SHOW PARAMETER UNDO_RETENTION;