Tải bản đầy đủ (.pdf) (83 trang)

Hệ quản trị cơ sở dữ liệu Oracle để xây dựng hệ thống bán hàng tại công ty VINDA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.29 MB, 83 trang )


THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

Đồ Án Tốt Nghiệp

GVHD:TS Nguyễn Ngọc Bình

LỜI MỞ ĐẦU.

KIL

OBO
OK S
.CO
M

Cơ sở dữ liệu là một trong những ngành được quan tâm nhiều trong khoa
học máy tính, trong cơng nghệ thơng tin. Từ khi có mơ hình cơ sở dữ liệu đầu
tiên vào những năm 60 đến nay tuy khơng là chặng đường dài đối với các
ngành khoa học khác, nhưng với khoa học máy tính và đặc biệt với cơ sở dữ
liệu thì đó là thời gian đáng kể. Cơ sở dữ liệu đã trải qua nhiều thế hệ của hệ
quản trị cơ sở dữ liệu, và đã có nhiều ứng dụng trong khoa học và trong các
nghành kinh tế quốc dân.
Thời đại thơng tin ngày nay, bài tốn cơ bản và cốt yếu là :Làm thế nào lưu
trữ thơng tin an tồn và chắc chắn đồng thời lại truy cập chính xác và dễ dàng.
Theo thời gian, u cầu của bài tốn ngày càng cao với lượng thơng tin cần
lưu trữ, xử lý ngày càng nhiều và đa dạng.
Hệ quản trị cơ sở dữ liệu Oracle là một trong những giải pháp tốt nhất, được
cơng nhận trên thị trường tin học thế giới hiện nay. Oracle đã được nghiên cứu
và phát triển, cho phép người sử dụng khai thác triệt để tiềm năng của hệ
thống quản lý cơ sở dữ liệu quan hệ một cách ưu việt và mạnh nhất hiện nay.


Nhu cầu tích lũy và xử lý các dữ liệu đã nảy sinh trong mọi cơng việc, trong
mọi hoạt động của con người. Một cá nhân hay một tổ chức có thể đã nhầm có
một hệ thống xử lý dữ liệu, dù cơ chế hoạt động của nó là thủ cơng và chưa tự
động hố.
Một bài tốn nhỏ cũng cần đến dữ liệu, nhưng khơng nhất thiết
phải quản lý các dữ liệu theo các phương pháp khoa học. Do khả năng tổng
hợp của người xử lý, các dữ liệu ấy được lấy ra, được xử lý mà khơng vấp phải
khó khăn nào. Tuy nhiên khi bài tốn có kích thước lớn hẳn và số lượng dữ liệu
cần phải xử lý tăng lên nhanh thì e rằng tầm bao qt của con người bình
thường khó có thể quản lý hết được! Ấy là khơng kể đến một số loại dữ liệu đặc
biệt; chúng đòi hỏi được quản lý tốt khơng phải vì kích thước mà vì sự phức tạp
của bản thân chúng tổ chức xử lý dữ liệu một cách khoa học đòi hỏi con người
sử dụng cơ sở dữ liệu.
Chính vì thế em đã chọn hệ quản trị cơ sở dữ liệu Oracle để xây dựng hệ
thống bán hàng tại cơng ty VINDA làm đồ án tốt nghiệp.
Em xin chân thành cám ơn đến Tiến sĩ Nguyễn Ngọc Bình người đã trực tiếp
hướng dẫn, động viên để em hồn thành đồ án, tạo điều kiện để em thực hiện
đồ án đúng thời gian.
Cám ơn các anh chị trong cơng ty VINDA đã tận tình giúp đỡ tạo điều kiện để
đồ án được hồn thành.
Vì thời gian có hạn đồ án chắc còn nhiều thiếu xót, kính mong q thầy cơ,
các bạn đóng góp ý kiến để đồ án hồn thiện hơn.
Thành phố Hồ Chí Minh :21-5-2003.

.

SVTH: Đỗ Hữu Bá.

SVTH: Đỗ Hữu Bá


Trang 1



Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

PHẦN MỘT

KIL
OBO
OKS
.CO
M

Chương I. CƠ SỞ LÝ THUYẾT ............................................................2
I. Lịch sử ORACLE .....................................................................................2
II. Cơ sở dữ liệu ORACLE trong kiến trúc CLIENT/SERVER ....................4
III. Hệ quản trị Cơ sở dữ liệu Quan hệ ORACLE8 SERVER .......................4
IV. Các sản phẩm kết nối mạng ....................................................................5
V. Các công cụ phát triển CLIENT/SERVER ..............................................5
Chương II: CẤU TRÚC ORACLE ........................................................7
II.1 Lớp vật lý của ORACLE .......................................................................7
II.2 Cấu trúc bộ nhớ và các quá trình ...........................................................11
II.3 Transaction, Commit, Rollback ............................................................13
II.4 Các tác vụ khởi tạo và chấm dứt ...........................................................13
II.5 Bảo mật cơ sở dữ liệu ...........................................................................14

Chương III. ORACLE VÀ MÔ HÌNH MẠNG.
I. Tổng quan về Net8 ...................................................................................20
II. Các khái niệm và kiến trúc mạng của Oracle ..........................................21
III. Kiến trúc của Net8.................................................................................21
IV. Môi trường mạng ..................................................................................21
Chương IV. ORACLE VÀ CẤU HÌNH MẠNG
I. Service và những chức năng phục vụ của Oracle......................................24
II. Tổng quan về các cấu hình kết nối của Oracle ........................................24
III. Net8 và nền giao tiếp mạng trong suốt...................................................25
IV. Các tầng giao tiếp..................................................................................25
Chương V. NGÔN NGỮ PL/SQL
I. Tổng quan về PL/QL ...............................................................................31
II. Cấu trúc chương trình PL/SQL ...............................................................31
Chương VI. PHƯƠNG PHÁP LUẬN PHÂN TÍCH THIẾT KẾ HỆ
THỐNG
I. Phương pháp phân tích hệ thống về chức năng .........................................34
II. Phương pháp phân tích hệ thống về dữ liệu.............................................36
III. Phương pháp thiết kế hệ thống ..............................................................37
CHƯƠNG VII. GIỚI THIỆU ORACLE DEVELOPER 6.0
I. FORM BUIDER .....................................................................................37
II. REPORT BUIDER .................................................................................39
III. GRAPHICS BUIDER ...........................................................................39
IV. QUERY BUIDER .................................................................................40
V. SCHEMA BUIDER ...............................................................................41

PHẦN HAI

I. Khảo sát hiện trạng ..................................................................................42
II. Phân tích hệ thống ..................................................................................44
II.1 Phân tích hệ thống về chức năng ...........................................................44

II.2 Phân tích hệ thống về dữ liệu ................................................................61
II.3 Thiết kế hệ thống ..................................................................................67
III. Kết luận hướng phát triển đồ án.............................................................83
Tài liệu tham khảo
SVTH: Đỗ Hữu Bá

Trang 2



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

GVHD:TS Nguyễn Ngọc Bình

PHẦN MỘT

KIL
OBO
OKS
.CO
M

Chương I:CƠ SỞ LÝ THUYẾT
I. LỊCH SỬ ORACLE.
Vào năm 1977, Larry Ellison, Bob Miner, và Ed Oates thành lập một cơng ty
và đặt tên là Relation Software Incorporated(RSI). Cơng ty này xây dựng một
hệ quản trị cơ sở dữ liệu gọi là Oracle. Ellison, Miner và Oates quyết định phát
triển hệ này bằng C và giao tiếp SQL. Ngay sau một thời gian ngắn, họ đưa ra

phiên bản một như một ngun mẫu. Năm 1979, RSI phân phối sản phẩm đầu
tiên cho khách hàng: hệ quản trị cơ sở dữ liệu Oracle phiên bản 2, làm việc trên
Digital PDP-11 chạy hệ điều hành RSX-11 và ngay sau đó chuyển sang hệ
thống DEC VAX.
Năm 1983 phiên bản 3 được giới thiệu với những thay đổi trong ngơn ngữ
SQL. Khơng như các phiên bản trước đây , phiên bản 3 được viết tồn bộ bằng
C. Vào thời điểm này , RSI được đổi tên thành Oracle Corporation.
Phiên bản 4 được phát hành vào năm 1984. Phiên bản 5 được giới thiệu vào
năm 1985, là mốc lịch sử vì nó đưa cơng nghệ Client/ Server vào thị trường
với việc sử dụng SQL*Net.
Năm 1988, Oracle đưa ra phiên bản 6, giới thiệu việc khố ở mức thấp. Oracle
7 được phát hành năm 1992 bao gồm nhiều thay đổi kiến trúc về bộ nhớ, CPU
và tiện ích xuất /nhập. Năm 1997 Oracle giới thiệu Oracle8, thêm phần mở
rộng đối tượng cũng như nhiều tính năng và cơng cụ quản trị mới đặc biệt
Oracle 8i phiên bản hỗ trợ nhiều tính năng mới và đặc biệt là các ứng dụng cơ
sở dữ liệu Internet.
I.1. ORACLE VÀ CƠNG NGHỆ CLIENT/ SERVER.
Oracle Corporation trở thành một cơng ty cơ sở dữ liệu nổi tiếng nhờ tạo ra
một hệ thống quản trị cơ sở dữ liệu quan hệ kiểu Server với hiệu suất cao và
đầy đủ chức năng .Oracle đã vượt qua tầm vóc của một cơng ty cơ sở dữ liệu
khi bổ sung hệ quản trị cơ sở dữ liệu quan hệ kiểu Server của nó những sản
phẩm tích hợp cao được thiết kế đặc biệt cho các ứng dụng xử lý dữ liệu phân
tán và cơng nghệ Client/ Server.
II.CƠ SỞ DỮ LIỆU ORACLE TRONG KIẾN TRÚC CLIENT/SERVER.
Oracle Corporation đã trở thành người dẫn đầu khi đưa ra cơng nghệ
Client/Server tiên tiến, định hướng phát triển sản phẩm đặc trưng theo hướng
hỗ trợ thiết kế, cài đặt và quản lý các hệ thống cơ sở dữ liệu Client/Server.
Orcale đã thiết kế các sản phẩm theo một trong ba thành phần chủ yếu của
kiến trúc Client/Server:
Một hệ cơ sở dữ liệu quan hệ server hiệu suất cao, đủ tính năng, thích

