Bài giảng Công nghệ Oracle - Bài 2: Các thành phần cấu trúc của Oracle - Nguyễn Việt Hưng

2. Oracle Database

Là một tập hợp các file để lưu trữ và truy vấn dữ liệu, có cấu trúc vật lý và cấu trúc logic.

Cấu trúc vật lý gồm có 3 loại file:

 Data files: Chứa dữ liệu trong database

Online redo log files: Lưu tất cả những thay đổi trên CSDL khi instance được khởi động, cho phép khôi phục dữ liệu trong trường hợp xảy ra lỗi.

Control files: ghi lại cấu trúc vật lý của CSDL như tên của database, tên và nơi lưu trữ các datafile hay redo log file, .

 

pptx 33 trang yennguyen 2700
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Công nghệ Oracle - Bài 2: Các thành phần cấu trúc của Oracle - Nguyễn Việt Hưng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Công nghệ Oracle - Bài 2: Các thành phần cấu trúc của Oracle - Nguyễn Việt Hưng

Bài giảng Công nghệ Oracle - Bài 2: Các thành phần cấu trúc của Oracle - Nguyễn Việt Hưng
CÁC THÀNH PHẦN CẤU TRÚC CỦA ORACLE 
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 
Phác họa được cấu trúc của Oracle và các thành phần chính của nó 
Liệt kê các cấu trúc trong việc kết nối từ một user tới một Oracle instance 
2. Nội dung bài học 
I. MÔ HÌNH CẤU TRÚC ORACLE SERVER 
II. CÁC THÀNH PHẦN CHÍNH CỦA ORACLE SERVER 
III. CẤU TRÚC BỘ NHỚ 
V. CÁC MÔ HÌNH KẾT NỐI ĐẾN ORACLE SERVER 
IV. PHÂN LOẠI PROCESS 
Password 
file 
Instance 
SGA 
Redo LogBuffer 
Shared Pool 
Data DictionaryCache 
Library 
Cache 
DBWR 
SMON 
PMON 
CKPT 
LGWR 
Others 
Userprocess 
Serverprocess 
PGA 
Control files 
Data 
files 
Database 
DatabaseBuffer Cache 
Redo Log files 
Java Pool 
Large Pool 
Parameter 
file 
Archived 
Log files 
I. MÔ HÌNH CẤU TRÚC ORACLE SERVER 
II. CÁC THÀNH PHẦN CHÍNH CỦA ORACLE SERVER 
Là tập hợp các file, tiến trình (processes) và cấu trúc bộ nhớ trong Oracle Server. 
Oracle Server bao gồm 2 thành phần chính là: Oracle Instance và Oracle Database. 
Oracle server: 
Oracle server 
1. Oracle instance 
Là phương thức truy cập hệ thống CSDL Oracle 
Chỉ luôn luôn mở một và chỉ một CSDL 
Bao gồm các cấu trúc background process và cấu trúc bộ nhớ 
Cấu trúc background process 
Cấu trúc bộ nhớ 
Instance 
SGA 
Redo LogBuffer 
Shared Pool 
Data DictionaryCache 
Library 
Cache 
DBWR 
SMON 
PMON 
CKPT 
LGWR 
Others 
DatabaseBuffer Cache 
Java Pool 
Large Pool 
2. Oracle Database 
 Là một tập hợp các file để lưu trữ và truy vấn dữ liệu, có cấu trúc vật lý và cấu trúc logic. 
Cấu trúc vật lý gồm có 3 loại file: 
 Data files: Chứa dữ liệu trong database 
Online redo log files: Lưu tất cả những thay đổi trên CSDL khi instance được khởi động, cho phép khôi phục dữ liệu trong trường hợp xảy ra lỗi. 
Control files: ghi lại cấu trúc vật lý của CSDL như tên của database, tên và nơi lưu trữ các datafile hay redo log file , ... 
Password 
file 
Parameter 
file 
Archived 
Log files 
Control files 
Data 
files 
Redo Log files 
Oracle Database 
2. Oracle Database 
 Ngoài ra Oracle server còn có các loại file quan trọng khác: 
