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

TÌM HIỂU VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE

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.76 MB, 46 trang )

NGÂN HÀNG NHÀ NƯỚC VIỆT NAM

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NGÂN HÀNG TP. HỒ CHÍ MINH
KHOA HỆ THỐNG THƠNG TIN QUẢN LÝ


ĐỀ TÀI:
TÌM HIỂU VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
ORACLE
Bài luận kết thúc học phần
Môn học

:

Hệ quản trị Cơ sở dữ liệu

Họ và tên

:

MSSV

:

Lớp

:

ITS322_202_D02



Giáo viên giảng dạy

:

ThS Trịnh Hồng Nam

TP. HỒ CHÍ MINH, THÁNG 7 NĂM 2021


MỤC LỤC
DANH MỤC VIỆT TẮT ....................................................................................... 3
DANH MỤC HÌNH ẢNH ..................................................................................... 4
DANH MỤC BẢNG BIỂU ................................................................................... 6
CHƯƠNG 1. TỔNG QUAN VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE.. 7
1. Một số khái niệm cơ bản ............................................................................... 7
2. Giới thiệu...................................................................................................... 7
3. Lịch sử phát triển .......................................................................................... 8
4. Lựa chọn phiên cài đặt .................................................................................. 9
5. Cài đặt và cấu hình ....................................................................................... 9
Các thành phần cơ bản ...................................................................................... 22
CHƯƠNG 2. QUẢN TRỊ VẬN HÀNH VỚI HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
ORACLE ..............................................................................................................
28
1. Tạo và cấu hình cơ sở dữ liệu ..................................................................... 28
2. Sao lưu và phục hồi dữ liệu ........................................................................ 34
CHƯƠNG 3. QUẢN TRỊ THÀNH PHẦN VỚI HỆ QUẢN TRỊ CƠ SỞ DỮ
LIỆU ORACLE ................................................................................................ 36
1. Bảng và khung nhìn .................................................................................... 36
2. Chỉ mục ..................................................................................................... 37

3. Hàm và thủ tục ........................................................................................... 38
4. Ràng buộc và Bẩy lỗi.................................................................................. 39
CHƯƠNG 4. QUẢN TRỊ NGƯỜI DÙNG VỚI HỆ QUẢN TRỊ CƠ SỞ DỮ
LIỆU ORACLE ................................................................................................ 41
1. Quyền đăng nhập hệ thống ......................................................................... 41
2. Quyền và vai trò ......................................................................................... 42
TÀI LIỆU THAM KHẢO.................................................................................... 46

2


DANH MỤC VIỆT TẮT
STT Viết tắt
1
CSDL
2
DBMS
3
DCL
4
DML
5
DDL
6
DQL

Tên đầy đủ
Cơ sở dữ liệu
Database Management System
Data control language

Data manipulation language
Data definition language
Data query language

3


DANH MỤC HÌNH ẢNH
Hình 0.1Cơ chế hoạt động khách chủ.................................................................. 8
Hình 0.2 Cài đặt hình 1 ..................................................................................... 10
Hình 0.3Cài đặt hình 2 ...................................................................................... 10
Hình 0.4Cài đặt hình 3 ...................................................................................... 11
Hình 0.5Cài đặt hình 4 ...................................................................................... 11
Hình 0.6Cài đặt hình 5 ...................................................................................... 12
Hình 0.7Cài đặt hình 6 ...................................................................................... 12
Hình 0.8Cài đặt hình 7 ...................................................................................... 13
Hình 0.9Cài đặt hình 8 ...................................................................................... 13
Hình 0.10Cài đặt hình 9 .................................................................................... 14
Hình 0.11Cài đặt hình 10 .................................................................................. 14
Hình 0.12Cài đặt hình 11 .................................................................................. 15
Hình 0.13Cài đặt hình 12 .................................................................................. 15
Hình 0.14Cài đặt hình 13 .................................................................................. 16
Hình 0.15Cài đặt hình 14 .................................................................................. 16
Hình 0.16Cài đặt hình 15 .................................................................................. 17
Hình 0.17Cài đặt hình 16 .................................................................................. 17
Hình 0.18Cài đặt hình 17 .................................................................................. 18
Hình 0.19Cài đặt hình 18 .................................................................................. 18
Hình 0.20Cài đặt hình 19 .................................................................................. 19
Hình 0.21Cài đặt hình 20 .................................................................................. 19
Hình 0.22Cài đặt hình 21 .................................................................................. 20