ứng cho các chủng loại, từ các máy tính xách tay( laptop, notebook) cho
đến các máy mainframe.
Sự phát triển client và các sản phẩm run-time hỗ trợ nhiều mơi trường
GUI
Các phần trung gian kết nối cơ sở dữ liệu cung cấp sự giao tiếp bảo mật
và hiệu quả trên nhiều lọai hình giao thức mạng. Các sản phẩm Oracle có
tính thích ứng cao, cung cấp các giải pháp Client/Server trọn vẹn cho cho
các mơi trường ứng dụng từ các nhóm làm việc nhỏ đến các mơi trường
cơng ty
SVTH: Đỗ Hữu Bá

Trang 3



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

III. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU QUAN HỆ ORACLE 8
SERVER.
Ngơn ngữ PL/SQL: Một thành phần chính của Oracle8 Server là engine

xử lý PL/SQL. PL/SQL là ngơn ngữ thế hệ thứ tư của Oracle, kết hợp các
ngun tố ngơn ngữ thủ tục có cấu trúc với SQL. PL/SQL được thiết kế đặc
thù để xử lý client/server, trong đó nó cho phép một khối chương trình
PL/SQL chứa logic ứng dụng như các lệnh SQL để đệ trình đến Server với
một u cầu đơn. Khi sử dụng PL/SQL có thể giảm một cách đáng kể khối
lượng xử lý u cầu bởi phần Client của ứng dụng và sự lưu chuyển trên
mạng để thực hiện phần logic.
Các Stored procedure: Việc xử dụng các stored procedure tăng đáng kể
hiệu quả của hệ thống Client/Server vì các lý do sau:
Gọi một stored procedure từ một ứng dụng Client giảm đáng kể mật độ
lưu thơng trên mạng.
Các stored procedure cung cấp một cơ chế bảo mật hiệu quả và tiện lợi.
Cả hai dạng text và đã biên dịch của các stored procedure đều nằm
trong cơ sở dữ liệu. Do dạng biên dịch của thủ tục có sẵn và sẵn sàng thực
hiện, nhu cầu phân tích cú pháp và biên dịch PL/SQL lúc thi hành được
giảm nhẹ.
♦ Database trigger: Các trigger cơ sở dữ liệu giống như các stored procedure
ở chỗ chúng là các khối PL/SQL thường trú trong cơ sở dữ liệu.
♦ Tính tồn vẹn có thể khai báo
Khi ta định nghĩa một bảng trong Oracle, các ràng buộc tồn vẹn như là một
phần của định nghĩa bảng. Các ràng buộc được hỗ trợ bởi Server khi một bản
ghi được chèn, sữa đổi hay xố.
Tính tồn vẹn được hỗ trợ bởi Server làm số mã u cầu để kiểm tra bên
client và cũng tăng sức mạnh của mơ hình giao dịch được định nghĩa bên trong
cơ sở dữ liệu.
♦ Các User-defined function: Các user- defined function cũng tương tự các
stored procedure.
IV. CÁC SẢN PHẨM KẾT NỐI MẠNG.
Net8: Là một phần mềm kết nối cơ sở dữ liệu dùng để cung cấp các thơng
tin cơ sở dữ liệu xác thực, tối ưu trên mọi thủ tục mạng thơng dụng.

Oracle Names: Tạo các liên kết cơ sở dữ liệu chứa các thơng tin nút mạng
trên một mạng bằng cách sử dụng từ điển tồn cục chung Oracle Names.
Multi- protocol Interchange: cung cấp một nhu cầu giao tiếp trên các thủ
tục khác biệt bằng cách gửi thơng điệp SQL* Net từ thủ tục này sang thủ
tục khác.
Oracle Network Manager: Quản lý cấu hình và quản lý mạng cơ sở dữ
liệu phân tán được thực hiện dễ dàng với Network Manager. Network
Manager được sử dụng khơng chỉ để quản lý từ điển Oracle Names mà còn
tạo ra các file cấu hình cho các thành phần Client/Server của SQL*Net và
định nghĩa cho các đường kết nối cho các nút Multi-Protocol Interchange.

SVTH: Đỗ Hữu Bá

Trang 4



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO
OKS
.CO
M

n Tt Nghip

V. CC CễNG C PHT TRIN CLIENT/SERVER.

1. Cỏc h Server:
Oracle Unisersal Server cú cỏc thnh phn tựy chn:
Distributed Option:(Tựy chn phõn tỏn) cho phỏp mt s c s d liu
Oracle trờn cỏc mỏy tớnh khỏc nhau hot ng nh mt c s d liu logic
n.
Replication Option(Tựy chn sao lu): cho phộp mt c s d liu
Oracle sao chộp s thay i lờn mt c s d liu khỏc.
Context Option(Tựy chn ng cnh): m rng kh nng cho phộp
ngi dựng tỡm ni dung ca mt c s d liu Oracle theo cỏc t khúa v
cỏc ch nht nh.
Spatial Data Option(Tựy chn khụng gian d liu) cho phộp mt nh
thit k la chn to ra cỏc ch mc c bit h tr cỏc query tm thi,
khụng gian tinh vi v cỏc query khỏc.
Oracle Workgroup Server: c thit k cho cỏc nhúm lm vic, cú cỏc
bn cho Netware, Window NT, SCO UNIX v Unix Ware. Oracle
Workgroup Server l mt gii phỏp cú tớnh bo trỡ nh cú kinh t h tr
cỏc nhúm nh ngi dựng.
Persernal Oracle: L phiờn bn chy trờn Windows engine ca c s d
liu Oracle cú cỏc chc nng nh Oracle Universal Oracle v Oracle
Workgroup Server.
Designer 2000: phỏt trin cỏc ng dng Oracle.
Developer/2000, Develper 6.0, Jdeveloper for Oracle 8i: Cỏc b Developer
ny gm Oracle form, Report, Graphics, v Oracle Procedure Builder c
tớch hp vo mụi trng phỏt trin
Power Object: cung cp mụi trng phỏt trin ng dng nhanh vi cỏc c
trng kộo th v qun lý cỏc ton tỏc c s d liu t ng.
2.CC NG DNG
2.1 Cỏc ng dng Oracle truyn thng
Ti chớnh.
Nhõn s.

Qun lý d ỏn.
Bỏn hng.
SVTH: Hu Bỏ

Trang 5



Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Sản xuất.
Các ứng dụng OnLine Analytical Processing( OLAP).
Các ứng dụng OLAP cung cấp một giao diện đồ hoạ cho các ứng dụng kho dữ
liệu nhỏ. Những công cụ này đưa ra mô hình đa chiều cho cơ sở dữ liệu, cung
cấp các tác vụ thiết kế, dự báo và thống kê.
3. CÁC HƯỚNG PHÁT TRIỂN CỦA ORACLE.
Khách/chủ không dây:Công nghệ này làm việc trên các mạng nhỏ, đặc
biệt thích hợp với người sử dụng laptop và palmtop. Một dạng hơi tiên tiến
khác của công nghệ khách /chủ là Oracle Mobile Agents, sử dụng kiến trúc
clien-agent-server cho phép một client làm việc offline và kết nối định kỳ

với mạng để gửi yêu cầu và nhận kết quả từ server. Thành phần agent của
kiến trúc này hoạt động thay cho client khi nó vắng mặt trên mạng.

Giao diện Internet/ World Wide Web: Web interface Kit của Oracle
được dùng để tích hợp các server World Wide Web với cơ sở dữ liệu
Oracle8.
Multimedia Server: Khi các ứng dụng sử dụng nhiều kiểu dữ liệu khác
nhau, đặc biệt là dữ liệu multimedia, công nghệ server cơ sở dữ liệu cũng
cải thiện để quản lý chúng.

CHƯƠNG II.

CẤU TRÚC CỦA ORACLE.

II.1 LỚP VẬT LÝ CỦA ORACLE.
1. Lớp vật lý của Oracle bao gồm: các tập tin dữ liệu(data file), các tập tin
điều khiển( control file) và các tập tin phục hồi( redo log file).
Tập tin dữ liệu: lưu trữ thông tin chứa trong cơ sở dữ liệu. Phụ thuộc vào
kích thước, các bảng và các đối tượng khác có thể nằm trên một hay nhiều

SVTH: Đỗ Hữu Bá

Trang 6



n Tt Nghip

THệ VIEN ẹIEN Tệ TRệẽC TUYEN


GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO
OKS
.CO
M

tp tin. Cỏc tp tin d liu cú kớch thc c nh v khụng bao gi t phỏt
trin ln hn kớch thc ban u to ra.
Mi c s d liu cn cú ớt nht mt tp tin iu khin cỏc tp tin ny ghi
tờn ca c s d liu,v trớ ca tp tin d liu, tp tin iu khin v thụng tin
ng b m bo rng chỳng luụn hot ng n khp vi nhau. Cỏc tp
tin iu khin cn c bo v.
Cỏc tp tin phc hi lu gi thụng tin phc hi trong trng hp h
thng cú s c. Cỏc tp tin ny ghi li ton b thay i ca c s d liu,
cỏc tp tin phc hi cú kớch thc c nh.
2. Lp Logic ca Oracle gm:
Mt hay nhiu khụng gian bng(tablespace).
Cỏc khung c s d liu (database schema) bao gm nhiu i tng
Oracle nh:table, cluster, index, view, stored procedure, database trigger,
sequence,
Mi khung thuc v ti khon ngi dựng gi tt l user, c xỏc nh bi
mt tờn ngi dựng v mt mt khu(password) duy nht i vi c s d liu.
Sau khi ng nhp vo c s d liu bng username v password hp l, ta cú
th truy xut cỏc bng cng nh cỏc i tng ca Oracle trong mt khung
thuc ti khon ngi dựng va ng nhp.
Cỏc bng cú cựng tn ti trờn hai ti khon ngi dựng khỏc nhau ca Oracle
trong cựng mt c s d liu vt lý. ụi lỳc, trờn mt c s d liu cú th tn
ti nhiu phiờn bn khỏc nhau ca cỏc bng trong cỏc ti khon khỏc nhau

