Control file là file thông tin dạng nhị phân được sử dụng cho việc khởi tạo và vận hành database một cách hiệu quả.
Mỗi khi instance được MOUNT (gắn) với một Oracle database, các thông tin trong control file sẽ được đọc ra, từ đó xác định các data files và các online redo log files.
Control file được cập nhật liên tục vào database trong suốt quá trình sử dụng và nó ln ở trạng thái sẵn sàng (available) mỗi khi database được OPEN (mở) hay được MOUNT (gắn) với instance.
Control file cung cấp các thông tin một cách đồng nhất trong database được sử dụng trong q trình khơi phục (recovery).
Mỗi control file tại một thời điểm chỉ phục vụ cho một database. Khi đã có một database sử dụng control file thì các database khác sẽ khơng thể truy cập tới control file đó nữa.
7.1.2. Cách thức đặt tên control file
Tên control file được xác định trong tham số CONTROL_FILES của parameter file. Tên của các control files được đặt phân cách bởi dấu phẩy (,). Instance phục vụ database sẽ mở các control file và lấy các thơng tin từ đó để có thể điều khiển hoạt động của database. Trong quá trình hoạt động, Instance cũng sẽ ghi lại các tình trạng của database.
Để đảm bảo an tồn, một database cần ít nhất 02 control files và được đặt tại hai chỗ khác nhau. Các control files nên được đặt tên khác nhau sao cho có thể phân biệt dễ dàng. Tên của Control files nên được đặt kèm với tên của database cho dễ nhớ, như sau:
CTL<n><database_name>.ORA Với:
n là số thứ tự của control file
database_name tên của database
Trong parameter file, các tên của control files được đặt phân cách nhau bởi các dấu phẩy. Ví dụ:
control_files = (“C:\ORANT\DATABASE\CTL1KTKB.ORA”, ”C:\ORANT\DATABASE\CTL2KTKB.ORA”)
7.1.3. Kết hợp nhiều control files
Khi tạo database, ta có thể sử dụng cùng lúc nhiều control files thông qua việc chỉ rõ tên các control files trong tham số khởi tạo CONTROL_FILES. Oracle server tạo và cập nhật tất cả danh sách các file liên quan mỗi khi tạo database.
Oracle khuyến cáo sử dụng ít nhất 02 control files. Các control files nên được đặt riêng biệt trên các ổ đĩa khác nhau đề phòng sự cố. Nếu một control file bị hỏng, ta có thể sao chép lại file này rồi khởi động lại instance.
Hình vẽ 24. Kết hợp sử dụng nhiều control file
Để thêm mới một control file hoặc thay đổi số lượng cũng như nơi đặt các control file, ta thực hiện theo các bước sau:
1. Shutdown database.
2. Sử dụng lệnh của hệ điều hành để sao chép thêm một bản sao của control file và nên lưu trữ trên một thiết bị khác.
3. Sửa đổi hoặc thêm mới tham số CONTROL_FILES và tên (có đường dẫn) tương ứng với các control files.
4. Khởi động lại database.
7.1.4. Nội dung của control file
Các thông tin chứa trong control file bao gồm:
Tên database và các định danh (identifications)
Tên và nơi chứa các data files, các redo log files
Tên các tablespaces trong database
Nhãn thời gian tương ứng lúc tạo database
Giá trị số hiệu của log sequence hiện thời
Thông tin về checkpoint
Các thông tin lịch sử (log history)
Các thơng tin sao lưu của tiện ích Recovery Manager
Hình vẽ 25. Nội dung control file Control file có thể được chia làm hai loại chính:
Có thể tái sử dụng (reused)
Không thể tái sử dụng (unreused)
7.1.5. Các tham số ảnh hưởng tới kích thước của control file Có một số tham số hệ thống liên quan tới kích thước của control file
MAXLOGFILES
MAXLOGMEMBERS
MAXLOGHISTORY
MAXDATAFILES
MAXINSTANCES
Các control files được xác định tự động dựa theo các tham số khởi tạo tại thời điểm tạo lập database:
CONTROL_FILES = (“C:\ORANT\DATABASE\CTL1KTKB.ORA”, ”C:\ORANT\DATABASE\CTL2KTKB.ORA”) Tên file kèm theo đường dẫn được đặt luôn trong tham số tạo database.
Các tham số được chỉ ra trong database có ảnh hưởng tới control file. Quản trị viên database có thể tạo lại các control file hay thay đổi các tham số trong database để có thể tăng, giảm kích thước của control file.
Việc tạo mới control file địi hỏi phải thay đổi kích thước của control file. Control file lưu trữ các thơng tin cần thiết cho Recovery Manager. Vì thế, khi sử dụng Recovery Manager những phần không tái sử dụng được trong control file có thể được mở rộng dựa theo số lượng các thành phần.
7.2.QUN TR CONTROL FILE 7.2.1. Tạo mới control file