9.7.CÁC THAY ĐGI ĐI VI TABLESPACE

Một phần của tài liệu ORACLE_kiến trúc và quản trị pptx (Trang 95 - 100)

9.7.1. Chuyển đổi một tablespace thành một temporary tablespace

Ta có thể thay đổi các tablespaces đang tồn tại để biến nó thành một temporary tablespace. Ví dụ:

ALTER TABLESPACE tbsa TEMPORARY;

9.7.2. Thêm mới các tablespace

Để mở rộng khơng gian của tablespace ta có thể thực hiện theo hai cách sau:

Thêm mới các data file vào tablespace

Thay đổi dung lượng các data files

Hoặc ta cũng có thể sử dụng câu lệnh SQL can thiệp như sau: ALTER TABLESPACE tablespace

ADD DATAFILE filespec [autoextend_clause] [, filespec [autoextend_clause]]...

Với Oracle Enterprise Manager, ta làm theo các bước sau: 1. Chạy Oracle Storage Manager.

2. Chọn Tablespace—>Create.

3. Trong General page, nhập vào tên tương ứng rồi chọn ADD để hiển thị mục Create Datafile.

4. Trong Create Datafile chỉ ra từng data file cụ thể.

9.7.3. Mở rộng data files

Ta có thể thực hiện mở rộng (thay đổi) kích thước data file theo hai cách:

Mở rộng theo chế độ tự động. Sử dụng từ khoá: AUTOEXTENTED

Mở rộng theo chế độ can thiệp trực tiếp (manually). Sử dụng lệnh ALTER TABLESPACE, ALTER DATABASE

Thiết lập chế độ AUTOEXTENT trong khi tạo file Cú pháp:

ALTER TABLESPACE tablespace

ADD DATAFILE filespec [autoextend_clause] [, filespec [autoextend_clause]]...

Ví dụ:

ALTER TABLESPACE app_data ADD DATAFILE

‘/DISK6/app04.dbf’ SIZE 200M AUTOEXTEND ON NEXT 10M

MAXSIZE 500M; Trong OEM ta thực hiện các bước sau:

1. Chạy Oracle Storage Manager. 2. Chuyển tới nút Tablespace. 3. ChọnTablespace—>Add Datafile.

4. Trong General page nhập vào các thông tin của file. 5. Trong Autoextend page nhập vào các thông tin tương ứng. 6. Bấm nút Create.

Thiết lập chế độ AUTOEXTENT khi data file đã tồn tại Cú pháp:

ALTER DATABASE [database]

DATAFILE 'filename'[, 'filename']... autoextend_clause

Trong OEM ta thực hiện các bước sau: 1. Chạy Oracle Storage Manager. 2. Chuyển tới nút Tablespace node. 3. Chọn data file.

4. Trong phần Autoextend page, bấm vào nút Enable Auto Extend. 5. Bấm nút Apply.

9.7.4. Thay đổi kích thước data file

Thay vì mở rộng kích thước của database bằng cách thêm vào các data file, quản trị viên cũng có thể mở rộng bằng cách điều chỉnh tăng kích thước của data file.

Sử dụng câu lệnh SQL sau để thay đổi kích thước của data file ALTER DATABASE [database]

DATAFILE 'filename'[, 'filename']... RESIZE integer[K|M]

Với:

integer Kích thước tuyệt đối của file data file

Sử dụng câu lệnh SQL sau để thay đổi nơi lưu trữ mặc định: ALTER TABLESPACE tablespace

{MINIMUM EXTENT integer[K|M] |DEFAULT storage_clause }

Ví dụ:

ALTER TABLESPACE app_data MINIMUM EXTENT 2M; ALTER TABLESPACE app_data

DEFAULT STORAGE (INITIAL 2M NEXT 2M MAXEXTENTS 999);

9.7.5. Chuyển đổi chế độ ONLINE và OFFLINE

User chỉ có thể truy xuất vào tablespace nếu nó đang ở trạng thái online. Trong một vài trường hợp, quản trị viên database có thể thay đổi trạng thái database thành offline với mục đích:

Di chuyển các data files tới vị trí khác

Chỉ cho phép user truy xuất phần dữ liệu còn lại trong database.

Để chuyển đổi chế độ ONLINE và OFFLINE, ta có thể thực hiện câu lệnh SQL sau: ALTER TABLESPACE tablespace

{ONLINE

|OFFLINE [NORMAL|TEMPORARY|IMMEDIATE] }

Chế độ OFFLINE

Oracle server không cho phép thực hiện câu lệnh SQL đối với các đối tượng có trong tablespace đã được OFFLINE.