ngi phỏt trin cú th th nghim h thng.
Thụng thng, ngi ta hay xem ti khon ngi dựng Oracle nh mt c s
d liu, nhng iu ny khụng ỳng hon ton. Ta cú th s dng hai ti khon
ngi dựng gi d liu cho hai h ng dng khỏc nhau; ta s cú hai c s d
liu logic c ci t trờn cựng c s d liu vt lý s dng hai ti khon
ngi dựng Oracle.
3. SCHEMA c s d liu.
Tng quan v cỏc i tng ca Schema:
Mt schema kt hp vi mt user c s d liu. Mt schema l mt tp
cỏc
i
tng
schema
sau:table,view,sequence,synonym,index,cluster,database
link,snapshot
,store procedure, function, triger, package.
Cỏc i tng schema l cu trỳc lu tr d liu logic. Cỏc i tng schema
khụng cú mi tng ng mt-mt vi cỏc tp tin trờn a lu tr thụng tin ca
nú.Tuy nhiờn, Oracle lu mt i tng schema trong mt khụng gian bng
ca c s d liu v mt logic. D liu ca mi i tng c lu tr vt lý
bờn trong mt hay nhiu tp tin ca khụng gian bng. i vi mt i tng
nh: table, index, v cluster ta cú th ch nh lng khụng gian a Oracle
nh v cho i tng bờn trong tp tin d liu ca khụng gian bng.
3.1 Table
Table l n v lu tr d liu trong Oracle. D liu c lu trong cỏc hng
v cỏc ct. Ta nh ngha mt table vi mt tờn bng v mt tp cỏc ct. Ta gỏn
cho mi ct mt tờn ct, mt kiu d liu mt chiu di hay chớnh xỏc v
scale. Mt hng l mt tp cỏc thụng tin ct tng ng vi mt bn ghi n.

SVTH: Hu Bỏ


Trang 7



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Ta có thể định nghĩa tuỳ ý các quy tắc đặc thù cho mỗi cột trong bảng.
Những quy tắc này gọi là các ràng buộc tồn vẹn.
3.2 View
Một view là sự hiển thị dữ liệu chứa trong một hay nhiều bảng. Một view lấy
kết xuất của một query và xử lý nó như một bảng. Vì vậy một view có thể xem
như là bảng ảo. Ta có thể sử dụng view hầu như ở mọi chỗ có thể sử dụng
bảng.
3.3. Bộ sinh mã tuần tự.
Bộ sinh mã tuần tự cung cấp một chuỗi số tuần tự. Bộ sinh mã tuần tự đặc biệt
hữu ích trong mơi trường nhiều người dùng để tạo ra những số tuần tự duy nhất
mà khơng phải tốn cơng truy xuất I/O đĩa hay khố chuyển tác.Vì vậy, sẽ giảm
sự “chuỗi hố” mà các lệnh của hai chuyển tác cần phải thực hiện để tạo ra các
số tuần tự đồng thời. Nhờ đó, bộ sinh mã tuần tự cải thiện năng suất chuyển tác

và giảm đáng kể thời gian chờ đợi của một user.
Các sequence là các số ngun Oracle có 38 chữ số được định nghĩa trong cơ
sở dữ liệu. Một định nghĩa sequence sẽ định hướng thơng tin tổng qt: tên
sequence, tăng lên hay giảm xuống, bước nhảy giữa các số, và các thơng tin
khác. Một phần quan trọng trong của một định nghĩa sequence là Oracle có trữ
trong bộ nhớ một tập các sequence đã tạo ra hay khơng.
Oracle lưu trữ định nghĩa tất cả các sequence của một cơ sở dữ liệu riêng biệt
như là các hàng của một bảng từ điển dữ liệu trong khơng gian bảng System.
Vì vậy tất cả các định nghĩa sequence ln có sẵn vì khơng gian bảng System
ln mở sẵn.
Các số sequence được sử dụng bởi các lệnh SQL tham chiếu sequence. Ta có
thể phát ra một lệnh tạo một số sequence mới hay sử dụng một số sequence
hiện hành. Khi một lệnh trong một phiên làm việc của user tạo ra một số
sequence đặc thù chỉ có sẵn cho session đó; mỗi user tham chiếu đếm một
sequence hiện hành của mình.
Các số sequence được tạo ra độc lập với các bảng.Vì vậy cùng một bộ sinh mã
tuần tự có thể sử dụng cho một hay nhiều bảng. Sự tạo ra các số sequence hữu
dụng để tạo các khố chính duy nhất cho dữ liệu một cách tự động và để định
vị các khố qua nhiều hàng của bảng. Các sequence riêng biệt có thể bỏ qua
nếu chúng được tạo ra và sử dụng trong một chuyển tác đã roll back xong. Các
ứng dụng có thể cung cấp và sử dụng lại những sequence này, nếu cần.
3.4 Synonym
Một synonym là một bí danh của bất kỳ một table,view,snapshot
,sequence,function hay packagesequence. Do một synonym chỉ đơn giản là một
bí danh, nó khơng chiếm nhiều bộ nhớ mà chỉ là một định nghĩa trong từ điển
dữ liệu.
Các synonym thường được sử dụng do tính bảo mật và tiện lợi. Ví dụ, chúng
ta có thể làm những việc sau:
che tên và chủ của một đối tượng
cung cấp vị trí trong suốt các đối tượng từ xa của cơ sở dữ liệu phân

tán
đơn giản hố các lệnh SQL cho người dùng cơ sở dữ liệu

SVTH: Đỗ Hữu Bá

Trang 8



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Ta có thê tạo ra cả synonym tồn cục lẫn riêng biệt. Một synonym tồn cục
thuộc quyền một nhóm user đặc biệt tên PUBLIC và mọi USER trong một cơ
sở dữ liệu có thể truy xuất nó. Một synonym riêng nằm trong schema của một
user đặc thù mà kiểm sốt tính sẵn dùng của nó cho user khác.
Các synonym rất hữu ích cho cả mơi trường cơ sở dữ liệu phân tán và khơng
phân tán do chúng dấu chỉ danh của đối tượng đang được chỉ định, bao gồm
cả vị trí trong một hệ phân tán. Đây là một ưu điểm vì nếu đối tượng đang chỉ
định cần phải đổi tên hay di chuyển, chỉ cần định nghĩa lại các synonym và
các ứng dụng dựa trên các synonym vẫn tiếp tục hoạt động mà khơng cần biến

đổi.
3.5 Index.
Index là cấu trúc tuỳ chọn kết hợp với các table và các cluster. Ta có thể tạo
ra các index tường minh để tăng tốc độ thực hiện SQL trên một bảng. Cũng
như các Index trong một cuốn sách giúp ta định vị thơng tin nhanh hơn so với
khi khơng có index, một index Oracle cung cấp một đường truy xuất dữ liệu
của bảng nhanh hơn. Các index là các phương thức chủ yếu giảm xuất/nhập
đĩa khi sử dụng thích hợp.
Sự vắng mặt hay hiện diện của một Index khơng u cầu thay đổi bất kỳ một
lệnh SQL nào. Một index đơn thuần chỉ là một đường truy xuất nhanh đến dữ
liệu, nó chỉ ảnh hưởng đến tốc độ thực hiện. Cho một giá trị dữ liệu đã được
Index, index trỏ trực tiếp vào vị trí của hàng chứa giá trị đó.
Các index độc lập về mặt vật lý và logic với dữ liệu trong bảng kết hợp. Ta có
thể tạo ra hay xố một index bất cứ lúc nào mà khơng ảnh hưởng đến bảng gốc
hay các index khác. Nếu ta bỏ một index, tất cả các ứng dụng vẫn tiếp tục làm
việc; tuy nhiên, sự truy xuất đến dữ liệu đã được truy xuất trước đây có thể
chậm hơn. Các index là một cấu trúc độc lập u cầu khơng gian lưu trữ .
Oracle tự động duy trì và sử dụng các Index một khi chúng đã được tạo ra.
Oracle tự động phản ánh sự thay đổi đến dữ liệu trong các index, tương ứng khi
thêm các hàng mới, cập nhật hay xố các hàng mà khơng cần thêm u cầu nào
của user.
Hiệu năng truy xuất dữ liệu đã index ln là hằng số, thậm chí khi thêm các
hàng mới vào. Tuy nhiên, sự hiện diện của nhiều index trên một bảng giảm
hiệu năng sửa đổi, xố, và chèn vì Oracle cũng cần cập nhật các index kết hợp
với bảng.
Các index Unique và Non-Unique
Các Index có thể duy nhất hay khơng duy nhất Các index duy nhất trên các
bảng tính duy nhất là một khái niệm logic nghiêm ngặt và chỉ nên kết hợp với
định nghĩa một bảng. Ta nên thay vào đó bằng cách định nghĩa các ràng buộc
tồn vẹn UNIQUE trên cột mong muốn. Oracle hỗ trợ ràng buộc tồn vẹn

