You are on page 1of 29

Trang chủ >> Giáo Dục - Đào Tạo >> Cao đẳng - Đại học

BÀI TIỂU LUẬN 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.26 MB, 37
trang )

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


TRƯỜNG ĐẠI HỌC NGÂN HÀNG TP HCM
KHOA HỆ THỐNG THÔNG TIN QUẢN LÝ


BÀI TIỂU LUẬN

HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU

ORACLE
GVHD: Trịnh Hoàng Nam
SV thực hiện: Nguyễn Thị Quế Anh
Tô Mỹ Minh Khôi
Lê Văn Long
Lớp: D02

TP. Hồ Chí Minh, tháng 12 năm 2019

MỞ ĐẦU
- TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
Trong 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, chắc chắn, đồng thời lại truy cập chính xác và dễ dàng chúng.
Theo thời gian, yêu cầu của bài toán càng nâng cao với lượng thơng tin cần lưu trữ, xử
lí càng nhiều và đa dạng.
-

Các nhà tin học đã đưa ra nhiều giải đáp cho bài tốn trên. Các giải pháp ngày

càng hồn chỉnh cùng với sự hồn thiện của lý thuyết và cơng nghệ. Hệ quản trị cơ sở
dữ liệu Oracle là một trong những giải pháp công nghệ tốt nhất, được công nhận trên thị
trường tin học ngày nay.
-

Oracle là CSDL đã được triển khai trên mơ hình client/serve, đặc biệt là triển

khai trên các website. Với tất cá dữ liệu được quản lí chun nghiệp và được lưu trữ an
tồn trong các serve chính của Oracle , chúng ta có thể chắc chắn rằng các nhân viên có
thể truy cập các thông tin mới nhất nhằm thực hiện các quyết định kinh doanh một cách
sáng suốt
-

Đối với các CSDL lớn thì việc sử dụng Oracle là hồn tồn hợp lí. Nó được

thừa nhận là đảm bảo tính an tồn dữ liệu cao. Quản lý lưu trữ rất mềm dẻo. nó khơng
chỉ cung cấp các khả năng quản lý hệ thống dữ liệu phức tạp cho các doanh nghiệp lớn
mà còn cung cấp các cơng cụ hữu hiệu để bảo trì hệ thống, dễ dàng cho việc phân tán
dữ liệu đến người dùng, quản lí tốt các tài ngun có sẵn của hệ thống.
-

Với ý nghĩa phát triển nhưTẢI


vậy BẢN
nhómĐẦY ĐỦ
chúng (.PDF)
em đã chọn đề tài (37 trang)
“ Tìm hiểu về
Hệ quản trị cơ sở dữ liệu Oracle” để làm tiểu luận cho mơn học
-

Trong q trình thực hiện tiểu luận với đề tài Tìm Hiểu Về Oracle. Chúng em

đã phần nào nắm được những phần cơ bản của Oracle về cách cài đặt và gỡ bỏ một
chương trình Oracle

Tìm hiểu và trình bày các nội dung cơ bản về Oracle: Lịch sử phát triển, quản trị

người dùng, quản trị thành phần, quản trị vận hành v.v..

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

MỤC LỤC
Mở đầu
I.

Tổng quan về Hệ quản trị cơ sở dữ liệu Oracle.............................4


1. Lịch sử ra đời và phát triển.......................................................4

II.

2. Giới thiệu chung về ORACLE Server......................................5


Cài đặt Oracle.................................................................................9

III.

TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)


Quản trị người dùng.......................................................................15
1. Truy xuất Oracle.......................................................................15
2. Quản lí, tạo mới, xóa User........................................................15
3. User Profile...............................................................................19

IV.

Quản trị thành phần........................................................................21


1. Tạo bảng đối tượng...................................................................21
2. Bảng lồng (Nested table).......................................................... 22
3. Kiểu mảng (Varray Type).........................................................23
4. Kiểu tham chiếu Ref (Reference).............................................24
5. Câu lệnh tạo VIEW..................................................................26
6. Trigger.......................................................................................26
7. Cấp phát và thu hồi các extents................................................28
8. Các loại Segments.....................................................................29
9. Index.........................................................................................29

V.

Quản trị vận hành...........................................................................30

VI.

Các tính năng và ưu điểm nổi bật của Oracle................................34

Kết luận

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


TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
I. Giới thiệu tổng quan, lịch sử ra đời của Oracle
1. Lịch sử ra đời và phát triển:
Oracle là mô ̣t trong số các hệ quản trị cơ sở dữ liệu quan hệ ra đời vào thâ ̣p niên 70 và đến
ngày nay nó trở thành mô ̣t trong những hệ quản trị cơ sở dữ liệu dẫn đầu trong “làng” cơ sở
dữ