Hình 0.23Cài đặt hình 22 .................................................................................. 20
Hình 0.24Cài đặt hình 23 .................................................................................. 21
Hình 0.25Kiến trúc Oracle Server ..................................................................... 22
Hình 0.26SGA .................................................................................................. 23
Hình 0.27Kiến trúc Tablespace ......................................................................... 26
Hình 0.28Tạo cơ sở dữ liệu hình 1 .................................................................... 28
4


Hình 0.29Tạo cơ sở dữ liệu hình 2 .................................................................... 29
Hình 0.30Tạo cơ sở dữ liệu hình 3 .................................................................... 30
Hình 0.31Tạo cơ sở dữ liệu hình 4 .................................................................... 31
Hình 0.32Tạo cơ sở dữ liệu hình 5 .................................................................... 32
Hình 0.33Mơ hình truy cập ............................................................................... 41

5


DANH MỤC BẢNG BIỂU
Bảng 0.1Bảng lịch sử phát triển ............................................................................. 9
Bảng 0.2Bảng thông tin về role ............................................................................ 44
Bảng 0.3Bảng thông tin về các role 2................................................................... 45

6


CHƯƠNG 1. TỔNG QUAN VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
ORACLE
1. Một số khái niệm cơ bản
Cơ sở dữ liệu (Database) là một tập hợp dữ liệu có liên quan với nhau về mặt luận

lý được lưu trữ trên các thiết bị nhớ đáp ứng nhu cầu sử dụng thơng tin với các mục
đính của người sử dụng.
Hệ quản trị CSDL (DBMS) là phần mềm hệ thống đước thiết kế giúp tạo môi trường
lưu trữ, thao tác và quản lý dữ liệu trong CSDL.
Mức thể hiện của CSDL sắp xếp theo mức trừu tượng hóa tăng dần:
 Mức khung nhìn (physical level): mơ tả một phần của CSDL ứng với từng
người dùng. Người dùng với hệ thống trao đổi thơng qua khung nhìn. Hệ thống
duy trì nhiều khung nhìn khác nhau.
 Mức luận lý (logical level): mô tả dữ liệu gì được lưu trữ trong CSDL và các
mối quan hệ giữa chúng. Mức này được sử dụng bởi các DBA
 Mức vật lý (physical level): mô tả dữ liệu thể hiện được lưu trữ thế nào. Các
cấu trục của CSDL được mô tả chi tiết.
 Ngôn ngữ dữ liệu là tập hợp các lệnh được hệ quản trị CSDL định nghĩa để
thức hiện các chức năng của nó. Phân loại như sau:
 Ngôn ngữ định nghĩa dữ liệu (DCL): định nghĩa và xác định các loại dữ liệu
như tạo, thay đổi hoặc xóa và các mối quan hệ giữa chúng.
 Ngôn ngữ thao tác dữ liệu (DML): thực hiện các tác vụ như chèn, cập nhật
hoặc xóa các lần xuất hiện dữ liệu.
 Ngôn ngữ điều khiển dữ liệu (DDL): dùng để bảo mật kiểm soát các truy cập
dữ liệu.
 Ngôn ngữ truy vấn dữ liệu (DQL): tạo các truy vấn tìm kiếm, hiển thị thơng