UNIQUE bằng cách tự động định nghĩa một index unique trên khố unique.
Một index composite là một index tạo ra trên nhiều cột của một bảng. Các cột
trong một index composite có thể xuất hiện theo một thứ tự bất kỳ khơng cần
nằm kế nhau trong một bảng.
Các index composite có thể tăng tốc độ lấy dữ liệu cho các lệnh SELECT mà
mệnh đề WHERE tham trỏ đến tất cả hay những cột đầu trong index

SVTH: Đỗ Hữu Bá

Trang 9



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

composite, Vì vậy, thứ tự các cột xuất hiện trong định nghĩa rất quan trọng;
thơng thường, các cột được truy xuất nhiều nhất nên để đầu tiên trong index.
Index và key
Mặc dù hai thuật ngữ index và key thường dùng như nhau, ta nên hiểu sự
khác nhau giữa chúng. Index là các cấu trúc thật sự được lưu trong cơ sở dữ

liệu, mà user tạo ra, thay thế hay xố bằng các lệnh SQL. Ta có thể tạo ra một
index để tăng nhanh sự truy xuất đến bảng dữ liệu. Key là một khái niệm hồn
tồn logic. Các key tương ứng với một đặc trưng khác của Oracle gọi là ràng
buộc tồn vẹn.
Các ràng buộc tồn vẹn hỗ trợ các quy luật hoạt động. Do Oracle sử dụng
Index để hỗ trợ một số ràng buộc tồn vẹn, thuật ngữ index và key thường dùng
thay thế cho nhau.
3.6 Cluster.
Cluster là một phương pháp tùy chọn để lưu trữ dữ liệu bảng. Một cluster là
một nhóm các bảng có cùng các khối dữ liệu do chúng có các cột chung và
thường sử dụng chung với nhau.
Do các cluster lưu trữ các hàng liên quan của hai bảng khác nhau trong cùng
một khối dữ liệu, sử dụng cluster một cách thích hợp sẽ có hai lợi điểm sau:
Việc xuất nhập đĩa giảm và cải thiện thời gian truy cập nhờ nối các bảng
cluster
Trong một cluster, một giá trị key cluster đối với mỗi hàng. Mỗi giá trị key
cluster được lưu trữ chỉ một lần trong cluster và trong index cluster, khơng
cần biết có bao nhiêu hàng của các bảng khác nhau chứa giá trị đó.
Vì vậy, khơng gian lưu trữ các bảng liên hệ và dữ liệu index trong một cluster
ln hơn khi khơng cluster.
Cluster có thể làm giảm hiệu năng của lệnh INSERT so với việc lưu trữ các
bảng tách riêng với index của nó. Khuyết điểm này liên quan đến việc sử dụng
khơng gian và sơ đồ khối dữ liệu cần phải xem để qt một bảng. Do nhiều
bảng có dữ liệu trong mỗi khối, lưu trữ một bảng có cluster cần sử dụng nhiều
khối hơn là bảng khơng cluster.
Để các định dữ liệu thích hợp lưu trữ ở dạng cluster hay là khơng cluster, hãy
tìm các bảng liên quan đến các ràng buộc tồn vẹn tham chiếu và các bảng
thường được truy xuất với nhau thơng qua việc sử dụng một kết nối.
Nếu ta thực hiện cluster các bảng trên các cột sử dụng để nối dữ liệu bảng, ta
giảm số khối dữ liệu cần truy xuất để xử lý query; tất cả các hàng cần thiết để

nối trên một cluster key nằm trong cùng một khối. Vì vậy, hiệu năng đối với
kết nối được cải thiện.
Cũng như index, các cluster khơng ảnh hưởng đến thiết kế ứng dụng. Sự tồn
tại của một cluster trong suốt đối với user và ứng dụng. Ta truy xuất dữ liệu lưu
trữ trong một bảng có cluster bằng lệnh SQL như bảng khơng cluster.
II.2. CẤU TRÚC BỘ NHỚ VÀ CÁC Q TRÌNH.
1. Cấu trúc bộ nhớ: Oracle tạo ra và sử dụng cấu trúc bộ nhớ để hồn thành
một số cơng việc. Ví dụ, bộ nhớ lưu trữ mà chương trình đang được thực hiện
và dữ liệu dùng chung của các user. Các cấu trúc bộ nhớ cơ bản kết hợp với
Oracle: Vùng tồn cục hệ thống( system global area- bao gồm các buffer cơ sở

SVTH: Đỗ Hữu Bá

Trang 10



n Tt Nghip

THệ VIEN ẹIEN Tệ TRệẽC TUYEN

GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO
OKS
.CO
M

d liu, cỏc buffer redolog, v shared pool) v vựng ton cc chng trỡnh(

program global areas).
Mt th hin ca Oracle(Oracle Instance): Mi lỳc mt c s d liu c
to ra, mt SGA c nh v v cỏc quỏ trỡnh chy ngm (background)
ca Oracle c khi to. S kt hp gia cỏc quỏ trỡnh background v cỏc
b nh m gi l mt th hin ca Oracle.
Mt th hin ca Oracle gm hai loi: cỏc quỏ trỡnh User v cỏc quỏ trỡnh
Oracle.
Mt quỏ trỡnh user thc hin mó ca mt chng trỡnh ng dng hay
mt cụng c Oracle.
Cỏc quỏ trỡnh Oracle gm: cỏc quỏ trỡnh Server thc hin cỏc quỏ trỡnh
ca user v cỏc quỏ trỡnh chy ngm duy trỡ cụng vic ca Oracle Server.
1. System Global Area(SGA).
L mt vựng nh dựng chung cha d liu v cỏc thụng tin iu khin ca mt
th hin Oracle. Mt SGA v cỏc quỏ trỡnh chy ngm ca Oracle to nờn mt
th hin ca Oracle.
Oracle nh v SGA khi mt th hin khi ng v gii phúng nú khi th hin
chm dt. Mi th hin cú vựng SGA riờng ca nú.
Cỏc user ang ni vo mt Oracle server chia s d liu trong SGA. t
hiu nng ti u , ton b SGA cng ln cng tt tr d liu trong b nh
cng nhiu cng tt gim truy xut a. Thụng tin lu tr trong SGA c chia
thnh vi loi cu trỳc b nh: cỏc b m buffer c s d liu, cỏc b m
redo log, cỏc vựng chia s. Nhng vựng ny cú kớch thc c nh v c to
ra khi th hin setup.
B m c s d liu
B m c s d liu ca SGA lu tr nhng khi d liu thng c s
dng nht; tp hp cỏc b m c s d liu trong mt th hin gi l database
buffer cache. Buffer cache cha cỏc khi ó bin i. Do nhng d liu thng
c dựng nht lu trong b nh, vic xut nhp a gim i v hiu nng c
ci thin.
B m redo log

Redo log buffer ca SGA lu tr cỏc mc redo-quỏ trỡnh cỏc thay i ca c
s d liu. Cỏc mc redo log lu trong cỏc redo log buffer c ghi vo trong
mt tp tin redo log online, s c s dng khi cn khụi phc c s d liu.
Kớch thc ca nú khụng i.
Vựng chia s
Share pool l mt phn ca SGA cha cỏc cu trỳc b nh dựng chung nh
cỏc vựng SQL dựng chung. Mt vựng SQL dựng chung c dựng x lý
mi lnh SQL xỏc nh a ti c s d lờu. Mt vựng SQL dựng chung cha
thụng tin nh cõy cỳ phỏp v k hoch thc hin tng ng. Mt vựng SQL
dựng chung c s dng bi nhiu ng dng phỏt cựng lnh, nhiu vựng
nh chia s hn cho cỏc user khỏc.
Cỏc cỏn lnh
Mt currsor l mt cỏn b nh kt hp vi mt lnh xỏc nh. Mc dự hu ht
cỏc user Oracle da vo s qun lý t ng cỏc currsor ca cỏc tin ớch

SVTH: Hu Bỏ

Trang 11



n Tt Nghip

THệ VIEN ẹIEN Tệ TRệẽC TUYEN

GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO
OKS

.CO
M

Oracle, cỏc yờu cu v lp trỡnh giao din(GUI) ngh cỏc nh thit k ng
dng iu khin cỏc currsor nhiu hn.
Program Global Area(PGA)
PGA l mt b nh m cha d liu v kim soỏt thụng tin ca mt quỏ
trỡnh server. Mt PGA c to ra bi Oracle khi mt quỏ trỡnh Server khi
to. Thụng tin trong mt PGA ph thuc vo cu hỡnh ca Oracle.
2. Cu trỳc cỏc quỏ trỡnh.
Mt quỏ trỡnh l mt tuyn on iu khin hay mt c ch trong h iu hnh
m cú th thc hin mt chui cỏc bc. Mt s h iu hnh s dng thut
ng cụng vic hay tỏc v. Mt tin trỡnh thng cú mt vựng nh riờng
chy.
Mt Oracle server cú hai loi quỏ trỡnh chớnh: quỏ trỡnh user v quỏ trỡnh
Oracle.
Quỏ trỡnh user:
Mt quỏ trỡnh user c to ra v duy trỡ thc hin mó phn mm ca mt
chng trỡnh ng dng (nh chng trỡnh Pro*C/C++) hay mt cụng c ca
Oracle(nh Oracle Enterprise Manager). Quỏ trỡnh user cng qun lý s giao
tip vi cỏc quỏ trỡnh Server.
Cỏc quỏ trỡnh user giao tip vi cỏc quỏ trỡnh server qua giao din chng
trỡnh.
Cu trỳc quỏ trỡnh ca Oracle.
Cỏc quỏ trỡnh ca Oracle c gi bi cỏc quỏ trỡnh khỏc thc hin cỏc
chc nng ca quỏ trỡnh gi.Chỳng bao gm cỏc quỏ trỡnh server v cỏc quỏ
trỡnh chy ngm.
Cỏc quỏ trỡnh Server:
Oracle to ra cỏc quỏ trỡnh server qun lý cỏc yờu cu t cỏc quỏ trỡnh
kt ni ca user. Mt quỏ trỡnh Server cú nhim v giao tip vi quỏ trỡnh