Parameter file: xác định các đặc tính của Oracle instance, như là xác định kích thước của một số thành phần trong SGA, ... 
Password file: xác thực người dùng có quyền để startup và shutdown Oracle instance 
Archived Log files :  là những bản copy của redo log files, có mục đích để khôi phục lại dữ liệu trong trường hợp xảy ra lỗi. 
Password 
file 
Parameter 
file 
Archived 
Log files 
Control files 
Data 
files 
Redo Log files 
Oracle Database 
2. Oracle Database 
Xác định xem khoảng trống CSDL được sử dụng như thế nào. 
Xét về hệ thống cấp bậc bao gồm các tablespaces, segments, extents,và blocks. 
Tablespace 
Datafile 
Segment 
Blocks 
Extent 
Segment 
Cấu trúc logic 
III. CẤU TRÚC BỘ NHỚ 
Cấu trúc bộ nhớ của Oracle bao gồm hai vùng bộ nhớ đó là: 
Vùng nhớ hệ thống (System Global Area - SGA) được cấp phát khi instance khởi tạo, và đây là một thành phần cơ bản của một Oracle instance 
Vùng nhớ chương trình (Program Global Area-PGA): được cấp phát khi server process khởi tạo 
1. System Global Area - SGA 
SGA là vùng bộ nhớ chia sẻ được sử dụng để lưu trữ dữ liệu và các thông tin điều khiển của Oracle server. 
SGA được cấp phát (allocated) trong bộ nhớ của máy tính mà Oracle server đang hoạt động trên đó. 
Các User kết nối tới Oracle sẽ chia sẻ các dữ liệu có trong SGA, việc mở rộng không gian bộ nhớ cho SGA sẽ làm nâng cao hiệu suất của hệ thống, lưu trữ được nhiều dữ liệu trong hệ thống hơn đồng thời giảm thiểu các thao tác truy xuất đĩa (disk I/O). 
1.1. Shared Pool 
Được sử dụng để lưu trữ: 
Các lệnh SQL thực hiện gần đây nhất 
Những định nghĩa dữ liệu được sử dụng gần đây nhất 
Bao gồm hai cấu trúc bộ nhớ liên quan tới hoạt động chính: 
Library Cache: Lưu trữ thông tin về các lệnh SQL và PL/SQL được sử dụng gần đây nhất . 
Data Dictionary Cache: Bao gồm các thông tin về các file CSDL, tables, indexs, cột, người sử dụng, đặc quyền và các đối tượng CSDL khác được sử dụng gần đây nhất. 
Được xác định kích cỡ qua tham số SHARED_POOL_SIZE 
ALTER SYSTEM SET 
SHARED_POOL_SIZE = 64M; 
Shared Pool 
DataDictionary 
Cache 
Library 
Cache 
1.2. Database Buffer Cache 
Lưu trữ các bản sao của các khối dữ liệu lấy từ các data file. 
Cải thiện hoạt động khi truy vấn và cập nhật dữ liệu 
Được quản lý thông qua thuật toán least recently used ( LRU) 
DB_BLOCK_SIZE xác định kích thước của 1 khối lưu trữ 
DB_BLOCK_BUFFERS xác định kích thước vùng đệm của db buffer cache 
Database BufferCache 
1.3. Redo Log Buffer 
Kích thước được xác định thông qua tham số LOG_BUFFER. 
Lưu trữ các redo records (bản ghi hồi phục) mỗi khi có thay đổi dữ liệu. 
Mục đích để khôi phục CSDL khi xảy ra lỗi. 
Redo LogBuffer 
2. Program Global Area (PGA) 
Bộ nhớ dành cho mỗi chương trình của người sử dụng kết nối với hệ CSDL Oracle 
Được cấp phát khi một server process được tạo ra 
Được giải phóng khi server process đó chấm dứt hoạt động 
Chỉ được sử dụng bởi một server process 
Userprocess 
PGA 
Serverprocess 
IV. PHÂN LOẠI PROCESS 
User process: Khởi động vào thời điểm một CSDL người sử dụng yêu cầu kết nối với Oracle Server. 
Server process: Kết nối với Oracle instance và được khởi động khi người sử dụng thiết lập một session. 
Background processes: Khởi động khi một Oracle instance khởi động. 
1. User Process 
Là tiến trình ở máy client thực hiện gửi các yêu cầu của người dùng đến Oracle Server 
Trước tiên phải thiết lập một kết nối. 
Không tương tác trực tiếp với Oracle Server. 
Database user 
Serverprocess 
Userprocess 
Connectionestablished 
2. Server Process 
Là một tiến trình tương tác trực tiếp với Oracle Server. 
Thay mặt User process giao tiếp với Oracle Server và trả lại kết quả cho User process. 
Có thể là Dedicated Server hoặc Shared Server. 
Connection established 
Session created 
Database user 
Userprocess 
Serverprocess 
Oracle server 
3. Background Processes 
Là các tiến trình chạy ngầm ngay khi instance được khởi động thực hiện nhiệm vụ luôn duy trì hoạt động thông suốt của CSDL và tối ưu hóa hiệu xuất của server. 
Các background processe bắt buộc: 
DBWR 
SMON 
PMON 
CKPT 
LGWR 
3.1. Database Writer (DBWn) 
Database writer ghi sự thay đổi blocks từ database buffer cache xuống data files. 
Có thể có tối đa 20 DBWn ( DBW0-DBW9 và DBWa-DBWj) 
DB_WRITER_PROCESSES xác định số lượng DBWn 
Instance 
SGA 
Control files 
Data files 
Redo Log files 
Database 
DBWn 
Database 
BufferCache 
3 .2. Log Writer (LGWR ) 
LGWR ghi tuần tự từ redo log buffer xuống Online redo log files khi : 
commit 
Khi redo log buffer đầy 1/3 
Khi có nhiều hon 1 MB thay đổi trong redo log buffer 
Sau mỗi 3 giây 
Trước khi DBWn ghi 
Instance 
SGA 
Control files 
Data files 
Redo Log files 
Database 
Redo Log 
Buffer 
DBWn 
LGWR 
3.3. System Monitor (SMON) 
 Có các vai trò: 
