Ộ
Ả
QU N LÝ M T ORACLE INSTANCE
Biên soạn: Nguyễn Việt Hưng Bộ môn: Khoa Học Máy Tính - Khoa Công Nghệ Thông Tin Trường Đại Học Giao Thông Vân Tải Website: https://sites.google.com/site/viethung92gtvt/oracle-dba Email : viethung92gtvt@gmail.com
ể
ạ
ọ
1. Mục đích Mục đích • Sau khi hoàn thành bài h c này, b n có th :
ả ạ
ộ
ố • T o và qu n lý các file tham s . ắ ở ộ • Kh i đ ng và t t m t instance. ử ụ • Theo dõi và s d ng các diagnostic file.
2. Nội dung bài học
Ố
Ở Ạ I. FILE THAM S KH I T O ORACLE INSTANCE
Ở Ộ
Ộ
Ắ
II. KH I Đ NG VÀ T T M T ORACLE INSTANCE
Ổ
III. T NG QUAN DIAGNOSTIC FILES
Ự IV. TH C HÀNH
Ố Ở Ạ
I. FILE THAM S KH I T O ORACLE INSTANCE
SGA
Shared Pool
Library Cache
Redo Log Buffer
Database Buffer Cache
Data Dictionary Cache
Large Pool
Java Pool
PMON
SMON
DBW0
LGWR
CKPT
Others
spfiledb01.ora
CONNECT / AS SYSDBA STARTUP
1. Các loại file tham số khởi tạo
ể ố
ộ ở ạ ở ộ ố ở ạ ạ
ẽ ọ Đ kh i đ ng m t Oracle Instance, Oracle server s đ c thông tin các tham s trong ố file tham s kh i t o, có 2 lo i file tham s kh i t o là: PFILE SPFILE
2. Nội dung trong file tham số
ậ ợ
ố ủ
ư • T p h p các tham s c a instance nh :
ủ (cid:0) Tên c a instance
(cid:0) Kích th
ướ ộ ầ ớ c b nh các thành ph n trong SGA
(cid:0) Tên và v trí control files
ị
ố ượ ư
ụ
ữ
ố
• Các tham s trong file tham s đ
c l u tr thành các m c
(entry)
(cid:0) Entries : Tên tham s = Giá tr .
ố ị
(cid:0) ạ ố 2 lo i tham s :
ụ ể ộ C th : Có m t entry trong file.
Ẩ ị ặ ị ủ ư ọ n: Không có entry trong file nh ng ch n các giá tr m c đ nh c a Oracle.
3. PFILE
• File d ng text ạ
ở ề ươ ả ủ ạ • Đi u ch nh b i ch ỉ ng trình so n th o c a HĐH
ỉ ượ ự ệ ằ • Các đi u ch nh đ ề c th c hi n b ng tay
ệ ự ở ộ ế ế ổ ầ • Các thay đ i có hi u l c vào l n kh i đ ng k ti p
ở ộ ỉ ở • Ch m khi instance kh i đ ng
ặ ị ị • V trí m c đ nh
ớ %ORACLE_HOME%/database v i Windown
ớ $ORACLE_HOME\dbs v i Unix
ạ ị • Đ nh d ng tên: initSID.ora
3. PFILE
Ví dụ về PFILE
# Initialization Parameter File: initdba01.ora db_name = dba01 instance_name = dba01 control_files = ( /home/dba01/ORADATA/u01/control01dba01.ctl,
/home/dba01/ORADATA/u02/control01dba02.ctl)
db_block_size = 4096 db_cache_size = 4M shared_pool_size = 50000000 java_pool_size = 50000000 max_dump_file_size = 10240 background_dump_dest = /home/dba01/ADMIN/BDUMP user_dump_dest = /home/dba01/ADMIN/UDUMP core_dump_dest = /home/dba01/ADMIN/CDUMP undo_management = AUTO undo_tablespace = UNDOTBS
4. SPFILE
• Binary file.
ượ ả • Đ c qu n lý b i Oracle Server. ở
ặ ở • Luôn luôn đ t ủ máy ch .
ả ắ ổ ả ạ ở • Có kh năng t o ra các thay đ i mà không ph i t t và kh i
ộ ạ đ ng l i database.
ạ ị • Đ nh d ng tên: spfileSID.ora
4. SPFILE ạ
v T o m t SPFILE ộ • Đ c t o ra t ừ ượ ạ
file PFILE:
SQL> CREATE SPFILE [='SPFILE-NAME']FROM PFILE[='PFILE-NAME'];
ể ượ ướ ự ệ ặ ở ộ c th c hi n tr c ho c sau khi kh i đ ng instance.
• Có th đ • VD: create spfile=‘C:\spfileDB1.ora’ from pfile;
ấ ộ
ủ
ư
ữ
v Xu t n i dung c a SPFILE l u tr vào PFILE
ể ượ ở ộ ướ ệ SQL> CREATE PFILE [='PFILE-NAME']FROM SPFILE[=‘SPFILE-NAME']; • Có th đ ặ ự c th c hi n tr c ho c sau khi kh i đ ng instance.
ố
4. SPFILE ề
ỉ
v Đi u ch nh các tham s trong SPFILE
Cú pháp:
ALTER SYSTEM {SET|RESET}parameter_name = parameter_value [SCOPE = {MEMORY|SPFILE|BOTH}] [SID= 'sid'|'*'];
Trong đó:
ặ ế ậ ạ t l p l i t l p ho c thi
ị
ổ ệ ạ ế ậ Instance hi n t i. Thi t l p
ặ ị ế ằ
• SPFILE:Thay đ i giá tr tham s ch trong spfile, có hi u l c khi kh i
ế ậ • SET|RESET: Thi ổ ố ầ • parameter_name: Tên tham s c n thay đ i ố • parameter_value: Giá tr tham s ổ ệ ự ủ ự ị • SCOPE: Xác đ nh hi u l c c a s thay đ i ệ ự ở ỉ ự • MEMORY: S thay đ i ch có hi u l c ở ộ ượ c kh i đ ng b ng Pfile. này là m c đ nh n u instance đ ỉ ố ị ệ ự ở
ạ ộ đ ng l
ị ố ở ả c SPFILE và Instacne hi n t ệ ạ i ổ i Instance. ổ • BOTH: Thay đ i giá tr tham s
4. SPFILE ề
ỉ
ố
v Đi u ch nh các tham s trong SPFILE
VD:
SQL> show parameters open_cursors;//Hiển thị giá trị open_cursors hiện tại.
SQL> ALTER SYSTEM SET open_cursors=301 SCOPE=BOTH;
Ộ
Ắ
Ở Ộ II. KH I Đ NG VÀ T T M T ORACLE INSTANCE 1. Khởi động một CSDL
OPEN
STARTUP
Tất cả các file được mô tả trong control file được mở.
MOUNT
Control file được mở
NOMOUNT
Instance khởi động
SHUTDOWN
SHUTDOWN
1. Khởi động một CSDL
Đặc điểm Lệnh STARTUP ặ ị
ư ụ
ứ ự • Th m c m c đ nh c a file tham s : ố ủ %Oracle_home%\database • Th t khi startup:
– spfileSID.ora. – Default SPFILE. (spfile.ora) – initSID.ora.
ở ộ ằ ỉ • Ch rõ kh i đ ng b ng PFILE:
STARTUP PFILE = ‘C:\initORCL.ora’;
ể ỉ ầ ử ụ ỉ • Trong PFILE có th ch c n ch ra s d ng spfile:
SPFILE = ‘C:\spfileORCL.ora’;
1. Khởi động một CSDL
Cú pháp:
STARTUP [FORCE][RESTRICT] [PFILE=filename] [MOUNT] | [OPEN [open_options]] | [NOMOUNT]
Trong đó:
ậ ự ạ ộ
ế ộ ạ ở ộ ế ề ớ ở ỉ ch đ h n ch , ch có user có quy n admin m i
ậ ượ c.
ộ ở ẽ ị ế FORCE: Kh i đ ng ngay l p t c, n u instance đang ho t đ ng thì s b ở ế ộ ch đ abort. shutdown RESTRICT: Kh i đ ng đăng nh p đ open_options: READ {ONLY | WRITE [RECOVER]} | RECOVER
2. Thay đổi trạng thái CSDL
Lệnh ALTER DATABASE
• Thay đổi trạng thái của CSDL từ NOMOUNT sang MOUNT hoặc từ
MOUNT sang OPEN:
ALTER DATABASE db01 MOUNT|OPEN;
• Mở CSDL ở chế độ read-only: (chỉ thực hiện được khi database ở
chế độ MOUNT)
ALTER DATABASE db01 OPEN READ ONLY;
• Bật/tắt 1 instance ở chế độ giới hạn truy cập:
ALTER SYSTEM ENABLE/DISABLE RESTRICTED SESSION;
3. Tắt một CSDL
Cú pháp: SQL> SHUTDOWN [NORMAL | TRANSACTIONAL |
ABORT
IMMEDIATE
TRANSACTIONAL
NORMAL
IMMEDIATE | ABORT ]
Shutdown Mode
NO
NO
NO
NO
ế ố ạ
Cho phép t o các k t n i m iớ
NO
NO
NO
YES
ệ ờ ế
NO
NO
YES
YES
ệ ờ
ợ Đ i các phiên hi n th i k t thúc ị ợ Đ i các giao d ch hi n th i ế k t thúc
NO
YES
YES
YES
ộ
ệ T.hi n m t checkpoint, đóng các file
Ổ
III. T NG QUAN DIAGNOSTIC FILES
• Diagnostic files ứ ượ ử ụ
ề ữ ặ ả ọ
ể ả
ự ệ • Ch a các thông tin v nh ng s ki n quan tr ng mà Database g p ph i. ề ế ấ i quy t v n đ . • Đ c s d ng đ gi ộ ố ạ • M t s lo i file: • alertSID.log file. • Background trace file. • User trace file.
1. Alert Log File
ả ủ ự ệ i các l nh. i k t qu c a các s ki n chính.
ạ ộ
• File alertSID.log: ạ ệ ạ ế ượ ử ụ ượ ử ụ ẩ
ệ ờ
ộ ở
ượ ị – Ghi l – Ghi l – Đ c s d ng cho thông tin ho t đ ng hàng ngày. – Đ c s d ng cho vi c ch n đoán các l ỗ i CSDL. • M i entry có m t m c th i gian liên quan t ớ ố ỗ i nó. • Đ c qu n lý b i DBA. ượ ả • V trí đ t file này đ ặ ị c xác đ nh thông qua
BACKGROUND_DUMP_DEST.
2. Background Trace File
ệ ở ỗ
ỗ • Background trace file: – Ghi chép các l i phát hi n b i các background process. – Đ c s d ng đ ch n đoán và s a các l ử ể ẩ ượ ử ụ
i. ặ ỗ ượ ạ c t o ra khi background process g p l i.
ị ượ ị • File này đ • V trí đ t file đ ặ c xác đ nh thông qua BACKGROUND_DUMP_DEST.
3. User Trace File
• User trace files
ở ạ
ở c t o ra b i server process.
ể ượ ạ ố ệ
ỗ ủ i s d ng. i c a ng
ườ ử ụ
i.
ườ ử ụ ủ ở
ị
ặ ỗ i s d ng g p l c xác đ nh b i USER_DUMP_DEST. ượ
ị
§ T o ra b i user process. § Cũng có th đ ứ ố ệ § Ch a s li u th ng kê cho các l nh SQL. ứ § Ch a các thông báo l ượ ạ • Đ c t o ra khi user session c a ng ượ ặ ị • V trí đ t file đ ướ c file đ • Kích th
c xác đ nh thông qua MAX_DUMP_FILE_SIZE.
Thực hành
ậ
ặ ị
ạ
ừ
ặ ở ư ụ
th m c m c đ nh.
pfile. Spfile đ t
ộ
ở
ổ
ẩ
ậ
ừ spfile. ư hr nh sau:
ở ạ ở ế ộ
ậ
i ự
ch đ readonly. ả
ư
ẽ ả
ề
ự
ệ
ạ
ả
ư
ư
i vào b ng REGIONS nh ng ch a
ự
ệ
ậ
ở
ớ
ở ế ộ ch đ
ề
ở ữ ệ ừ
ẽ ả
ệ ủ phiên làm vi c c a user sys? ề ả ớ ớ
ắ ở
ủ
ứ
Ở
ế
ạ
ậ Ở
1. Đăng nh p vào user sys và shutdown database. 2. Sau khi shutdown database, t o spfile t 3. Xem n i dung SPFILE. ậ 4. Đăng nh p vào user sys và startup database t 5. M khóa user HR và thay đ i m t kh u là SQL> alter user HR account unlock identified by hr; 11. Shutdown database và m l ệ 12. Đăng nh p vào user HR và th c hi n insert vào b ng REGIONS nh sau: INSERT INTO regions VALUES (5, 'Mars'); Đi u gì s x y ra? ế ộ ể 8. Chuy n database sang ch đ readwrite, th c hi n insert l commit; 9. M 1 session m i và đăng nh p vào user sys, th c hi n Shutdown database TRANSACTIONAL. ẽ ả Đi u gì s x y ra 17. Rollback d li u v a insert vào b ng HR, đi u gì s x y ra? ạ 18. T t 2 session và t o 1 session m i v i user sys và startup database. ệ 19. M 1 phiên làm vi c m i v i user HR.
user
ự
ệ
ớ ớ ấ ữ ệ HR, có th c hi n truy v n d li u trong b n REGIONS đ ạ
ỏ
ậ ượ c không?
i, h i có th login đ
phiên c a sys, b t ch c năng h n ch truy c p. ả c không? ể ậ ạ
ế ộ ạ
ế
ắ
20. Logout user hr, sau đó login l ậ 21. T t ch đ h n ch truy c p và đăng nh p l
ượ i user hr.