tin.
2. Giới thiệu
Oracle là thương hiệu nhà cung cấp công nghệ lớn nhất trên thị trường hiện nay. Đó
cũng là từ viết tắt của phần mềm hệ thống quản lý CSDL quan hệ (RDBMS) – Oracle
Database được công ty phát triển.
Oracle là hệ quản trị CSDL đầu tiên được tích hợp chủ yếu trong nhiều mơ hình
giúp các doanh nghiệp quản lý dữ liệu trên máy tính một cách dễ dàng, linh hoạt và
tiết kiệm chi phí nhất.
Phần mềm này mang tính mềm tính mềm dẻo, linh động, thích ứng cao với các quy

mơ xử lý giao dịch, an toàn hệ thống. Cung cấp các công cụ xây dựng và quản lý cơ
sở dữ liệu.
7


 Cơ chế hoạt động
Hệ quản trị CSDL Oracle hoạt động theo mơ hình khách chủ cho đồng thời có nhiều
nhiều người dùng truy xuất sử dụng đến dữ liệu.

Hình 0.1Cơ chế hoạt động khách chủ

3. Lịch sử phát triển
Năm Phiên bản

Tính năng nổi bật

1979 Oracle v2

SQL-based RDBMS thương mại đầu tiên

1983 Oracle v3

Kiểm soát đồng thời, phân phối dữ liệu, khả năng mở rộng

1984 Oracle v4

Multiversion read consistency

1985 Oracle v5


Hỗ trợ mơ hình Client/server & hệ thống cơ sở dữ liệu phân tán

1988 Oracle v6

Khóa Row-level, khả năng mở rộng, sao lưu và phục hồi trực tuyến, PL / SQL,
Oracle Parallel Server

1992 Oracle 7i

Thủ tục lưu trữ PL / SQL, Triggers, Shared Cursors, Cost Based Optimizer,
Transparent Application Failover

1997 Oracle 8

Trình quản lý khơi phục, Phân vùng, Thẻ dữ liệu, Native internet protocols, Java,
Cơ sở dữ liệu riêng ảo.

2001 Oracle 9i

Oracle Real Application Clusters (RAC), Oracle XML DB, Khai thác dữ liệu,
Luồng, Logical Standby

2003 Oracle 10gR1

Cơ sở hạ tầng lưới, Oracle ASM, Cơ sở dữ liệu Flashback, Màn hình chẩn đoán cơ
sở dữ liệu tự động

2005 Oracle 10gR2

Kiểm tra ứng dụng thực, Kho cơ sở dữ liệu, Lập chỉ mục trực tuyến, Advanced

Compression, Mã hóa dữ liệu minh bạch

2007 Oracle 11gR1 Bảo vệ dữ liệu hoạt động, Secure Files, Exadata
8


2009 Oracle 11gR2

Data Redaction, Hybrid Columnar Compression, Cluster File System, Golden Gate
Replication, Database Appliance

2013 Oracle 12cR1

Multitenant architecture, In-Memory Column Store, Native JSON, SQL Pattern
Matching, Database Cloud Service

2016 Oracle 12cR2

Native Sharding, Zero Data Loss Recovery Appliance, Exadata Cloud Service,
Cloud at Customer

2018 Oracle 18c

Autonomous Database, Data Guard Multi-Instance Redo Apply, Polymorphic
Table Functions, Active Directory Integration

2019 Oracle 19c

Indexing tự động, Chuyển hướng DML bảo vệ dữ liệu , Bảng kết hợp được phân
vùng, Real-time Stats + Stats Only Queries


2020 Oracle 20c

Non-CDB architecture will be desupported, Native Blockchain tables và nhiều
thuật tốn máy tính.
Bảng 0.1Bảng lịch sử phát triển

 Các phiên bản
 Phiên bản Enterprise
 Phiên bản Standard
 Phiên bản Express
 Phiên bản Personal
 Một số tính năng của hệ quản trị CSDL Oracle
 Khả năng cho phép xử lý dữ liệu rất lớn, có thể đến hàng trăm terabyte với tốc
độ xử lý dữ liệu rất nhanh và cao.
 Khả năng bảo mật rất cao, Oracle đạt độ bảo mật cấp c2 theo chuẩn bảo mật