user v tng tỏc vi Oracle thc hin cỏc yờu cu ca quỏ trỡnh user kt
hp.
Oracle cú th cu hỡnh thớch nghi vi mt s cỏc quỏ trỡnh user trờn mt quỏ
trỡnh server. Trong mt cu hỡnh server chuyờn dựng, mt quỏ trỡnh server qun
lý cỏc yờu cu cho mt quỏ trỡnh user n l. Cu hỡnh server a lung cho
phộp nhiu quỏ trỡnh user chia s mt s nh cỏc quỏ trỡnh server, gim thiu s
quỏ trỡnh server v ti u hoỏ gim thiu ti nguyờn h thng cú sn.
Trong mt s h thng, cỏc quỏ trỡnh user v server c tỏch bit riờng, trong
khi cỏc h thng khỏc chỳng c kt hp thnh mt tuyn trỡnh n. Nu mt
h thng s dng Server a lung hay nu cỏc quỏ trỡnh user v server chy
trờn cỏc mỏy khỏc nhau, chỳng cn phi tỏch riờng. Cỏc h thng client/server
tỏch riờng cỏc quỏ trỡnh user v server v thc hin chỳng trờn cỏc mỏy khỏc
nhau.
Cỏc quỏ trỡnh Background.
Oracle to ra mt tp cỏc quỏ trỡnh background cho mi th hin. Chỳng hp
nht cỏc chc nng m l ra s c qun lý bi nhiu chng trỡnh Oracle
chy cho mi quỏ trỡnh user. Cỏc quỏ trỡnh background ng b hoỏ vic thc
hin xut nhp v giỏm sỏt cỏc quỏ trỡnh Oracle khỏc cung cp c ch song
hnh nhm ci thin hiu nng v tin cy.

SVTH: Hu Bỏ

Trang 12



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN


GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Một SGA và một tập các q trình background tạo nên một thể hiện Oracle.
Mỗi thể hiện Oracle có thể sử dụng một vài q trình background.
Giao diện chương trình.
Giao diện chương trình là cơ chế giao tiếp của một q trình server và user. Nó
cung cấp một phương thức giao tiếp chuẩn giữa một cơng cụ hay một ứng dụng
client bất kỳ (như Oracle forms) và phần mềm Oracle. Nó có chức năng:
• hoạt động như một cơ chế giao tiếp bằng cách định dạng u cầu dữ liệu,
truyền dữ liệu, bẩy và trả về lỗi.
• Thực hiện việc chuyển đổi và dịch dữ liệu, đặc biệt giữa các loại máy tính
khác nhau hay dịch sang kiểu dữ liệu chương trình user.
II.3 TRANSACTION, COMMIT, ROLLBACK.
Một Transaction là một đơn vị làm việc ngun tố bao gồm một hay nhiều
lệnh SQL; nó bắt đầu khi user kết nối vào cơ sở dữ liệu và kết thúc khi một
lệnh COMMIT hay ROLLBACK được phát ra.
Sau lệnh COMMIT hay ROLLBACK, một chuyển tác mới tự động bắt đầu.
Tất cả các lệnh trong một chuyển tác hoặc là được lưu hết hay đều hồi phục lại
hết.
Việc COMMIT một chuyển tác tạo sự thay đổi thường trực từ tồn chuyển tác
vào cơ sở dữ liệu, và khi đã COMMIT, sự thay đổi khơng thể thay đảo lại. Sự
rollback đảo lại sự thêm, sửa đổi, xố trong chuyển tác; và khi đã roll back,
những thay đổi này khơng thể COMMIT.
Ở bên trong, q trình COMMIT có nghĩa là ghi những thay đổi đã ghi ở bộ

đệm chương redo log của SGA vào các tập tin redo log on line lên đĩa. Nếu
thao tác xuất nhập đĩa này thành cơng, ứng dụng nhận một thơng báo chỉ định
một commit thành cơng
II.4. CÁC TÁC VỤ KHỞI TẠO VÀ CHẤM DỨT.
Một cơ sở dữ liệu Oracle có chỉ có sẵn cho user khi Oracle server được
startup và cơ sở dữ liệu được mở. Những tác vụ này cần được thực hiện bởi
người quản trị mạng. Việc khởi động một cơ sở dữ liệu và đưa ra những bước
sau:
♦ Khởi động một thể hiện của Oracle server.
♦ Mount cơ sở dữ liệu.
♦ Mở cơ sở dữ liệu.
Việc chấm dứt một cơ sở dữ liệu mà nó kết nối gồm:
Đóng cơ sở dữ liệu.
Dismount cơ sở dữ liệu.
Shutdown thể hiện của Oracle server.
II.5 BẢO MẬT CƠ SỞ DỮ LIỆU.
Các hệ thống cơ sở dữ liệu nhiều user như Oracle ln bao gồm các đặc trưng
bảo mật kiểm sốt được truy xuất và sử dụng cơ sở dữ liệu. Các cơ chế bảo mật
gồm:
Ngăn cản sự truy xuất dữ liệu trái phép.
Ngăn cản sự truy xuất trái phép các đối tượng schema.
Điều khiển việc sử dụng đĩa.
Điều khiển việc sử dụng các tài ngun hệ thống.
Giám sát các hành động của user.
SVTH: Đỗ Hữu Bá

Trang 13




THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

Đồ Án Tốt Nghiệp

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Theo mặc định,mỗi user tạo ra và có quyền đối với tất cả các đối tượng trong
schema tương ứng.
Tính bảo mật cơ sở dữ liệu có thể phân làm hai loại riêng biệt: bảo mật hệ
thống và bảo mật dữ liệu.
Bảo mật hệ thống gồm các cơ chế điều khiển việc truy xuất và sử dụng cơ sở
dữ liệu ở mức hệ thống. Ví dụ bảo mật hệ thống bao gồm:
Sự kết hợp hợp lệ username/password.
Lượng không gian đĩa sẵn có cho mỗi đối tượng schema của user.
Giới hạn về tài nguyên cấp cho user.
Cơ chế bảo mật hệ thống kiểm tra:
User có quyền truy xuất vào cơ sở dữ liệu hay không?
Sự giám sát dữ liệu có hoạt động hay không?
Các tác vụ hệ thống nào user có thể thực hiện?
Bảo mật dữ liệu bao gồm các cơ chế điều khiển sự truy xuất và sử dụng cơ sở
dữ liệu ở mức đối tượng schema. Ví dụ bảo mật dữ liệu bao gồm:
Xác định quyền của user với một đối tượng schema xác định và những tác
vụ nhất định mà user có thể thực hiện trên đối tượng của schema đó( ví dụ,
user SCOTT có thể phát sinh lệnh SELECT và INSERT nhưng không thể

dùng lệnh DELETE đối với bảng EMP).
Các tác vụ, nếu có, được giám sát với mỗi đối tượng hệ thống.
CÁC CƠ CHẾ BẢO MẬT.
Oracle Sever cung cấp sự điều khiển truy xuất theo nhiệm ý, tức là một cách
giới hạn sự truy xuất thông tin dựa trên đặc quyền(privilege). Một đặc quyền
thích hợp cần gán cho một user để user đó có quyền tác động/ xử lý một đối
tượng schema. Các user có đặc quyền thích hợp có thể gán cho các user khác
đặc quyền tuỳ ý; do đó, loại bảo mật này được gọi là “nhiệm ý”(discretionary).
Oracle quản lý sự bảo mật bằng các phương tiện sau:
User

PAY_CLERK Role

MANAGER
Role

ACCTS_PAY Role

Đặc quyền thực hiện ứng dụng
ACCTS_PAY

REC_CLERK Role

ACCTS_REC
Role

Đặc quyền thực hiện
ứng dụng ACCTS_REC

Role

User

Role ứng
dụng
Đặc quyền
ứng dụng

Hình 1: Các đặc trưng bảo mật của Oracle
SVTH: Đỗ Hữu Bá

Trang 14



n Tt Nghip

THệ VIEN ẹIEN Tệ TRệẽC TUYEN

GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO
OKS
.CO
M

Cỏc User v cỏc schema c s d liu
Cỏc c quyn(privilege)
Cỏc vai trũ(role)
Ch nh b nh v quota.

Gii hn ti nguyờn.
Kim tra.
II.6. USER C S D LIU V SCHEMA.
Mi c s d liu Oracle cú mt danh sỏch username. truy xut mt c s
d liu, mt user cn s dng ng dng c s d liu v gn vi mt username
hp l ca c s d liu. Mi username cú mt password kt hp ngn nga
s truy xut trỏi phộp.
DOMAIN SECURIY(bo mt vựng).
Mi user cú mt domain security- l mt tp cỏc tớnh cht xỏc nh nhng
iu nh:
Cỏc hot ng(privilege v role) sn cú cho user.
Cỏc quote tables( khụng gian a cú sn) cho user.
Gii hn ti nguyờn h thng( vớ d, thi gian x lý cho CPU) cho user.
PRIVILEGE (c quyn)
Mt privilege l quyn thc hin mt lai lnh SQL c bit. Mt s privilege
nh:
Quyn kt ni vo c s d liu( to ra mt session)
Quyn to bng trong schema ca mỡnh.
Quyn chn cỏc hng t bng ca User khỏc.
Quyn thc hin cỏc store procedure ca user khỏc.
Cỏc privilege ca mt c s d liu Oracle cú th chia thnh hai lai riờng
bit: privilege h thng v privilege ca cỏc i tng schema.
PRIVILEGE h thng.
Privilege h thng cho phộp user thc hin mt hnh ng mc h thng c
bit hay mt hnh ng c bit trờn mt loi i tng schema c bit. Vớ
d., c quyn to mt tablespace hay xúa cỏc hng trong c s d liu l cỏc
c quyn mc h thng. Nhiu c quyn h thng ch dnh cho ngi qun
tr v cỏc nh phỏt trin ng dng do cỏc c quyn ny rt mnh.
PRIVILEGE i tng schema.
Privilege i tng schema cho phộp cỏc user thc hin mt hnh ng c