liệu trên thế giới như IBM DB2, Informix, SQL Server…
Vào năm 1977, Larry Ellison, Bod Miner và Ed Otaes thành lập một công ty và đặt tên là
Relational Software Incorporation (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. Larry Ellison, Bod Miner và Ed Otaes quyết định phát triển hệ này bằng ngôn
ngữ
C và giao tiếp SQL.
Năm 1979, RSI phân phối sản phẩm đầu tiên cho khách hàng là hệ quản trị cơ sở dữ liệu
Oracle phiên bản 2. Năm 1983, phiên bản 3 được giới thiệu với những thay đổi trong ngôn
ngữ
SQL, mở rộng hiệu suất và các cải tiến khác. Không như các phiên bản trước đây, phiên bản
3
hầu như được viết tồn bộ bằng ngơn ngữ C.
Đến năm 1984 phiên bản 4 được ra đời, đây được xem là phiên bản hợp nhất tính nhất quán
trong đọc dữ liệu.
Phiên bản 5 được giới thiệu vào năm 1985 là một mốc lịch sử vì nó đã đưa công nghệ khách
chủ 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, chạy được trên nhiều nền và hê ̣ điều hành khác nhau.
Oracle 7 được phát hành vào năm 1992 bao gồm nhiều thay đổi về tiện ích nhập/ xuất.
Oracle
7 là hệ quản trị cơ sở dữ liệu quan hệ đầy đủ chức năng nhất được sử dụng trong nhiều
năm. Nó
có nhiều ưu điểm nhờ tính năng dễ sử dụng, cơng cụ SQL* DBA và các tiện ích khác.
Năm 1997, Oracle 8 giới thiệu thêm phần mở rộng đối tượng (Object Extension) cũng như
tính năng và cơng cụ quản trị mới. Gần đây, Oracle 8.1.5 với tên gọi Oracle 8.i, 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. Phiên bản Oracle 8.0
TẢIvực
được cải tiến nhiều trong lĩnh BẢNquản
ĐẦYtrịĐỦ (.PDF)
dữ liê ̣u. Mă ̣c dù sự(37
cải trang)
tiến Oracle 8i nhằm hỗ trợ
cho
sự phát triển Java. Oracle 8.i đã hoàn chỉnh trong việc quản trị dữ liệu đối tượng mà phiên
bản
8.0 đã khởi xướng.
Từ phiên bản Oracle 8i đến nay đã hoàn thiện hơn với sự xuất hiện của Oracle 9i, 10g hỗ trợ
các chức năng quản trị và xây dựng cơ sở dữ liệu hướng đối tượng

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

2. Giới thiệu chung về ORACLE Server


Oracle Server là một hệ quản trị CSDL cung cấp nhiều công cụ trong việc quản lý thông tin.
Oracle Server là một tập hợp các tập tin vật lý, tiến trình và những cấu trúc bộ nhớ dùng để
thực
hiện các yêu cầu truy xuất dữ liệu, thực hiện các thao tác phục hồi và lưu trữ dữ liệu khi cần
thiết.
Phần mềm này vẫn đang được phát triển tiếp lên những version cao hơn, và vẫn đang là 1
trong
những phần mềm quản trị database hàng đầu thế giới. Theo thơng tin từ Wikipedia thì phần
mềm
này được viết bằng Assembly, C và C++. Có lẽ đó là cốt lõi chính của Oracle Database. Sau
này
những cơng cụ liên quan như emctl, dbca, netca… thì được viết bằng Java.
Phần mềm này hỗ trợ nhiều ngôn ngữ, được phân phối rộng khắp thế giới.
- Giới thiệu tổng quan
Oracle Server có thể chạy trên một hay nhiều máy tính với những mơ hình khác nhau:
+ Client – Application Server – Server: đây là mơ hình 3 lớp, người dùng truy cập từ máy đơn
(Client) vào máy chứa dữ liệu (Server) thông qua một trạm trung gian gọi là Application
Server,
dùng để thực hiện việc xử lý các yêu cầu của ứng dụng khi cần truy xuất dữ liệu.
TẢIhệBẢN
+ Client – Server: thông qua ĐẦY
thống ĐỦngười
mạng, (.PDF) (37 máy
dùng sẽ dùng trang)
tính (Client) để truy
xuất
CSDL được đặt trên một máy tính khác (Server) trong hệ thống mạng, truy xuất dữ liệu theo
dạng
này được gọi là mô hình 2 lớp.
+

Host – Base: người dùng truy xuất dữ liệu ngay tại máy dùng làm Server lưu trữ CSDL.

Những thành phần chính của Oracle Server


Oracle Server gồm có một Oracle Instance và một Oracle Database.

+ Oracle Instance
5

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


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 Instance được tạo nên bởi sự kết hợp của hai thành phần là cấu trúc bộ nhớ và các
tiến
trình nền (Background Process) dùng để quản lý CSDL.
Vùng nhớ của Oracle Instance gọi là SGA (System Global Area) có vai trị lưu trữ thơng tin
của
Oracle Database và được chia sẻ cho những người đang truy xuất vào cơ sở dữ liệu.
Tiến trình trong Oracle có 2 loại: tiến trình của người dùng (User Process) và tiến trình của
Oracle (Oracle Process).
User Process được hình thành khi người dùng sử dụng công cụ hay ứng dụng kết nối vào
Oracle
Instance. Khi đó, trên máy tính chứa Oracle Server sẽ phát sinh một tiến trình gọi là Server
Process
TẢI BẢN ĐẦY ĐỦ (.PDF)
dùng để giao tiếp giữa User (37 trang)
Process và Oracle Instance. Những xử lý bên trong Oracle Instance sẽ do các tiến trình nền
(Background Process) thực hiện.
+ Oracle Database
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ý.
Cấu trúc lưu trữ logic là những thành phần đặc trưng của Oracle Server, cấu trúc vật lý là
những
tập tin hệ thống tồn tại trong hệ điều hành, nơi Oracle Server đang chạy.
Tổ chức dữ liệu trên CSDL Oracle

Vai trò quan trọng nhất của Oracle Server là lưu trữ và cung cấp thông tin cho người dùng
thông qua Oracle Database.
Oracle Database quản lý thông tin lưu trữ thông qua hai thành phần lưu trữ vật lý và logic.
6

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


Thành phần lưu trữ vật lý là các tập tin. Thành phần lưu trữ logic là các không gian bảng
(table space).
 Thành phần vật lý
Thành phần vật lý dùng để lưu trữ dữ liệu trong Oracle Database là tập hợp một số tập tin tồn

tại trên máy tính cài đặt Oracle Server, các tập tin này sẽ được sử dụng khi Oracle Database
đang được mở.
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:
-

Data File.
Redo Log File.
Control File.

 Thành phần Logic


TẢI BẢN
Dữ liệu trong Oracle Database đượcĐẦY ĐỦ và
tổ chức (.PDF) (37những
quản lý dựa vào trang)thành phần Logic,
là những thành phần hỗ trợ DBA và người dùng trong việc lưu trữ và sử dụng thông tin trên
Oracle Server.
Thành phần Logic trong Oracle Database bao gồm 2 đơn vị lưu trữ là Tablespace và các
Schema Object.

Tablespace

Một Database được chia thành nhiều đơn vị lưu trữ ở mức Logic, những đơn vị lưu trữ
đó gọi là Tablespace.
Phân loại tablespace

 Kiểu dữ liệu hướng đối tượng


Phần này trình bày các kiểu dữ liệu hướng đối tượng cung cấp bởi Oracle và ngôn
ngữ
định nghĩa đối tượng ODL (Object Definied Language), ngôn ngữ truy vấn đối tượng OQL
(Object Query Language)
Đối tượng là kiểu dữ liệu rất mạnh có trong phiên bản Oracle 8.i trở đi. Đối tượng đưa ra
khả năng đóng gói dữ liệu, che dấu thơng tin, thiết lập các thuộc tính, hành vi ứng xử cho đối
7

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


tượng. Với Oracle, bạn có thể xây dựng các đối tượng thật sự mô phỏng các thực thể của
thế
giới mà chúng ta đang sống. Đối tượng mang tính trừu tượng hố cao. Cấu trúc dữ liệu và mã
lệnh được kết hợp với nhau để tạo nên một tổng thể duy nhất là đối tượng. Sử dụng đối
tượng
trong thiết kế cơ sở dữ liệu là yêu cầu của các ứng dụng đa dạng hiện nay. Bạn có thể dễ
dàng
lưu chúng vào một bảng, chèn thêm, xoá, sửa hay truy vấn đối tượng như các lệnh SQL
thông TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
thường. Thế giới quanh ta là một tập hợp đa dạng của nhiều đối tượng, Oracle và các công
cụ
phần mềm khác cũng không phải ngoại lệ. Oracle 8.i là một hệ quản trị cơ sở dữ liệu hướng
đối tượng, nó trải qua nhiều năm từ hệ thống quan hệ thuần tuý truyền thống thành một hệ
thống mở rộng các tính năng hướng đối tượng.
Trong Oracle có một ngơn ngữ đặc biệt, hồn thiện cho phép kết hợp ngôn ngữ thủ tục
truyền thống với truy xuất các đối tượng cơ sở dữ liệu thông qua SQL là PL/ SQL. Lập trình
hướng đối tượng thực hiện dựa trên cơ sở các kiểu đối tượng (Object Type)
 Các kiểu dữ liệu phức hợp định nghĩa sẵn
- Đối tượng lớn nhị phân lưu trong cơ sở dữ liệu (Binary Large Object - BLOB)
Kiểu dữ liệu BLOB là đối tượng lớn nhị phân lưu trữ dữ liệu nhị phân khơng có cấu trúc
trong cơ sở dữ liệu, có thể lưu trữ tối đa bốn GB (Gigabyte) dữ liệu nhị phân.
- Đối tượng lớn ký tự lưu trong cơ sở dữ liệu (Character Large Object - CLOB)
Kiểu dữ liệu CLOB là đối tượng lớn ký tự lưu trữ tối đa bốn GB ký tự trong cơ sở dữ liệu.
- Đối tượng lớn ký tự chiều dài cố định (Fixed - Width Multibyte Character Large Object
NCLOB)
Kiểu dữ liệu NCLOB là đối tượng lớn ký tự chiều dài cố định lưu trữ tối đa bốn GB ký tự
trong cơ sở dữ liệu. Các NCLOB lưu trữ dữ liệu có chiều dài dữ liệu cố định.
- Đối tượng lớn nhị phân lưu ngoài cơ sở dữ liệu (Binary Large File Object - BFile)
Kiểu dữ liệu BFILE là đối tượng lớn nhị phân lưu trữ dữ liệu nhị phân khơng có cấu trúc
trong các tập tin của hệ điều hành ngoài cơ sở dữ liệu. Cột BFILE hoặc thuộc tính lưu trữ một
bộ định vị tập tin chỉ đến tập tin bên ngoài chứa dữ liệu. Các BFILE có thể lưu trữ tối đa bốn
GB dữ liệu. Các BFILE là chỉ đọc, bạn không thể sửa đổi chúng. Chúng chỉ hỗ trợ đọc ngẫu
nhiên và chúng không tham gia vào các giao dịch.

 Kiểu đối tượng (Object Type)


Khác với những dữ liệu tĩnh thông thường, một kiểu đối tượng sẽ biết cách tác động lên
chính dữ liệu mà nó thể hiện thơng qua các phương thức được xây dựng bên trong đối
tượng.
Để đưa một đối tượng vào dùng bạn chỉ cần biết chúng làm được những gì khơng cần phải
biết
chúng được cài đặt như thế nào.
Các kiểu đối tượngTẢI BẢN
là các ĐẦY
khái ĐỦtrừu
niệm (.PDF) (37
tượng hoá của trang)
các đối tượng trong thế giới
khách
quan. Một kiểu đối tượng là khn mẫu của đối tượng. Đơn vị dữ liệu có cấu trúc so khớp
khuôn mẫu được gọi là đối tượng. Đối tượng là thể hiện của kiểu đối tượng
II.

Cài đặt Oracle


8

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


Để cài đặt Oracle 12c Realease 1 thì bạn thực hiện các bước sau.
Bước 1: Bạn hãy vào trang download Oracle để tải về, bạn cần tạo một tài khoản để đăng
nhập thì
mới tải được. Hãy chắc chắn rằng bạn tải cả hai file Part 1 và Part2.

c
Bước 2: Giải nén hai file vừa tải về với tên là winx64_12102_database_1of2.zip và
winx64_12102_database_2of2.zip. Sau khi giải nén xong chúng ta sẽ có 2 folder tương ứng

Bước 3: mở thư mục winx64_12102_database_2of2 và tìm đến folder database và copy tất
cả các
file và folder ở đây sang thư mục winx64_12102_database_1of2.
9

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

Bước 4: Trong các file bạn vừa copy sang có file setup.ext, hãy nhấn double vào đó để bắt
đầu cài
đặt.

TẢI để
Bước 5: Hãy chờ một vài giây BẢN
hệĐẦY
thốngĐỦ
bắt(.PDF)
đầu cài đặt, lúc(37
nàytrang)
bạn sẽ thấy
trang Configure
Security Updates.

10

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

Bước 6: Hãy nhập email của bạn vào, sau đó nó sẽ xuất hiện một ơ checkbox, bạn hãy bỏ
dấu
check đó đi, nếu không bạn sẽ nhận các email về tin tức của Oracle gửi trong tương lai.

Bước 7: Chọn Create and configure a database và click Next.

11

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

Bước 8: Chọn Desktop class và click Next.

Bước 9: Chọn Create New Windows User, nhập Username và Password sau đó click Next.

12

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

Bước 10: Nhập mật khẩu mới cho administrative gồm 8 ký tự trong đó phải có vừa chữ vừa
số.

Bước 11:Chờ một vài giâyTẢI BẢN


để hệ ĐẦY
thống ĐỦ
tạo, (.PDF)
sau (37 trang)
đó bạn click Next.
13

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

Bước 12: Quá trình cài đặt có thể mất một vài phút, bạn hãy chờ cho tới khi nó báo đã cài
xong.

Như vậy việc hướng dẫn xong cách cài đặt Oracle 12c trên máy tính của các bạn, việc cài đặt
này tương đối đơn giản, bạn chỉ cần làm theo các bước trong bài hướng dẫn là được.

III.

Quản trị người dùng


14

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

1. Truy xuất Oracle


Có ít nhất 4 tool để truy xuất sử dụng Oracle:
 Oracle SQL*Plus
 Command Prompt
 Oracle iSQL*Plus
 Oracle SQL Developer (theo đánh giá là dễ sử dụng vì có giao diện)

Đăng nhập với user-name: system, password như lúc cài Oracle (thường để là 123456 cho
dễ

nhớ). Nhớ đây là tài khoản admin, cứ nhớ đây là tài khoản admin hệ thống
Sau khi đã log in vào hệ thống, mỗi khi muốn log out/log in chuyển qua các tài khoản khác, ta
dùng các lệnh sau: TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
 Log in vào 1 account: CONNECT <username>/ hoặc CONNECT
<username>
 Log in vào tài khoản SYS: CONNECT SYS/ AS SYSDBA hoặc CONNECT /
AS SYSDBA (dùng câu này với điều kiện đang ở trong tài khoản có quyền administration
của Windows)
 Log out khỏi 1 account: DISCONNECT
Có thể thay CONNECT bằng CONN. Khi muốn đổi account, chỉ cần gõ lệnh log in vào
account
khác, không cần phải gõ lệnh log out.

2. Quản lý user
Một CSDL Oracle được chia thành những đơn vị lưu trữ luận lý được gọi là các tablespace,
nhằm mục đích gom nhóm các cấu trúc luận lý có liên quan với nhau.

15

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

CSDL này có 2 tablespace SYSTEM và USERS


Mỗi tablespace này chứa một hoặc nhiều các datafile. Như ở trên Tablespace SYSTEM chứa
2
datafile là DATA1.ORA và DATA2.ORA.
Datafile là các cấu trúc vật lý tương thích với hệ điều hành bên dưới, dùng để lưu trữ dữ liệu
của các cấu trúc luận lý trong tablespace chứa nó. Kích thước tổng cộng của các datafile
bằng kích
thước lưu trữ tổng cộng của tablespace đó

Một tablespace này chứa 2 datafile


Có thể thấy rằng: các đối tượng trong tablespace có thể nằm trên vài datafile ví dụ như đối

tượng table (giữa) được lưu trên 2 datafile.


Có 2 loại tablespace: TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
 System tablespace:
 Mọi CSDL Oracle đều có 2 system tablespace là SYSTEM và SYSAUX được tạo ra
một cách tự động
 Chứa thông tin về các data dictionary views, các định nghĩa của stored procedures,
packages, và các database triggers dưới dạng PL/SQL program units, SYSTEM
rollback segment,… có thể được hiểu nơm na là dữ liệu học thuật của Oracle, người
kỹ thuật là người chủ yếu can thiệp vào cái này.
 Chú ý: Không nên chứa dữ liệu người dùng trong loại tablespace này mặc dù có thể
16

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


 Non-system tablespace: Dùng để chứa các loại dữ liệu còn lại, đặc biệt là các dữ liệu của
người dùng (như name, age, job, status,…)
Một cách phân loại khác của tablespace:
 Temporary tablespace: được sử dụng để dành riêng cho các thao tác sắp xếp dữ liệu.
 Permanent tablespace: Các tablespaces không phải là temporary tablespaces được gọi là
các
permanent tablespaces và nó được sử dụng để lưu trữ dữ liệu trong database.
Cần biết thêm 1 khái niệm khác là Schema
là một tập hợp các đối tượng cơ sở dữ liệu (vd: table, view, index,…)
Mỗi schema được sở hữu bởi một user và có cùng tên với user. Khơng có mối quan hệ nào
giữa
schema và tablespace ↔ các đối tượng thuộc 1 schema có thể nằm trên các tablespace khác
nhau và
1 tablespace có thể chứa các đối tượng thuộc nhiều schema khác nhau.

2.1.

Tạo mới User


Tạo mới 1 user với user tên là “usera” và mật khẩu là “123456” với câu lệnh như sau:

TẢI BẢN BY
CREATE USER usera IDENTIFIED ĐẦY ĐỦ (.PDF)
123456; (37 trang)
Một số phiên bản Oracle cũ với cú pháp như trên sẽ ok, còn những version mới (hiện tại là
12C)
thì sẽ báo lỗi ORA-65096: invalid common user or role name. Để khắc phục thì cần phải thêm
tiền tố C## hay c## đứng trước tên user. Cú pháp đầy đủ như sau:
CREATE USER c##usera IDENTIFIED BY 123456;
hoặc có cách khác là set tham số "_oracle_script"=true, như vậy sẽ không cần tiền
tố c## hay C## trước user ID. Cú pháp đầy đủ như sau:
alter session set "_ORACLE_SCRIPT"=true;
create user usera identified by 123456;
Ngồi ra, ta có thể quy định về default tablespace, temporary tablespace, quota trên các
tablespace, thời hạn hiệu lực của password,… ngay trong câu lệnh tạo user trên hoặc sẽ chỉ
định cụ
thể về sau.
Hiển thị tablespace của user vừa mới tạo với câu lệnh
SELECT default_tablespace, temporary_tablespace
FROM dba_users
WHERE username='USERA'; //user id phải viết hoa mới được

17

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


Nhưng logout user ‘system’ và log in bằng user vừa mới tạo ở trên connect usera/123456 sẽ
báo lỗi Ora-01045: user SALAPATI lacks CREATE SESSION privilege; logon denied
Lý do: user vừa mới tạo chưa được cấp quyền cho phép kết nối đến database. Để user vừa
mới
tạo có thể login được, ta phải login vào user ‘system’ như ban đầu và cấp quyền grant
session với cú
pháp sau
grant create session to USERA; // kết quả 'Grant succeeded'
Khi user mới được tạo ra, nếu ta không cấp các quyền tạo các loại object (table, index,…) thì
user đó khơng thể tạo được các object. Tùy thuộc vào nhu cầu của từng user, ta chỉ nên cấp
những

TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)