của bộ quốc phịng Mỹ và cơng nghệ Oracle vốn được hình thành từ yêu cầu
đặt hàng của các cơ quan an ninh FBI và CIA.
 Phần mềm tương thích với nhiều nền tảng hiện nay.
 Cho phép nhiều người dùng cùng lúc.
 Cho phép triển khai CSDL phân tán. Bất cứ một hệ thống bổ sung nào được
người dùng này truy cập đều được gọi là hệ thống từ xa. Một môi trường phân
tán cho phép các ứng dụng truy cập và trao đổi dữ liệu từ các hệ thống cục bộ
và từ xa. Các dữ liệu này có thể được truy cập và sửa đổi đồng thời. Đồng thời
có thể phát triển ứng dụng trên internet.
4. Lựa chọn phiên cài đặt
Phiển bản: Oracle 12c R1 (Release 1) (64 bit)
5. Cài đặt và cấu hình

9



Oracle cho phép download miễn phí. Bạn có thể vào trang chủ của Oracle để
download phần mềm này.
Đường dẫn:
/>
Hình 0.2 Cài đặt hình 1

Sau khi download xong bạn sẽ có 2 file zip. Giải nén chúng vào cùng một thư mục.

Hình 0.3Cài đặt hình 2

Chạy file Setup.exe

10


Hình 0.4Cài đặt hình 3

Hình 0.5Cài đặt hình 4

Sau đây, chúng ta sẽ cài phần mềm Oracle và tạo Database có tên db12c

11


Hình 0.6Cài đặt hình 5

Cài đặt


Hình 0.7Cài đặt hình 6

12


Hình 0.8Cài đặt hình 7

Hình 0.9Cài đặt hình 8

13


Hình 0.10Cài đặt hình 9

Hình 0.11Cài đặt hình 10

Oracle sẽ được cài đặt vào 1 user của Windows khơng có quyền Administrator, vì
lý do bảo mật. Nếu trong máy tính của bạn chưa có Windows user như vậy bạn có
thể chọn tạo mới một Windows user.

14


Hình 0.12Cài đặt hình 11

Hình 0.13Cài đặt hình 12

15



Hình 0.14Cài đặt hình 13

Bước này, bộ cài đặt hỏi bạn có tạo Plugin hay khơng, hãy chọn: Create as
Container Database và nhập vào tên Plugin Database: pdbdb12c

Hình 0.15Cài đặt hình 14

16


Hình 0.16Cài đặt hình 15

Để có thể lưu trữ được nhiều loại ngôn ngữ (bao gồm cả tiếng Việt), bạn nên chọn:
Character Set: Unicode (AL32UTF8)

Hình 0.17Cài đặt hình 16

17


Hình 0.18Cài đặt hình 17

Hình 0.19Cài đặt hình 18

18


Hình 0.20Cài đặt hình 19

Hình 0.21Cài đặt hình 20


19


Hình 0.22Cài đặt hình 21

Và chờ đợi cho tới khi việc cài đặt thành cơng.

Hình 0.23Cài đặt hình 22

20


Bước tiếp theo bộ cài đặt sẽ tạo Database có tên db12c như bước trước chúng ta đã
đặt tên.

Hình 0.24Cài đặt hình 23

Tới đây việc cài Oracle thành cơng. Có thể tiến hành mở Orcale và sử dụng

21


Các thành phần cơ bản

Hình 0.25Kiến trúc Oracle Server

Oracle Server gồm có một Oracle Instance và một Oracle Database
 Oracle Instance là thành phần liên kết giữa người dùng và thông tin trong
Oracle Database. Một Oracle Instance chỉ được mở cho duy nhất một Oracle

Database cần truy xuất.
 Oracle Database dùng để lưu trữ và cung cấp thông tin cho người dùng. Việc
quản lý dữ liệu trong Oracle Database thông qua cấu trúc lưu trữ logic và vật
lý.
6.1. Oracle Instance Architecture
 Oracle Database Memory Structure – Cấu trúc vùng nhớ