bit trờn mt i tng schema c bit. Vớ d, c quyn xoỏ mt s hng ca
mt bng, c bit l mt privilege i tng. Privilege i tng c gỏn
cho cỏc ngi dựng cui h cú th thc hin mt ng dng c s d liu
nhm thc hin mt tỏc v xỏc nh.
CP PRIVILEGE.
Privilege c cp cho cỏc user h cú th truy xut v bin i d liu
trong mt c s d liu. Mt user cú th nhn mt privilege theo hai cỏch khỏc
nhau:
Cỏc privilege cú th cp cho user mt cỏch tng minh. Vớ d, privilege
chốn cỏc record vo bng EMP cú th gỏn tng minh cho user scott.
Cỏc privilege cú th gỏn cho cỏc role( l mt nhúm cỏc privilege c t
tờn), v sau ú role cú th gỏn cho mt hay nhiu user. Vớ d, privilege chốn

SVTH: Hu Bỏ

Trang 15



Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M


các record vào bảng EMP có thể gán cho một role tên CLERK, và sau đó
role này sẽ được cấp cho các user SCOTT và BRIAN.
Do các role cho phép quản lý các privilege dễ dàng và tốt hơn , các privilege
thường được gán cho các role chứ không cho một user xác định.
ROLE
Cung cấp việc quản lý privilege một cách dễ dàng qua các role. Các role là
một nhóm các privilege có liên quan được đặt tên để cấp cho các user hay các
role khác. Các tính chất sau cho phép quản lý các role dễ dàng hơn:
Giảm việc cấp privilege-Thay vì cấp tường minh cùng một tập privilege cho
nhiều user, người quản trị cơ sở dữ liệu có thể gán các privilege cho một
role, sau đó người quản trị cơ sở dữ liệu có thể gán role cho các thành viên
của nhóm.
Quản lý privilege động- Khi các privilege của một nhóm cần thay đổi, chỉ
cần biến đổi privilege của role cần biến đổi. Domain bảo mật của tất cả các
user được cấp role của một nhóm tự động phản ánh thay đổi được thực hiện
trong role.
Tính sẵn có chọn lọc của privilege- Các role được cấp cho một user có thể
cho phép, sẵn dùng, hay không cho phép, không sẵn dùng, một cách chọn
lọc. Điều này cho phép điều khiển đặc quyền của một user trong tình huống
đã cho.
Hỗ trợ ứng dụng- một ứng dụng cơ sở dữ liệu có thể thiết kế cho phép hay
không cho phép một cách chọn lọc các role một cách tự động khi các user
sử dụng ứng dụng.
Người quản trị mạng thường tạo ra các role cho một ứng dụng cơ sở dữ
liệu. Data Base Aministrator(DBA) cấp cho role của một ứng dụng tất cả các
privilege cần thiết để chạy ứng dụng. DBA sau đó cấp role ứng dụng cho các
role khác hay user. Một ứng dụng có thể có một số role khác nhau, mỗi cái
được cấp một tập các privilege mà cho phép truy xuất sử dụng ứng dụng cơ sở
dữ liệu.

DBA có thể tạo ra một role có password để ngăn cản sự sử dụng trái phép các
privilege cấp cho role. Thông thường, một ứng dụng được thiết kế sao cho khi
khởi động nó cho phép một role thích hợp. Do đó, user sử dụng ứng dụng
không cần biết password của một role của ứng dụng.
CÁC XÁC LẬP LƯU TRỮ QUOTA.
Oracle cung cấp các biện pháp để định hướng và giới hạn việc sử dụng không
gian của cơ sở dữ liệu trên từng User, bao gồm các tablespace, tablespace mặc
định, tablespace tạm thời và các quota tablespace.
Tablespace tạm thời.
Mỗi user có một tablespace mặc định. Khi user tạo ra một bảng index hay
cluster mà không chỉ định cụ thể một tablespace, tablespace mặc định sẽ được
sử dụng nếu user có privilege tạo ra các đối tượng schema và có quota trong
tablespace mặc định. Đặc trưng tablespace mặc định giúp Oracle chỉ định nơi
lưu trữ trong trường hợp vị trí của đối tượng schema không được chỉ định.
Tablespace tạm thời.
Mỗi user có một tablespace tạm thời. Khi một user thực hiện một lệnh SQL,
mà yêu cầu tạo ra một segment tạm thời( như tạo một index), tablespace tạm

SVTH: Đỗ Hữu Bá

Trang 16



Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình


KIL
OBO
OKS
.CO
M

thời của các user vào một tablespace riêng, đặc trưng tablespace tạm thời có
thể giảm sự tranh chấp xuất hiện giữa các segment tạm và các loại segment
khác.
Các quota tablespace.
Oracle có thể giới hạn lượng không gian đĩa sẵn để cung cấp cho các đối
tượng trong một schema. Các quota có thể xác lập cho từng tablespace có sẵn
của user. Đặc trưng bảo mật quota tablespace điều khiển chọn lọc lượng không
gian đĩa tiêu tốn bởi các đối tượng của các schema xác định.
CÁC PROFILE VÀ GIỚI HẠN TÀI NGUYÊN.
Mỗi user được gán một profile chỉ định các giới hạn tài nguyên trên một số
tài nguyên hệ thống có sẵn cho user, bao gồm.
Số session có thể được thiết lập đồng thời bởi user.
Thời gian truy xuất CPU.
Sẵn có cho session của user.
Sẵn có cho lần gọi Oracle của một lệnh SQL.
Lượng xuất nhập logic:
Sẵn có cho session của user.
Sẵn có cho một lần gọi Oracle của một lệnh SQL.
Lượng thời gian rỗi cho phép của một session của user.
Lượng thời gian kết nối cho phép của một session của user.
Các giới hạn password:
Khóa account sau nhiều lần cố gắng login thất bại.
Sự hết hạn của password và chu kỳ gia hạn
Sự sử dụng lại password và các hạn chế phức tạp.

SỰ KIỂM TRA
Oracle cho phép kiểm tra chọn lọc( giám sát có đăng ký) các hành động của
user nhằm điều tra các sử dụng cơ sở dữ liệu không rõ ràng. Sự giám sát có thể
được thực hiện ở ba mức: kiểm tra lệnh, kiểm tra đặc quyền, kiểm tra các đối
tượng schema.
Kiểm tra lệnh: sự kiểm tra các lệnh SQL xác định mà không quan tâm đến tên
các đối tượng schema. Sự kiểm tra lệnh có thể mở rộng và kiểm tra tất cả các
user của hệ thống hay chỉ tập trung kiểm tra các user có lựa chọn hệ thống
Kiểm tra đặc quyền: sự kiểm tra các đặc quyền hệ thống quan trọng mà không
quan tâm đến tên các đối tượng schema. Sự kiểm tra lệnh có thể mở rộng và
kiểm tra tất cả các user của hệ thống hay chỉ tập trung kiểm tra các user có lựa
chọn hệ thống.
Kiểm tra các đối tượng schema: Kiểm tra sự truy xuất đến một đối tượng
schema nhất định mà không quan tâm đến user. Sự kiểm tra đối tượng giám sát
các lệnh được cho phép theo đặc quyền đối tượng, như các lệnh SELECT hay
DELETE trên một bảng đã cho.
Đối với tất cả các loại kiểm tra, Oracle cho phép kiểm tra chọn lọc sự thực
hiện lệnh thành công, sự thực hiện lệnh không thành công, hay cả hai. Điều này
cho phép giám sát các lệnh khả nghi, không kể user có phát lệnh có đặc quyền
thích hợp hay không.
TRUSTED ORACLE.

SVTH: Đỗ Hữu Bá

Trang 17



Đồ Án Tốt Nghiệp


THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Trusted Oracle là một sản phẩm quản lý bảo mật cơ sở dữ liệu nhiều mức của
công ty Oracle. Nó được thiết kế để cung cấp khả năng bảo mật cơ sở dữ liệu
cao nhằm phục vụ yêu cầu các tổ chức xử lý những dữ liệu tế nhị hay bảo mật.
Trusted Oracle tương thích với các sản phẩm cơ bản của Oracle, và nó hỗ trợ
tất cả các chức năng của Oracle.
II.7 BẢO MẬT ỨNG DỤNG.
1. Tổng quan.
Chế độ bảo mật ứng dụng giới hạn việc truy cập cơ sở dữ liệu từ phía
Client của hệ thống. Bảo mật cơ sở dữ liệu giới hạn đến việc truy xuất đến các
đối tượng cơ sở dữ liệu đặc biệt trong khi bảo mật ứng của ứng dụng giới hạn
việc truy xuất các đối tượng giao diện đặc biệt. Nói rộng ra, bảo mật ứng dụng
bao gồm cả việc sử dụng bất kỳ đối tượng cơ sở dữ liệu nào của ứng dụng được
dùng để nâng cao chế độ bảo mật.
Bảo mật của ứng dụng được sử dụng để tăng cường và bổ sung chế độ bảo
mật của cơ sở dữ liệu. Tuy thế, không nên chỉ tin vào chế độ bảo mật của
ứng dụng, vì không ai tin rằng user chỉ truy cập đến dữ liệu thông qua dữ
liệu đã viết.
Bảo mật của ứng dụng có thể nâng cao mức bảo mật cơ sở dữ liệu bằng
cách giới hạn hơn nữa việc truy xuất đối tượng cơ sở dữ liệu bằng cách giới
hạn hơn nữa việc truy xuất đối tượng cơ sở dữ liệu và bằng cách cung cấp