Oracle server thực hiện checkpoint đối với tất cả các data files thuộc tablespace trước khi chuyển sang chế độ OFFLINE.

Mỗi khi database được mở, quản trị viên database có thể chuyển chế độ offline cho tất cả các tablespace ngoại trừ SYSTEM và các tablespace tương ứng với các active rollback segments hay temporary segments.

Trong OEM ta có thể thực hiện theo các bước sau: 1. Chạy Oracle Storage Manager.

2. Chuyển tới nút Tablespace. 3. Chọn tablespace tương ứng.

4. Trong General page, đặt chế độ trong Offline radio button. 5. Bấm nút Apply

9.7.6. Di chuyển các data file

Tuỳ thuộc kiểu tablespace, ta có thể di chuyển các data files theo các phương thức khác nhau.

Lệnh ALTER TABLESPACE

Lệnh này chỉ áp dụng cho các tablespace không phải là SYSTEM tablespace, và không chứa rollback segments hay temporary segments.

Câu lệnh:

ALTER TABESPACE tablespace

RENAME DATAFILE 'filename'[, 'filename']... TO 'filename'[, 'filename']...

Ví dụ:

ALTER TABLESPACE app_data RENAME DATAFILE ‘/DISK4/app01.dbf’ TO ‘/DISK5/app01.dbf’;

Ta thực hiện theo các bước sau:

1. Chuyển chế độ offline cho tablespace.

2. Di chuyển các data files tương ứng bằng lệnh của hệ điều hành. 3. Thực hiện lệnh ALTER TABLESPACE RENAME DATAFILE. 4. Chuyển lại chế độ online cho tablespace đó.

5. Sử dụng lệnh của hệ điều hành để xoá data file cũ nếu cần thiết. Lệnh ALTER DATABASE

Lệnh này chỉ áp dụng cho các tablespace không là SYSTEM và không chứa rollback segments hay temporary segments.

Câu lệnh:

ALTER DATABASE [database]

RENAME FILE 'filename'[, 'filename']... TO 'filename'[, 'filename']...

Ví dụ:

ALTER DATABASE RENAME FILE ‘/DISK1/system01.dbf’ TO ‘/DISK2/system01.dbf’; Ta thực hiện theo các bước sau:

1. Shutdown database.

2. Di chuyển data files bằng lệnh của hệ điều hành. 3. Mount lại database.

4. Thực hiện lệnh ALTER DATABASE RENAME FILE. 5. Mở lại database.

Trong OEM ta làm như sau

1. Chạy Oracle Storage Manager.

2. Chuyển tới nút Tablespace rồi chọn data file tương ứng. 3. Trong phần General page, thay đổi lại các thơng tin thích hợp. 4. Bấm nút Apply.

9.7.7. Tablespace chỉ đọc

Sử dụng lệnh SQL để thiết lập các chế độ này. Cú pháp:

ALTER TABLESPACE tablespace READ{ONLY|WRITE}

Ví dụ:

ALTER TABLESPACE app_data READ ONLY;

Trong OEM ta thực hiện theo các bước sau: 1. Chạy Oracle Storage Manager.

2. Chuyển tới nút Tablespace. 3. Chọn tablespace.

4. Chọn Tablespace—>Make Read Only. 5. Bấm nút OK.

Thiết lập chế độ chỉ đọc cho tablespace

Ta có thể thiết lập chế độ chỉ đọc cho tablespace khi nó đảm bảo một số điều kiện sau:

Tablespace phải đang online

Khơng có transaction nào xảy ra đối với tablespace đó

Tablespace khơng chứa các rollback segments

Hiện thời khơng có online backup trên tablespace

9.7.8. Huỷ tablespace

Trong một vài trường hợp ta có thể huỷ tablespace khỏi database. Việc này có thể thực hiện bởi câu lệnh SQL sau:

DROP TABLESPACE tablespace

[INCLUDING CONTENTS [CASCADE CONSTRAINTS]] Với

tablespace tên của tablespace được huỷ INCLUDING CONTENTS

huỷ luôn các segment có trong tablespace CASCADE CONSTRAINTS

Huỷ ln cả các ràng buộc liên quan tới các bảng bên ngồi có tham chiếu duy nhất tới các bảng thuộc tablespace bị huỷ

Ví dụ:

DROP TABLESPACE app_data INCLUDING CONTENTS;

Trong OEM ta thực hiện theo các bước sau 1. Chạy Oracle Storage Manager.

2. Chuyển tới nút Tablespace chọn tablespace tương ứng. 3. Chọn Tablespace—>Remove.

4. Bấm nút OK.

Một phần của tài liệu ORACLE_kiến trúc và quản trị pptx (Trang 95 - 100)