Oracle sử dụng vùng nhớ để lưu trữ thông tin trong hệ thống khi đang thực thi. Cấu
trúc vùng nhớ của Oracle bao gồm SGA và PGA
Các thành phần trong System Global Area (SGA)
System Global Area (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. Được chỉ định khi một Instance
được khởi động, và là thành phần cơ bản của một Oracle Instance.
Thông tin lưu trữ trong SGA có thể được sử dụng bởi tất cả các Server Process và
Background Process.

22


Hình 0.26SGA

 Database Buffer Cache: Lưu trữ những bản copy của khối dữ liệu đã được
đọc từ data file. Khi một đoạn SQL được thực thi, thì Server Process sẽ đọc
các thông tin từ Database Buffer Cache để lấy các khối dữ liệu cần thiết, điều
này giúp cho tốc độ hoạt động của hệ thống sẽ cao hơn vì đọc trên cache sẽ
nhanh hơn là đọc trên đĩa cứng. Nếu các khối dữ liệu khơng có trong Database
Buffer Cache thì Server Process mới đọc dữ liệu từ data file.
 Redo Log Buffer: Là một bản ghi tạm thời, ghi lại tất cả những thay đổi trên
các khối dữ liệu với mục đích chính là để phục hồi dữ liệu. Được thực hiện
bởi các Background Process.
 Shared pool: Được dùng để lưu trữ những đoạn SQL vừa được thực thi gần

đây nhất và những định nghĩa dữ liệu được dùng gần đây nhất.
 Large Pool: Cung cấp một vùng nhớ lớn, được cấp phát cho các trường hợp
như: sao lưu, phục hồi hệ thống...
 Java Pool là vùng dùng cho các Procedure viết bằng Java.
Các thành phần trong Program Global Area (PGA)
Program Global Area (PGA): Là một phần cấu trúc bộ nhớ lưu trữ dành cho 1 User
process kết nối tới 1 Instance bao gồm dữ liệu và thông tin điều khiển cho một Server
hoặc một Background process. Được chỉ định khi một Server Process được khởi
động. PGA được cấp phát cho User Process kết nối đến Oracle Server.
PGA bao gồm:
 Session information
 Cursor information
 SQL execution work area
 Oracle Database Process Architecture – Cấu trúc tiến trình
Trong hệ thống Oracle Database thì Process có thể được chia làm ba nhóm là:
 User Process: Bao gồm ứng dụng hay công cụ kết nối tới Oracle Database.
 Database Process: Bao gồm Server Process và Background Process. Trong
đó Server Process được tạo ra khi một Session được thiết lập. Còn Background
Process được khởi động mỗi khi Instance được khởi động.
23


 Daemon/Application Process: Bao gồm Networking listeners và Grid
infrastructure.
Về Server Process:
 Dedicated Server: Một Server Process sẽ phục vụ cho 1 User Process (1-1).
 Shares Server: Một Server Process sẽ phục vụ cho nhiều User Process (1-n).
Về Background Process:
Thực hiện các chức năng thay cho lời gọi tiến trình xử lý tương ứng. Nó điều
khiển vào ra, cung cấp các cơ chế xử lý song song nâng cao hiệu quả và độ tin

cậy.
 Database Writer Process (DBWn): Ghi các Modified (Dirty) Buffer từ
Database Buffer xuống Datafile.
 Log Writer Process (LGWR): Ghi các Redo Log Buffer xuống một Redo
Log File.
 Checkpoint Process (CKPT): Có thể được coi như là một sự kiện khi thực
hiện ghi tất cả các Dirty Buffer trong SGA.
 System Monitor Process (SMON): Phục hồi lại những thay đổi trong Redo
Log, mở Database cho User truy xuất, phục hồi các Transaction chưa được
Commit.
 Process Monitor Process (PMON): “Thu dọn" sau khi một Process thất bại
(quay lại Transaction, giải phóng Block, khởi động lại Dispathcer...).
 Recoverer Process (RECO)
 Job Queue Coordinator (CJQ0)
 Job Slave Processes (Jnnn)
 Archiver Processes (ARCn)
 Queue Monitor Processes (QMNn)
6.2. Oracle Database Architecture – Cấu trúc dữ liệu của Oracle
Oracle Database là tập hợp các dữ liệu được xem như một đơn vị thành phần (Unit).
Database có nhiệm vụ lưu trữ và trả về các thơng tin liên quan.
Database được xem xét dưới hai góc độ cấu trúc logic và cấu trúc vật lý. Hai cấu
trúc dữ liệu này tồn tại tách biệt nhau, việc quản lý dữ liệu theo cấu trúc lưu trữ vật
lý không gây ảnh hưởng tới cấu trúc logic.
Cấu trúc lưu trữ vật lý là các tập tin. Cấu trúc lưu trữ logic là các không gian bảng
(table space).
Oracle Database được xác định bởi tên một tên duy nhất.
 Cấu trúc vật lý của Database
Dữ liệu trong Oracle Database sẽ được tổ chức lưu trữ và quản lý bởi ba loại tập tin
sau:
Datafile

24


Mỗi một Oracle Database đều có thể có một hay nhiều Datafile. Các Datafile chứa
toàn bộ dữ liệu trong Database. Các dữ liệu thuộc cấu trúc logic của Database như
Table hay Index đều được lưu trữ vật lý trong các Datafile.
Đặc điểm của Datafile:
 Một Datafile dùng để lưu trữ dữ liệu của duy nhất một Database.
 Datafile có một số tính chất cho phép tự động mở rộng kích thước để theo
kích thước của Database.
 Một hay nhiều Datafile tạo nên một đơn vị lưu trữ logic của Database gọi là
Tablespace.
 Một Datafile chỉ quan hệ duy nhất một Tablespace.
Datafile cũng có trạng thái online và offline. Trạng thái của Datafile thường thay
đổi theo Tablespace mà nó liên kết.
Redo Log File
Mỗi Oracle Database đều có từ 2 Redo Log File trở lên. Các Redo Log File trong
database thường được gọi là Redo Log của CSDL đó. Một Redo Log được tạo thành
từ nhiều Redo Entries, còn gọi là các Redo Record.
Chức năng chính của Redo Log là ghi lại tất cả các thay đổi đối với dữ liệu trong
Database. Redo Log File được sử dụng để bảo vệ Database khỏi những hỏng hóc do
sự cố. Oracle cho phép sử dụng cùng một lúc nhiều Redo Log gọi là Multiplexed
Redo Log để cùng lưu trữ các bản sao của Redo Log trên các ổ đĩa khác nhau.
Các thông tin trong Redo Log File chỉ được sử dụng để khôi phục lại Database trong
trường hợp hệ thống gặp sự cố và không cho phép viết trực tiếp dữ liệu trong
Database lên các Datafile trong Database.
Công việc khôi phục dữ liệu từ các Redo Log được gọi là Rolling Forward.
Control File
Mỗi Oracle Database đều có ít nhất một Control File dùng để chứa các mục thông
tin quy định cấu trúc vật lý của Database như:

 Tên của Database.
 Tên và nơi lưu trữ các Datafile hay Redo Log File.
 Time stamp (mốc thời gian) tạo lập Database
Mỗi khi nào một Instance của Oracle Database được khởi động, Control File của nó
sẽ được sử dụng để xác định Datafile và các Redo Log File đi kèm.
Nội dung của Control File sẽ được Oracle tự động cập nhật liên tục khi cấu trúc lưu
trữ vật lý của Database thay đổi và chỉ có thể bị thay đổi bởi Oracle.
Control File cũng được sử dụng đến khi thực hiện khôi phục lại dữ liệu.
 Cấu trúc logic của Database
Cấu trúc logic của Oracle Database bao gồm các đối tượng Tablespaces, Schema
Objects, Data Block, Extent, Và Segment.
Tablespace
25


×