một lớp trừu tượng bổ sung. Nếu giới hạn cả việc truy cập các stored
procedure, function của ứng dụng và tạo thêm các role đặc biệt cho ứng
dụng, ta có thể dấu các đối tượng ứng với các user đặc biệt hay các role đặc
biệt khi truy xuất hệ thống. Tương tự như chế độ bảo mật cơ bản, ứng dụng
có thể giới hạn việc truy xuất đến các cột hay chỉ định cột nào đó là chỉ đọc
bằng cách sử dụng các view khác nhau ứng với các role khác nhau của user.
Trong các ứng dụng thông thường, giao diện cho phép user làm việc với cơ
sở dữ liệu thông qua các trình đơn, các forms tương ứng với các tiến trình
và các đối tượng hoạt động. Đó là một lớp thuận lợi cho việc ngăn ngừa
user hiểu biết tên các bảng và các cột được truy xuất.
Trong nhiều trường hợp, thông tin của cơ sở dữ liệu sẽ dùng để quản lý các
hoạt động của giao diện, dựa trên các role của user. Các bảng của hệ thống
chứa các thông tin bảo mật cho ứng dụng sẽ điều khiển các khả năng của
giao diện là sẳn dùng. Các tuỳ chọn trình đơn và các forms sẽ được hiện ra
cho các user có đặc quyền và sẻ ẩn đi nếu user không được phép.
Một lý do nữa để cần phải sử dụng bảo mật ứng dụng là ta có thể truy xuất
cơ sở dữ liệu từ nhiều ứng dụng khác nhau. Lúc này user có thể có các role
khác nhau ứng với các ứng dụng khác nhau.
SỬ DỤNG ĐỐI TƯỢNG CƠ SỞ DỮ LIỆU CỦA ỨNG DỤNG.
Sự phân biệt giữa bảo mật ứng dụng và bảo mật cơ sở dữ liệu đôi lúc mập mờ
như khi ta dùng các đối tượng cơ sở dữ liệu của ứng dụng. Khi các ứng dụng
khác nhau cùng truy cập đến đến một cơ sở dữ liệu chung . Khi tạo ra các đối
tượng để dùng cho một ứng dụng cụ thể thì bảo mật ứng dụng là dùng chung.
Dù cho đối tượng tồn tại trong cơ sở dữ liệu, và bảo mật cơ sở dữ liệu đã được
áp dụng, nhưng nếu đối tượng đó chỉ dùng cho một ứng dụng cụ thể nào đó, thì
ta có thể coi đó là ứng dụng chủ “Owner” của nó.

SVTH: Đỗ Hữu Bá

Trang 18




Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Theo định nghĩa chung về bảo mật ứng dụng hệ thống, các đối tượng “cơ
bản”( cluster, tables, indexes, sequence) và các quyền cấp cho các đối tượng
này thuộc loại bảo mật cơ sở dữ liệu. Các đối tượng khác như view, procedures
và function được coi là các đối tượng cơ sở dữ liệu ứng dụng và các quyền cấp
về chúng thuộc loại bảo mật ứng dụng.
Thông thường, trong môi trường cơ sở dữ liệu lớn, nhà quản trị cơ sở dữ liệu
chính sẽ không chịu trách nhiệm về việc tạo và bảo trì các đối tượng cơ sở dữ
liệu ứng dụng. Một cách có thể áp dụng để tạo bảo mật cho một cơ sỏ dữ liệu
lớn được truy xuất từ nhiều ứng dụng là cung cấp quyền tạo sequence và views
của các bảng cho các nhà phát triển hay quản trị để họ đóng vai trò là những
nhà quản trị cơ sở dữ liệu cho các ứng dụng riêng biệt của mình.
Hình 2. Vai trò của các đối tượng cơ sở dữ liệu trong bảo mật ứng dụng.

SVTH: Đỗ Hữu Bá


Trang 19



THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

Đồ Án Tốt Nghiệp

Đối tượng CSDL

SEQUENCES

TABLES

VIEWS

PUBLIC SYNONYMS

Đối tượng ứng dụng

Tables


PROCEDURE&
FUNCTION

PUBLIC
SYNONYMS

VIEWS

Sequences

PROCEDURE VÀ FUNCTION BÊN TRONG LỚP ĐỐI TƯỢNG ỨNG
DỤNG CLIENT

SVTH: Đỗ Hữu Bá

Trang 20



Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M


CHƯƠNG III: ORACLE VÀ MÔ HÌNH MẠNG.
I. Tổng quan về NET8.
Net8 là nền tảng cho các họ sản phẩm mà Oracle xây dựng nên. Nhờ vào Net8
tất cả mọi dịch vụ và ứng dụng của Oracle nằm trên các máy tính khác nhau
đều có thể dễ dàng truy cập và trao đổi dữ liệu với nhau như đang làm việc trên
cùng một máy. Chức năng chủ yếu là thiết lập các phiên chuyển tác mạng và
trao đổi giữa các máy client/server hay giữa các server-server với nhau. Mỗi
máy tính có ứng dụng Oracle muốn tham gia vào hệ thống mạng đều phải được
cài Net8 trên đó.
Các phiên kết nối mạng được thiết lập thông qua cơ chế lắng nghe và phản hồi.
Một chương trình trên máy chủ được gọi là listener sẽ chạy thường xuyên như
là một dịch vụ, tiếp nhận tất cả các kết nối từ các máy khác( máy client) đến cơ
sở
dữ liệu( máy server, nơi chứa cơ sở dữ liệu và cũng là nơi Listener
đang hoạt động ).
Bộ tiếp nhận đóng vai trò như một môi giới hướng dẫn các yêu cầu kết nối
xuất phát từ máy client đến máy server. Mỗi khi có một máy client yêu cầu một
phiên kết nối mạng đến máy mà Listener đang hoạt động, Listener sẽ tiếp nhận
những thông tin kết nối do máy client đưa đến.
Nếu những thông tin này phù hợp với những thông tin mà mà Listener nắm
giữ thì máy client sẽ được listener cấp cho quyền kết nối vào máy server. Như
vậy muốn kết nối với cơ sở dữ liệu của Oracle một ứng dụng trên máy client
cần phải thiết lập đúng những thông số kết nối mà chương trình listener trên
máy server quy định.
Trên một môi trường mạng rộng lớn đòi hỏi nhiều kết nối đến cơ sở dữ liệu để
truy xuất cùng một dịch vụ, thay vì sử dụng cơ chế listener Net8 cho phép cài
đặt bộ tiếp nhận listener và quản lý các kết nối trên một máy tính riêng biệt
bằng chương trình Oracle Connection Manager. Khi đó thao tác kết nối với
listener nằm trên một máy tính trung gian không còn hoạt động chung với các

dịch vụ trên máy server nữa.
II. CÁC KHÁI NIỆM VÀ KIẾN TRÚC MẠNG CỦA ORACLE.
Net8 sử dụng khái niệm” Nền giao tiếp mạng trong suốt”(Trasparent Net Work
Subtrate) gọi tắt là TNS, cùng với các chuẩn công nghiệp về giao tiếp mạng để
thực hiện những kết nối giữa máy client-server cũng như thiết lập các phiên
làm việc trên mạng cho ứng dụng Oracle. Net8 đảm nhiệm khả năng giao tiếp
giữa nhiều máy trong hệ một hệ thống mạng thực hiện những chuyển tác phân
tán của Oracle bất chấp các kết nối được thực hiện dưới hình thức client-server
hay giữa các server-server với nhau. Hoạt động của các dịch vụ mà Net8 cung
cấp chủ yếu là ba thao tác:
Thao tác thực hiện kết nối giữa các máy.
Thao tác trên dữ liệu
Các tháo tác xử lý ngọai lệ
III. KIẾN TRÚC CỦA NET8
Kiến trúc của Net8 gồm:

SVTH: Đỗ Hữu Bá

Trang 21



n Tt Nghip

THệ VIEN ẹIEN Tệ TRệẽC TUYEN

GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO

OKS
.CO
M

Mụi trng mng
Net8 v nn giao tip mng trong sut
Cỏc tng giao tip mng.
Cỏc tng giao tip mng bờn trong mụi trng mng in hỡnh ca Oracle.
Cỏc tng giao tip mng trong mụi trng IIOP.
Tng tỏc gia Server v Server.
Cỏc tng giao tip mng trong mụi trng JDBC.
IV. MễI TRNG MNG.
Mụi trng mng ca Oracle c xõy dng trờn hai khỏi nim:
Tin trỡnh x lý phõn tỏn
C s d liu phõn tỏn.

Client

Server
*Tin trỡnh x lý phõn tỏn
C s d liu ca Oracle v cỏc ng dng phớa client hot ng theo cỏch
ca mt mụi trng x lý phõn tỏn. Tin trỡnh x lý phõn tỏn l s tng tỏc
gia hai hay nhiu mỏy cựng truy xut vo c s d liu khỏc nhau hon tt
mt thao tỏc chuyn tỏc v x lý v truy xut d liu. Cỏc ng dng bao gm
nhng cụng c ca Oracle nh SQL*Plus, Schema Manager chng hn u cú
kh nng yờu cu nhiu Server cha c s d liu ng thi thc hin cỏc thao
tỏc khỏc nhau tr v mt kt qu truy vn duy nht.
Trong mt cu hỡnh mng in hỡnh, mỏy client v server c ci t nh l
nhng thc th tỏch bit nhau v mt vt lý cng nh logic. Cu hỡnh mng
tỏch bit ny cho phộp th hin s phõn cụng lao ng gia cỏc v phõn b ti

nguyờn mt cỏch hiu qu. Nhng ,mỏy ny khụng ũi hi cu hỡnh mnh nờn
ch l nhng mỏy cn tc x lý v b nh mc bỡnh thng l . Ngc
li server c xem nh l nhng mỏy chuyờn bit, lu tr ti nguyờn v d

SVTH: Hu Bỏ

Trang 22



n Tt Nghip