quyền cần thiết chứ không nên cấp dư. Thử cấp quyền tạo table object cho user:
GRANT CREATE TABLE TO usera;
Nhưng khi dùng tài khoản “usera” tạo mới table CREATE TABLE student (name
VARCHAR2(30)); thì sẽ báo lỗi ORA-01950: no privileges on tablespace 'USERS' vì chưa có
quota.
Một điều kiện bắt buộc khác để user có thể tạo được các object là ta phải cấp quota cho user
trên các tablespace tương ứng. Một user có thể được cấp quota sử dụng trên 1 hoặc nhiều
tablespace. Quota có thể limited hoặc unlimited.
ALTER USER usera QUOTA 100M ON users;
 Nếu muốn user có thể sử dụng tối đa 1 tablespace nào đó thì dùng cú pháp sau:
ALTER USER usera QUOTA UNLIMITED ON users;
Có “quota” rồi, giờ đã có thể tạo bảng mới. Vì một user có thể được cấp quota trên
nhiều tablespace khác nhau, nên khi tạo các đối tượng, user có thể chỉ định cụ thể
tablespace mà
mình muốn tạo đối tượng trên đó. Nếu khơng chỉ định, hệ thống sẽ tự động tạo trên default
tablespace của user đó.
CREATE TABLE student (name varchar(30));
Nếu muốn user có thể tạo object trên bất kỳ tablespace nào thì cấp quyền sau:
GRANT UNLIMITED TABLESPACE TO usera;
Có thể xem thơng tin về quota được cấp cho các user thông qua view DBA_TS_QUOTAS
SELECT tablespace_name, username, bytes
FROM DBA_TS_QUOTAS;
Có thể gán tablespace lúc tạo mới user, cú pháp một cách như sau:
CREATE USER usera IDENTIFIED BY 123456
TEMPORARY TABLESPACE TEMPTBS01
DEFAULT TABLESPACE USERS
QUOTA 500M ON USERS;
18

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

TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)


2.2 Thay đổi các đặc tính của user
Thay đổi password: ALTER USER usera IDENTIFIED BY 123456789; hoặc ALTER
USER usera IDENTIFIED BY 123456789 REPLACE 123456;
Thời hạn của password:
 Ta có thể làm cho 1 password hết hạn bằng 2 cách: ALTER USER usera IDENTIFIED
BY 123456 PASSWORD EXPIRE; Hoặc ALTER USER usera PASSWORD EXPIRE;
 Ta cũng có thể bắt buộc password expire ngay khi tạo mới một user: CREATE USER paris
IDENTIFIED BY 123456 PASSWORD EXPIRE;
Trạng thái account:
 Ta có thể thay đổi trạng thái tài khoản (lock/unlock) của một user để cho phép/khơng cho
phép user đó truy xuất vào CSDL ALTER USER usera ACCOUNT LOCK; hay ALTER
USER usera ACCOUNT UNLOCK;
 Xem trạng thái tài khoản (Account Status) của tất cả các user: SELECT username,
account_status FROM dba_users;

2.3 Xóa User


DROP USER usera;
Lưu ý: lệnh DROP USER khơng chỉ xóa user mà cịn xóa tất cả object thuộc về user đó. Khi
user đã có object thì phải dùng thêm tùy chọn CASCADE:
DROP USER salapati CASCADE;