Khôi phục instance 
Phục hồi những thay đổi đã được ghi trong các Online Redo Log Files (Rolls forward). 
Mở CSDL để người sử dụng truy cập. 
Khôi phục lại những thay đổi chưa được commit (Rolls back). 
Giải phóng các vùng nhớ. 
Giải phóng các temporary segment. 
Control files 
Data files 
Redo Log files 
Database 
Instance 
SGA 
SMON 
3.4. Process Monitor (PMON) 
Thực hiện khôi phục process khi bị lỗi: 
Phục hồi lại các giao dịch (Roll back). 
Giải phóng các tài nguyên. 
. 
PGA area 
Instance 
SGA 
PMON 
3.5. Checkpoint (CKPT ) 
Có vai trò: 
Báo hiệu DBWn lúc checkpoint. 
Cập nhật các header của data file với thông tin checkpoint. 
Cập nhật các control file với thông tin checkpoint. 
Control files 
Data files 
Redo Log files 
Database 
Instance 
SGA 
DBWn 
LGWR 
CKPT 
3.6. Archiver (ARCn ) 
Là một background process lựa chọn. 
Lưu lại một cách tự động các online redo log file khi đặt ở chế độ ARCHIVELOG. 
Lưu giữ ghi nhận tất cả những thay đổi đối với CSDL. 
ARCn 
Archived redo log files 
Control files 
Data 
files 
Redo log files 
V. CÁC MÔ HÌNH KẾT NỐI ĐẾN ORACLE SERVER 
Session created 
Database user 
Userprocess 
Serverprocess 
Connection established 
Oracle server 
Được tạo ra khi các công cụ hoặc ứng dung tạo kết nối đến Oracle Server như SQL*Plus, SQL Deverloper, PL/SQL Deverloper, Oracle Form, Report ... 
Được tạo ra trên máy tính đang chạy Oracle Server khi một user process đăng nhập vào Oracle Server 
User process làm việc với Oracle instance thông qua Server process 
Phiên làm việc (Session ) 
 Session là một kết nối riêng của một user đến một Oracle server. Session được bắt đầu khi một user xác thực thành công đến một Oracle server, và kết thúc khi user đăng xuất hoặc bị kết thúc đột ngột. 
 Từ một máy client (database user), có thể có nhiều kết nối đến Oracle server khi người dùng sử dụng nhiều công cụ hoặc ứng dụng khác nhau đăng nhập vào Oracle server. 