THệ VIEN ẹIEN Tệ TRệẽC TUYEN

GVHD:TS Nguyn Ngc Bỡnh

KIL
OBO
OKS
.CO
M

liu phõn b cho cỏc client. Mỏy server thng trang b cu hỡnh ti a v
dung lng a, tc x lý, b nh, c ch bo mt v sao lu d liu V
nh vy gia client v Server ó cú s phõn cụng v cựng hp tỏc phc v
cho mc ớch x lý d liu ca cỏc chng trỡnh.
C s d liu phõn tỏn:
L mt c s d liu gm nhiu c s d liu a phng cú quan h logic
vi nhau m c phõn tỏn trờn nhiu trm lm vic ca mt mng mỏy tớnh.
i vi ngi dựng tp hp c s d liu nm rói rỏc trờn mng cú liờn quan

n nhau khi truy xut s c xem nh l mt c s d liu duy nht. Cỏc
server cha c s d liu phõn tỏn thng c liờn kt vi nhau bng data
link hoc bng ng dn t mt c s d liu ny n mt c s d liu
khỏc.
Xu th phỏt trin ca c s d liu phõn tỏn:
C cu t chc kinh t phi tp trung
S tng trng
Gim chi phớ truyn thụng
Kin trỳc ca c s d liu phõn tỏn.
S TNG TH

S PHN ON

S SP CH

S NH X A
PHNG 1

DBMS1

CSDL1

S NH X A PHNG
n

DBMSn

CSDLn

S tng th

Bao gm tp ton b d liu ca xớ nghip c biu din bi mụ hỡnh
quan h
Tp cỏc quan h tng th
Mi quan h l mt i tng ca c s d liu phõn tỏn v qua h ú c
tỏch thnh cỏc b phn khụng bao trựm lờn nhau. Mi b phn ú l mt on.
SVTH: Hu Bỏ

Trang 23



Đồ Án Tốt Nghiệp

THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

• Sơ đồ sắp chỗ
Mỗi đoạn là một đơn vị logic của cơ sở dữ liệu phân tán mà nó được định
vị tại một hoặc nhiều trạm làm việc.
CÁC MỨC TRONG SUỐT KHÁC NHAU
* Mức trong suốt phân đoạn:
Người sử dụng biểu diễn ứng dụng trên các quan hệ tổng thể mà khơng hề
biết về sự phân đoạn cũng như sự sắp chỗ của quan hệ tổng thể.

Sự phân đoạn là hồn tồn trong suốt đối với người sử dụng.
• Mức trong suốt ánh xạ định vị
Người sử dụng biểu diển trên các đoạn do vậy người sử dụng biết sự phân
đoạn của quan hệ tổng thể. Tuy nhiên sự định vị của các đọan là trong suốt đối
với người sử dụng.
• Mức trong suốt ánh xạ địa phương
Người sử dụng biểu diễn ứng dụng trên các đọan mà còn phải chỉ rõ làm
việc trên bản sao nào của đoạn.

CHƯƠNG IV: ORACLE VÀ CẤU HÌNH MẠNG
I. SERVICE VÀ NHỮNG CHỨC NĂNG PHỤC VỤ CỦA ORACLE.
Oracle xây dựng rất nhiều loại service để hỗ trợ và phục vụ cho các thao tác
kết nối cũng như truy xuất cơ sở dữ liệu. Một Service thường có hai thao tác
chính mà bạn cần quan tâm là START và STOP. Khi một Service được
START nó sẽ ở trạng thái sẵn sàng phục vụ cho mọi u cầu gửi đến theo cách
thức mà ứng dụng quy định. Khi STOP một Service cũng đồng nghĩa với các
dịch vụ hay ứng dụng mà bạn u cầu phục vụ khơng còn có sẵn nữa.
Chương trình listener của Oracle là một Service dễ hình dung nhất.
II. TỔNG QUAN VỀ CÁC CẤU HÌNH VÀ KẾT NỐI CỦA ORACLE.
Do cơ sở dữ liệu và các ứng dụng của Oracle hoạt động theo mơ hình mạng
client/server nên hầu hết các cấu hình cần thiết lập cần phải ăn khớp nhau giữa
client với server.
Muốn cơ sở dữ liệu trên máy Server chấp nhận kết nối máy client cần phải
được cấu hình thiết lập các thơng số cho Net Service Name các thơng số mà
Net Service Name nắm giữ phải phù hợp với những thơng số thiết lặp trong tập
tin LISTENER.ORA do chương trình kiểm sốt. Các thơng số này chủ yếu bao
gồm địa chỉ mạng của máy Server và các giao thức dùng để kết nối. Trong q
trình kết nối máy client sẽ gửi thêm thơng tin về định danh của cơ sở dữ liệu
trên máy chủ để LISTENER biết cách gửi những u cầu của bạn đến đúng
Service của cơ sở dữ liệu mà bạn cần truy xuất.

Tập tin LISTENER.ORA dùng lưu những thơng tin quy định cách ứng xử và
kiểm sốt kết nối của Services listener, các thơng tin này bao gồm địa chỉ mạng
nơi listener muốn tiếp nhận kết nối( thường là địa chỉ máy Server), giao thức
mà Listener dùng để liên lạc và hiểu được máy Client, cổng giao tiếp( dành cho
giao thức TCP/IP), định danh SID của cơ sở dữ liệu cần LISTENER phục vụ (
hay chuyển giao các u cầu truy xuất từ phía client đưa đến). Tập tin này
thường được ORACLE đặt tại thư mục ORACL_HOME\Net80\Admin \ trên
máy server.
Để kết nối với Server máy Client dùng Net Service Name là một chuỗi thơng
tin được lấy từ tập tin TNSNAMES.ORA( trên máy client cục bộ tập tin này
SVTH: Đỗ Hữu Bá

Trang 24



Đồ Án Tốt Nghiệp

THÖ VIEÄN ÑIEÄN TÖÛ TRÖÏC TUYEÁN

GVHD:TS Nguyễn Ngọc Bình

KIL
OBO
OKS
.CO
M

thường được ORACLE lưu trong thư mục ORACLE_HOME\Net80\Admin)
hoặc trên một máy Server khác(Oracle Names Server) trong trường hợp bạn có

nhiều cơ sở dữ liệu và cần truy xuất trên mạng diện rộng với quy mô cơ sở dữ
liệu phân tán lớn. Khi cấu hình máy client ( hay Server đóng vai trò client)
chúng ta cần phải quan tâm đến những thông số máy kết nối này.
Tổng quát ta có hai cách thiết lập cấu hình cho Net Services Name ở máy
Client là:
Cấu hình quản lý cục bộ.
Địa chỉ mạng và giao thức quy định kết nối được đặt trong tập tin
TNSNAMES.
ORA
hoặc
chỉ
dùng
tập
tin
WINNT\SYSTEM32\DRIVER\ETC\HOST duy nhất của Window NT. Công
cụ của Oracle giúp bạn thực hiện công việc này là Oracle Net8 Easy Config
hay Net 8 Assistance.
Cấu hình quản lý tập trung.
Tất cả tên Net Service Name và địa chỉ kết nối với Server được đặt trên một
máy chủ khác(ONS- Oracle Name Server). Máy client chỉ cần quan tâm đến
địa chỉ máy ONS các thông tin khác về Server chứa cơ sở dữ liệu sẽ được ONS
cho biết. Công cụ hỗ trợ cấu hình này của Oracle là Oracle Net8 Assistance.
III. NET8 VÀ “NỀN GIAO TIẾP MẠNG TRONG SUỐT”.
Khái niệm “trong suốt” thường để chỉ những phần mềm trung gian giúp ta
thực hiện một thao tác nào đó mà không cần biết đến cơ chế hoạt động hay sự
hiện diện của thành phần trung gian. Oracle cung cấp mô hình hoạt động và
giao tiếp mạng tương tự như vậy. Tất cả các lời gọi kết nối đều với mạng đều
do TNS( Transaparent Network Subtrate) hay “Nền giao tiếp mạng trong suốt”
quản lý và chuyển tải. Kỹ thuật và nền tảng của TNS được xây dựng bên trong
Net8 cung cấp một cách giao tiếp duy nhất cho tất cả các giao thức mạng hiện

nay đang được sử dụng rộng rãi như: TCP/IP, IPX, Pies…
Với TNS mọi ứng dụng ngang hàng đều có thể kết nối được với nhau một
cách tự nhiên. Trong kiến trúc mạng ngang hàng gồm hai hay nhiều máy tính (
mỗi máy tính được xem như là một node hay là một nút mạng) có thể giao tiếp
trực tiếp với nhau không cần thông qua một thiết bị trung gian nào khác. Với
hệ thống ngang hàng mỗi node đều có thể đóng vai trò là một client hoặc một
server.
IV. CÁC TẦNG GIAO TIẾP.
Khái niệm xử lý các tiến trình phân tán mà ta đã nêu trước đây dựa vào khả
năng của nhiều máy tính tách biệt nhau có thể giao tiếp và tương tác với nhau
thông qua những tầng giao tiếp được thiết kế khác nhau về mặt vật lý.
Các tầng giao tiếp này được thiết kế theo mô hình hệ thống mở (Open System
Interconnection gọi tắt là OSI). Trong mô hình OSI, giao tiếp giữa các máy tính
khác biệt nhau được thực hiện thông qua việc phân chia trách nhiệm trong việc
chuyển và xử lý một gói thông tin xuyên qua nhiều tầng tách rời.
Phía máy client thông tin từ tầng cao nhất sẽ được phân tích và chuyển dần
xuống các tầng dưới. Tầng vật lý cuối cùng sẽ chuyển thông tin qua mạng đến
máy server. Tại máy server gói thông tin sẽ được phân tích và chuyển xuống
thông qua các tầng giao tiếp theo hướng ngược lại.

SVTH: Đỗ Hữu Bá

Trang 25


×