3.

User Profile

Profile là một tập hợp có tên của các giới hạn tài nguyên, được gán cho một hay nhiều user
trong CSDL Oracle.
Mục đích:
 cung cấp một cách quản lý dễ dàng việc giới hạn tài nguyên

 giúp giới hạn việc sử dụng quá mức các tài ngun của tồn hệ thống
TẢIpassword
 quản lý các chính sách về BẢN ĐẦY ĐỦ (.PDF) (37 trang)
Trong một CSDL có thể tạo nhiều profile, một profile mặc định (tên là DEFAULT) sẽ được
dùng để gán cho những user không được gán profile một cách tường minh. Tuy nhiên, các
giá trị
mặc định đều được thiết lập là “unlimited”
Các loại tài nguyên có thể giới hạn trong profile:
 Số lượng các session đồng thời mà user có thể thực hiện.
 Thời gian xử lý CPU cho một session của user đó hoặc cho một cuộc gọi (call) tới Oracle
bởi
1 câu lệnh SQL.
19

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


 Số lần đọc luận lý I/O cho một session của user đó hoặc cho một cuộc gọi (call) tới Oracle
bởi 1 câu lệnh SQL.
 Lượng thời gian nhàn rỗi cho session của user.
 Lượng thời gian connect cho một session.
 Các quy định về password (số lần cố gắng login thất bại, thời gian hiệu lực của một
password,…)
Trên chỉ là một số loại tài nguyên tiêu biểu và hay dùng có thể giới hạn trong profile. Để tìm
hiểu thêm, trong phần resource_parameters trong tài liệu Oracle sẽ nêu ra đầy đủ hơn
3.1.