One Session for Each Connection 
1. Client – Server 
Chương trình trực quan trên máy tính của bạn và kết nối tới một database  Oracle  nằm trên một máy tính khác, bạn cần phải cài đặt  Oracle Client  hoặc cài luôn một  Oracle Database  trên máy tính của mình . Chú ý:  Oracle Database  đóng vai trò vừa là server vừa là  Oracle Client . 
2. Host – Based 
Chương trình trực quan nằm trên máy tính của bạn và kết nối tới database  Oracle  nằm cùng máy tính, lúc đó Database này vừa đóng vai trò là một  Oracle Server  vừa là  Oracle Client . Bạn không cần cài thêm gì khác. 
3. Client – Application server – Server (mô hình 3 lớp) 
User có thể truy cập vào cơ sở dữ liệu từ máy tính cá nhân của họ (Client) thông qua một ứng dụng máy chủ (application server), nơi sử dụng cho những yêu cầu chạy chương trình. 
Câu hỏi 
1 	 . Which one of the following statements is true? 
a 	An Oracle server is a collection of data consisting of three file types. 
b 	A user establishes a connection with the database by starting an Oracle instance. 
c	 A connection is a communication pathway between the Oracle server and the Oracle instance. 
d 	A session starts when a user is validated by the Oracle server. 
2. Which one of the following memory areas is not part of the SGA? 
a 	Database Buffer Cache 
b 	PGA 
c 	Redo Log Buffer 
d 	Shared Pool 
3 . Which three of the following statements are true about the Shared Pool? 
a 	The Shared Pool consists of the Library Cache, Data Dictionary Cache, Shared SQL area, Java Pool, and Large Pool. 
b 	The Shared Pool is used to store the most recently executed SQL statements. 
c 	The Shared Pool is used for an object that can be shared globally. 
d 	The Library Cache consists of the Shared SQL and Shared PL/SQL areas . 
Câu hỏi 
4 	 . Which one of the following memory areas is used to cache the data dictionary information? 
a 	Database Buffer Cache 
b 	PGA 
c 	Redo Log Buffer 
d 	Shared Pool 
5. The primary purpose of the Redo Log Buffer is to record all changes to the database data blocks. 
a	True 
b	False 
6. The PGA is a memory region that contains data and control information for multiple server processes or multiple background processes. 
a	True 
b	 False 
Câu hỏi 
7. Which of the following becomes available when an Oracle instance is started? 
a	User process 
b	Server process 
c	Background processes 
8. Identify five mandatory background processes. 
	________________________________________ 
	________________________________________ 
	________________________________________ 
	________________________________________ 
	________________________________________ 

File đính kèm:

  • pptxbai_giang_cong_nghe_oracle_bai_2_cac_thanh_phan_cau_truc_cua.pptx