Tạo mới Profile

Để hệ thống có thể thi hành việc ràng buộc các giới hạn tài nguyên, ta cần enable tham số hệ
thống RESOURCE_LIMIT, bởi tham số RESOURCE_LIMIT có giá trị mặc định là FALSE
ALTER SYSTEM SET RESOURCE_LIMIT = TRUE;
1 ALTER SYSTEM SET RESOURCE_LIMIT = TRUE;
Để tạo được PROFILE, cần có quyền CREATE PROFILE.

Tạo mới 1 profile bằng câu lệnh CREATE PROFILE có tên profile là ‘app_user’.
CREATE PROFILE app_user TẢILIMIT
BẢN ĐẦY ĐỦ (.PDF) (37 trang)
FAILED_LOGIN_ATTEMPTS 3 -- số lần cố gắng login thất bại
SESSIONS_PER_USER UNLIMITED
CPU_PER_SESSION UNLIMITED
CPU_PER_CALL 3000
CONNECT_TIME 45 -- thời gian connect cho một session giới hạn trong vòng 45
phút
IDLE_TIME -- Lượng thời gian nhàn rỗi cho session của user
LOGICAL_READS_PER_SESSION DEFAULT
LOGICAL_READS_PER_CALL 1000;
3.2. Gán profile
Gán profile ngay lúc tạo user

 CREATE USER usera IDENTIFIED BY 123456


 TEMPORARY TABLESPACE TEMPTBS01
 DEFAULT TABLESPACE USERS
 GRANT QUOTA 500M ON

20

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


 USERS PROFILE app_user; -- gán profile tên 'app_user' ngay khi tạo usera
 User created
Khi tạo mới user, nếu khơng gán tường minh thì user sẽ được gán profile mặc định. Sau khi
tạo
mới user bằng lệnh, kiểm tra ngay ‘profile’
CREATE USER userb IDENTIFIED BY 123456; -- tạo user
SELECT profile FROM dba_users WHERE username = 'USERB'; -- kiểm tra

Xem thông tin về profile mặc định


1
TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
SELECT DISTINCT resource_name, limit

FROM dba_profiles

WHERE profile='DEFAULT';

Gán profile app_user cho user có username là USERB:


ALTER USER USERB
PROFILE app_user;
3.2 Thay đổi profile
Thay đổi profile app_user thành ‘user có thể login thất bại 4 lần’
1

ALTER PROFILE app_user LIMIT

FAILED_LOGIN_ATTEMPTS 4;

3.3 Xóa profile


DROP PROFILE app_user CASCADE;

IV.

Quản trị thành phần:

1. Tạo bảng đối tượng


Một bảng đối tượng là mộtTẢI
kiểuBẢN
bảngĐẦY
đặc ĐỦ
biệt (.PDF) (37 trang)
lưu giữ các đối tượng. Để tạo bảng đối
tượng ta dùng CREATE TABLE. Ta có thể dễ dàng chèn thêm, cập nhật, xóa hay truy vấn đối
tượng bằng câu lệnh SQL như: INSERT, UPDATE, DELETE, SELECT... Bảng đối tượng có
thể có dạng:
- Bảng dữ liệu mà có các cột có kiểu Object
-Bảng dữ liệu từ một kiểu Object. Các cột của bảng gồm các thuộc tính của đối tượng, các
dòng của bảng xem như là một đối tượng.
Làm việc với kiểu Object mạnh hơn nhiều so với kiểu dữ liệu thông thường. Dữ liệu được
lưu trong bảng khơng đơn thuần chỉ là những cột hay dịng dữ liệu tĩnh, mà là một đối tượng
biết cách ứng xử và thể hiện dữ liệu do chúng bao bọc.
Ví dụ:
21

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


 Tạo bảng đối tượng KhachHang
CREATE OR REPLACE TYPE KhachHang AS OBJECT (
tenDangNhap VARCHAR2(10),
matKhau VARCHAR2(10),
hoTen VARCHAR2(30),
email VARCHAR2(50));
 Tạo bảng KhachHang_T
CREATE TABLE KhachHang_T OF KhachHang
 Hiển thị các khách hàng có trong bảng KhachHang_T
SELECT * FROM KhachHang_T
//Chèn khách hàng vào bảng KhachHang_T

INSERT INTO KhachHang_T


values(‘hoa’,’hoa’,’Nguyễn Thị Hoa’,‘’);
 Xóa khách hàng trong bảng KhachHang_T
DELETE FROM KhachHang_T WHERE tenDangNhap = ‘hoa’;
 Sửa thông tin khách hàng trong bảng
KhachHang_TUPDATE KhachHang_T SET email = ‘’
TẢI BẢN ĐẦY ĐỦ (.PDF)
WHERE tenDangNhap = ‘hoa’; (37 trang)
2. Bảng lồng (Nested table)
Bảng lồng nhau là một tập hợp những phần tử dữ liệu khơng có thứ tự, có cùng kiểu dữ
liệu. Định nghĩa kiểu bảng lồng không phân bổ khơng gian. Nó xác định kiểu dữ liệu mà bạn
có thể sử dụng làm:
Kiểu dữ liệu cột của bảng quan hệ.
Thuộc tính của kiểu đối tượng
Biến, tham đối PL/SQL hoặc hàm trả về kiểuVới bảng lồng, các thành phần thực sự lưu
trữ trong bảng riêng (bảng lồng). Nếu kiểu thành phần là kiểu định nghĩa sẵn, bảng lồng có
một cột với kiểu này, hay nếu kiểu thành phần là kiểu đối tượng, bảng có thể xem như là
bảng
nhiều cột, mỗi cột cho mỗi thuộc tính của kiểu đối tượng. Bảng lồng chứa thêm một cột định
nghĩa hàng bảng cha hay đối tượng mà mỗi thành phần thuộc về.
Có thể sử dụng bảng lồng định nghĩa cho một thuộc tính của kiểu đối tượng
Các kiểu nhóm - gồm các thành phần có cùng kiểu - hỗ trợ trong Oracle là Varray, bảng
lồng. Oracle mơ hình hố kiểu nhóm như là quan hệ tụ hợp, hợp thành, thuộc tính đa trị trong
đối tượng phức hợp
Ví dụ:
 Định nghĩa quan hệ tụ hợp giữa kiểu đối tượng DonHang và DonHangCT sử dụng bảng
lồng
CREATE OR REPLACE TYPE DonHangCT AS OBJECT (
22

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

soLuong NUMBER, maHangRef ref MatHang);


CREATE TYPE DonHangCT_T AS TABLE OF DonHangCT;
CREATE OR REPLACE TYPE DonHang AS OBJECT (
maDH NUMBER, ngayMua DATE, ngayGiao DATE, tenDangNhapRef ref
KhachHang, dHCT DonHangCT_T);
CREATE TABLE DonHang_T OF DonHang NESTED TABLE dHCT STORE
AS DSDHCT;
TẢIliệu
 Thêm dữ liệu, cập nhật dữ BẢNvà ĐẦY ĐỦliệu
xoá dữ (.PDF) (37 trang)
từ bảng DonHang_T
INSERT INTO DonHang_T VALUES
(1,sysdate, to_date(‘9/6/2005’,’dd/mm/yyyy’), null, DonHangCT_T
(DonHangCT (1,null),DonHangCT(3,null)));
UPDATE DonHang_T SET tenDangNhapRef = (SELECT REF(k) FROM
KhachHang_T k WHERE k.hoTen = ‘Nguyen Thi Thu’ );
UPDATE TABLE (SELECT dHCT FROM DonHang_T WHERE maDH=1)
SET
maHangRef = (SELECT ref(h) FROM MatHang_T m where
m.maHang=1);
DELETE FROM DonHang_T where maDH = 1;
3. Kiểu mảng (Varray Type)
Mảng là một tập hợp có thứ tự của những phần tử dữ liệu. Tất cả những phần tử của
một mảng thuộc cùng kiểu dữ liệu. Mỗi phần tử có một chỉ mục là số tương ứng với vị trí của
phần tử trong mảng. Số phần tử trong một mảng là kích thước của mảng. Oracle cho phép
các
mảng có kích thước khả biến, đó là lý do tại sao chúng được gọi là VARRAY.
Tạo một kiểu mảng khơng phân bổ khơng gian. Nó xác định kiểu dữ liệu mà bạn có thể
sử dụng làm:
- Kiểu dữ liệu cột của một bảng quan hệ
- Một thuộc tính kiểu đối tượng
- Biến, tham đối PL/SQL hoặc hàm trả về kiểu
Ví dụ:
Định nghĩa mảng DienThoai kiểu VARRAY

CREATE OR REPLACE TYPE DienThoai AS VARRAY(3) OF


VARCHAR2(20);
Kiểu mảng DienThoai có số phần tử khơng nhiều hơn 3, có kiểu dữ liê ̣u phần tử là
varchar2(20).
Ví dụ:
 Định nghĩa kiểu đối tượng KhachHang, DiaChi
 Quan hệ hợp thành giữa kiểu đối tượng KhachHang và kiểu đối tượng DiaChi
 Quan hệ hợp thành giữa kiểu đối tượng KhachHang và kiểu VARRAY DienThoai
23 TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
Hệ quản trị cơ sở dữ liệu Oracle
CREATE OR REPLACE TYPE DiaChi AS OBJECT (
soNha VARCHAR2(15), duong VARCHAR2(25), thanhPho VARCHAR2(25),
quocGia VARCHAR2(25));
CREATE OR REPLACE TYPE KhachHang AS OBJECT
(tenDangNhap VARCHAR2(10), matKhau VARCHAR2(10), hoTen VARCHAR2(30),
diaChis DiaChi, dienThoais DienThoai, email VARCHAR2(50));
CREATE TABLE KhachHang_T OF KhachHang;

Chèn dữ liệu vào bảng KhachHang_T


INSERT INTO KhachHang_T VALUES (‘hoa’, ’hoa’, ’Nguyen Thi Hoa’,
DiaChi(‘202’,’Le Loi’,’Da nang’,’Viet Nam’), DienThoai(‘750666’, ‘123456’), null);

Truy vấn dữ liệu từ bảng KhachHang_T


SELECT hoTen, k.diaChis.soNha, k.diaChis.duong, k.diaChis.thanhPho,
k.diaChis.quocGia, dt.* FROM KhachHang_T k, table(k.dienThoais) dt
WHEREtenDangNhap = ‘hoa’;

 Cập nhật dữ liệu từ bảng KhachHang_T


UPDATE KhachHang_T SET email = ‘’
WHERE tenDangNhap = ‘hoa’
 Xóa dữ liệu từ bảng KhachHang_T
DELETE FROM KhachHang_T where tenDangNhap = ’hoa’;
4. Kiểu tham chiếu Ref (Reference)
Trong mơ hình quan hê ̣, ta đã sử dụng kỹ thuật tham chiếu dưới hình thức thiết lập các
khóa ngoại để liên kết các bảng với nhau. Nhưng với mô hình đối tượng thì việc tham chiếu
khơng cần đến các khóa, bạn chỉ cần cho biết một thuộc tính nào đó của đối tượng mang
kiểu
TẢI một
con trỏ (REF) tham chiếu đến BẢNđối
ĐẦY ĐỦkhác.
tượng (.PDF) (37
Thậm chí có thểtrang)
xây dựng những kiểu
Object mang tính đệ quy (Recursive Object) nghĩa là bản thân Object mang những thuộc tính
có kiểu con trỏ trỏ đến chính nó.
Oracle mơ hình hố kiểu tham chiếu REF như là quan hệ kết hợp, quan hệ kế thừa. Cơ
chế tham chiếu và dùng chung (Sharing) các đối tượng dưới hình thức con trỏ (By Ref) sẽ
nhanh hơn nhiều so với cơ chế tham chiếu theo trị (By Value) như trong mơ hình quan hệ.
Với quan hệ kết hợp, trong kiểu đối tượng bên nhiều sẽ tạo thuộc tính kiểu tham chiếu
đến kiểu đối tượng bên 1
Với quan hệ kế thừa, trong kiểu đối tượng con, sẽ tạo thuộc tính kiểu tham chiếu đến
kiểu đối tượng cha
Ví dụ 1:
Định nghĩa kiểu đối tượng LoaiHang, MatHang
Quan hệ kết hợp 1 nhiều 1 chiều giữa kiểu đối tượng LoaiHang và MatHang
24

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


CREATE OR REPLACE TYPE LoaiHang AS OBJECT ( maLoai
NUMBER, tenLoai VARCHAR2(25), hinh VARCHAR2(50));
CREATE TABLE LoaiHang_T OF LoaiHang;
CREATE OR REPLACE TYPE MatHang AS OBJECT ( maHang

NUMBER, tenHang VARCHAR2(50), moTa VACHAR2(2000), hinh VARCHAR2(50),


donGia NUMBER, giamGia NUMBER, maLoaiRef ref Loaihang);
CREATE TABLE MatHang_T OF MatHang;
 Truy xuất đối tượng được tham chiếu bằng một REF được gọi là giải tham chiếu. Oracle
cung
cấp toán tử DEREF để thưc hiện điều này.
Truy vấn bảng MatHang_T
SELECT tenHang, moTa, DEREF(maLoaiRef).tenLoai
FROM MatHang_T WHERE DEREF(maLoaiRef).maLoai = 1;
 Chèn, cập nhật dữ liệu vào bảng MatHang_T
INSERT INTO MatHang_T VALUES(1, ‘Giường kiểu Hoa Cúc La Mã’,
TẢI trổ
‘Những bông hoa được chạm BẢNrất ĐẦY
đẹp’, ĐỦ (.PDF)450000, 0,(37
’hinh.jpg’, trang)
null);
UPDATE MatHang_T SET maLoaiRef =
(SELECT REF(l) FROM LoaiHang_T l WHERE l.maLoai = 1)
WHERE maHang = 2;
Xóa dữ liệu từ bảng MatHang_T
DELETE FROM MatHang_T WHERE maHang = 2;
Ví dụ 2:
 Quan hệ kế thừa giữa kiểu đối tượng VeChon kế thừa LoaiVe
CREATE OR REPLACE TYPE VeChon AS OBJECT (veChonid NUMBER,
tangGia NUMBER, loaiVeRef ref LoaiVe);
CREATE TABLE VeChon_T OF VeChon;
Khi đối tượng tham chiếu bị hủy bỏ thì thuộc tính tham chiếu đến đối tượng khơng có
thực, trường hợp này là dangling. Ví dụ khi bạn xóa đi một loại hàng trong bảng LoaiHang_T
thì các đối tượng tương ứng trong bảng MatHang_T đều trỏ đến một loại hàng khơng có
thực,
để tránh trường hợp này bạn có thể sử dụng lệnh UPDATE đặt các thuộc tính tham chiếu về
null như sau:
UPDATE MatHang_T SET maLoaiRef = null WHERE maLoaiRef is dangling;
5. Câu lệnh tạo VIEW
CREATE VIEW view_name as
SELCET COLUMNS FROM TABLES WHERE conditions;

 Câu lệnh update:

Để cập nhật View thì bạn sẽ dùng lệnh: CREATE OR REPLACE VIEW
25

Tài liệu liên quan


TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)
Tìm hiểu về kĩ thuật phân cụm Xây dựng hệ thống bán hàng tại
dữ liệu trong hệ quản trị cơ s… công ty VINDA bằng hệ quản t…
52 896 0 83 876 4

Tài liệu Bài thực hành hệ quản Tài liệu Bài thực hành hệ quản
trị cơ sở dữ liệu số 3 docx trị cơ sở dữ liệu số 4 doc

3 2 22 1 1 1

Bài tập môn hệ quản trị cơ sở bài tập lớn hệ quản trị cơ sở dữ
dự liệu '''' Chương trình quản … liệu :Đề tài: Quản Lý Bán Hàn…
70 1 8 47 10 46

TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)


bài tập lớn hệ quản trị cơ sơ dữ BÀI TẬP LỚN: Hệ Quản Trị Cơ
liệu : Đề Tài: Quản Lý Khách… Sở Dữ Liệu : đề tài: Quản Lý…

37 3 2 21 3 0

BÀI TẬP LỚN: HỆ QUẢN TRỊ CƠ bài tập lớn :hệ quản trị cơ sỏ dữ
SỞ DỮ LIỆU ĐỀ TÀI: Quản lý… liệu đề tài : quản lý tiền gửi…
62 5 17 36 1 2

Copyright © 2020 123Doc. Design by 123DOC

TẢI BẢN ĐẦY ĐỦ (.PDF) (37 trang)

You might also like