1. Trang chủ
  2. » Công Nghệ Thông Tin

Hệ quản trị cơ sở dữ liệu. File đính kèm gồm slide bài giảng + Source Thực hành

66 464 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 66
Dung lượng 802,04 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Cấp quyềnCấp quyền authorization: Là sự gán quyền cho một người dùng hay chương trình để có thể truy cập vào một Một số HQTCSDL sử dụng các định danh người dùng riêng, một số sử dụng các

Trang 1

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

ThS TR Ầ N NGÂN BÌNH ThS ĐẶ NG QU Ố C VI Ệ T

TS NGUY Ễ N THÁI NGHE

2012

TR ƯỜ NG ĐẠ I H Ọ C C Ầ N TH Ơ

KHOA CÔNG NGH Ệ THÔNG TIN & TT

Trang 2

Ch ươ ng

Ch ươ ng 1 AN TOÀN D Ữ LI Ệ U

Trang 4

An toàn trong CSDL

An toàn trong CSDL là sự bảo vệ CSDL khỏi những

đe dọa có chủ ý hay vô tình thông qua các biện pháp

có sử dụng máy tính hoặc không có sử dụng máy tính

Việc xem xét an toàn không chỉ áp dụng cho dữ liệu

Trang 5

trở đ/v người dùng).

Trang 7

Cấp quyền

Cấp quyền (authorization): Là sự gán quyền cho một

người dùng hay chương trình để có thể truy cập vào một

Một số HQTCSDL sử dụng các định danh người dùng riêng, một số sử dụng các định danh người dùng của hệ

điều hành bên dưới

Trang 8

Ch ủ s ở h ữ u có m ọ i quy ề n h ạ n (privileges) trên đố i t ượ ng c ủ a mình

và có th ể gán quy ề n trên đố i t ượ ng đ ó cho ng ườ i khác.

HQTCSDL ghi nh ậ n t ấ t c ả các quy ề n đ ã gán cho ng ườ i dùng nào

và gán b ở i ai; để có th ể duy trì đ úng đắ n t ậ p quy ề n trên ng ườ i

dùng khi quy ề n đượ c g ỡ b ỏ

Các HQTCSDL có th ể h ỗ tr ợ nhi ề u m ứ c c ấ p quy ề n khác nhau

(m ứ c ng ườ i dùng ho ặ c nhóm ng ườ i dùng).

Đị nh danh ng ườ i dùng th ườ ng có độ ư u tiên cao h ơ n đị nh danh nhóm.

Trang 9

Ma Tr ậ n n Đ Đ i i ề u Khi ể n Truy C ậ p

Để cài đặ t vi ệ c đ i ề u khi ể n truy c ậ p, các HQTCSDL s ử d ụ ng các ma

tr ậ n đ i ề u khi ể n truy c ậ p.

M ỗ i lo ạ i quy ề n s ẽ đượ c g ắ n v ớ i m ộ t giá tr ị nh ị phân:

READ UPDATE INSERT DELETE ALL

0001 0010 0100 1000 1111

Quy ề n c ủ a đị nh danh trên 1 đố i t ượ ng s ẽ là t ổ ng các giá tr ị nh ị

phân c ủ a các quy ề n mà đị nh danh đ ó có.

Quy ề n c ủ a t ấ t c ả các đị nh danh trên m ộ t đố i t ượ ng c ủ a CSDL s ẽ đượ c th ể hi ệ n trên ma tr ậ n đ i ề u khi ể n truy c ậ p (access control

Trang 10

SQL: L ệ nh GRANT nh GRANT đ đ ể c ấ p quy ề n

Các quyền định nghĩa bởi chuẩn ISO: SELECT,

INSERT, UPDATE, DELETE, REFERENCES, USAGEGán quyền trên đối tượng cho người dùng bằng lệnh:

GRANT {danh_sách_quyền | ALL PRIVILEGES}

ON tên_đối tượng

TO {danh_sách_định_danh_được_cấp | PUBLIC}

[WITH GRANT OPTION]

Tùy chọn WITH GRANT OPTION cho phép người dùng

được cấp tiếp tục cấp quyền cho người khác

Trang 11

SQL: L ệ nh REVOKE nh REVOKE đ đ ể thu h ồ i quy ề n

Lệnh REVOKE được dùng để gỡ bỏ quyền trên đối

tượng khỏi người dùng đã được cấp:

REVOKE [GRANT OPTION FOR] {ds_quyền | ALL

PRIVILEGES} ON đối_tượng

FROM {danh_sách_định_danh_được_cấp | PUBLIC} [RESTRICT | CASCADE]

RESTRICT: m ặ c đị nh, s ẽ ng ư ng th ự c thi l ệ nh Revoke n ế u k ế t

qu ả câu l ệ nh làm ả nh h ưở ng đế n các đố i t ượ ng ph ụ thu ộ c.

CASCADE: Các đố i t ượ ng ph ụ thu ộ c s ẽ b ị xóa ho ặ c g ỡ ra.

Trang 12

Bằng cách này ta sẽ đảm bảo tính an toàn cho dữ liệu

tốt hơn là gán quyền trên nhiều bảng cơ sở

Trang 13

SQL: L ệ nh Create View

L ệ nh dùng để t ạ o view:

CREATE VIEW tên_view [(tên_cột [, ])]

AS câu_truy_vấn

[WITH [CASCADED | LOCAL] CHECK OPTION]

Các dòng đ i vào và ra kh ỏ i view đượ c g ọi là các dòng di c ư

(migrating rows).

WITH CHECK OPTION để đả m b ả o r ằ ng các dòng không di c ư ra

kh ỏ i view qua các thao tác insert và update trên view (ngh ĩ a là, n ế u

m ộ t dòng không th ỏ a đ i ề u ki ệ n WHERE trong câu truy v ấ n c ủ a

view thì dòng đ ó s ẽ không đượ c c ậ p nh ậ t vào b ả ng c ơ s ở ).

N ế u có CASCADE thì vi ệ c đả m b ả o này c ũ ng áp d ụ ng trên các

view đị nh ngh ĩ a trên view này ( đ ây là ch ế độ m ặ c đị nh).

N ế u có LOCAL thì vi ệ c đả m b ả o này c ũ ng áp d ụ ng trên các view

đị nh ngh ĩ a trên view này tr ừ khi dòng đ ó c ũ ng di c ư kh ỏ i view hay table n ề n c ủ a view này.

Trang 14

Ví d ụ WITH CHECK OPTION

CREATE VIEW manager3_staff AS SELECT * FROM

high_salary WHERE bno = ‘B3’

CREATE VIEW high_salary AS SELECT * FROM low_salary

WHERE salary > 10000 WITH LOCAL CHECK OPTION

CREATE VIEW low_salary AS SELECT * FROM staff

WHERE salary > 9000

UPDATE manager3_staff SET salary = 9500

Trang 15

SQL: L ệ nh DROP VIEW

Lệnh dùng để xóa view

DROP VIEW tên_view [RESTRICT | CASCADE]

N ế u có các đố i t ượ ng khác tham chi ế u view này thì tr ườ ng h ợ p có:

RESTRICT: l ệ nh này s ẽ không đượ c th ự c hi ệ n

CASCADE: l ệ nh này s ẽ xóa luôn c ả các đố i t ượ ng kia.

Một số giới hạn trên view

View có thể cập nhật (updatable view)

Trang 16

Thu ậ n l ợ i và b ấ t l ợ i c ủ a view

Thuận lợi

Độ c l ậ p d ữ li ệ u

Currency (TT trong view luôn là TT hi ệ n t ạ i)

Nâng cao tính an toàn

Trang 17

Sao L ư u v

Sao L ư u v à Ph ụ c H ồ i

Sao l ư u (backup) là quá trình sao chép CSDL và các t ậ p tin nh ậ t ký (có th ể k ể c ả ch ươ ng trình) vào các thi ế t b ị l ư u tr ữ d ự phòng m ộ t cách đị nh k ỳ

Ghi nh ậ t ký (journaling) là quá trình ghi nh ậ n và duy trì m ộ t t ậ p tin

nh ậ t ký (log file hay journal) v ề t ấ t c ả các thay đổ i đ ã th ự c hi ệ n trên CSDL để có th ể ph ụ c h ồ i m ộ t cách hi ệ u qu ả khi có s ự c ố

Đ i ể m ki ể m tra (checkpoint): Là đ i ể m di ễ n ra s ự đồ ng b ộ gi ữ a CSDL

và t ậ p tin nh ậ t ký giao d ị ch T ạ i th ờ i đ i ể m này, t ấ t c ả các vùng đệ m

s ẽ đượ c ghi ra b ộ l ư u tr ữ th ứ c ấ p và m ộ t m ẫ u tin ki ể m tra s ẽ đượ c ghi vào trong nh ậ t ký.

Các k ỹ thu ậ t này s ẽ đượ c th ả o lu ậ n chi ti ế t h ơ n trong bài qu ả n lý giao d ị ch.

Trang 19

M ậ t hóa

M ậ t hóa (encryption) là s ự mã hóa d ữ li ệ u b ằ ng m ộ t gi ả i thu ậ t đặ c

bi ệ t làm cho d ữ li ệ u không th ể đọ c đượ c n ế u không có khóa gi ả i

B ấ t đố i x ứ ng (asymmetric): s ử d ụ ng các khóa khác nhau để mã và gi ả i

mã (các h ệ th ố ng m ậ t hóa khóa công c ộ ng – public key cryptosystems, RSA).

Trang 20

Công Ngh ệ RAID

RAID (Redundancy Array of Independent Disks): một dãy các đĩa độc lập để cải tiến độ tin cậy và tăng hiệu

suất hoạt động cho hệ thống

ng hi ệ u su ấ t bằng cách ‘tháo rời’ dữ liệu (data

stripping): chia dữ liệu thành các phần bằng nhau và

được phân phối cho nhiều đĩa một cách trong suốt

Tăng độ tin c ậ y bằng cách lưu thông tin lặp lại trên

nhiều đĩa sử dụng cơ chế chẵn lẻ (parity) hay cơ chế

sửa lỗi (error-correcting)

Việc chọn lựa mức RAID để cài đặt phụ thuộc vào bản

chất dữ liệu, chi phí, mức độ quan trọng, v.v.…

Trang 21

RAID 0 & RAID 1

RAID 0 – Không d ư th ừ a Vi ệ c chia d ữ li ệ u đượ c th ự c hi ệ n ở m ứ c

kh ố i => T ă ng t ố c độ truy xu ấ t cao nh ấ t

RAID 1: duy trì hai phiên b ả n d ữ li ệ u gi ố ng h ệ t nhau trên các đĩ a khác nhau => tin c ậ y nh ư ng đắ t ti ề n

RAID 0 + 1

Trang 22

RAID 2 & RAID 3

RAID 2 – chia DL theo bit và mã Hamming đượ c s ử d ụ ng nh ư là

c ơ ch ế d ư th ừ a để có th ể s ử a l ỗ i

RAID 3 – Chia DL theo byte và có 1 đĩ a ch ẵ n l ẻ Đ òi h ỏ i các đĩ a

ph ả i quay đồ ng b ộ , không đ áp ứ ng nhi ề u yêu c ầ u cùng lúc

Hai c ấ u hình này tr ở

nên l ỗ i th ờ i và không

còn s ử d ụ ng n ữ a

Trang 23

RAID 4 & RAID 5

RAID 4: chia DL theo kh ố i và có m ộ t đĩ a ch ẵ n l ẻ

RAID 5: chia DL theo kh ố i TT ch ẵ n l ẻ l ư u luân phiên trên các đĩ a

d ữ li ệ u.

RAID 4 không

ph ổ bi ế n

Trang 24

Các qui đị nh, b ướ c th ự c hi ệ n sao l ư u ph ả i đượ c mô t ả rõ ràng.

Thông tin v ề phiên b ả n sao l ư u ph ả i chính xác.

B ả n sao l ư u ph ả i đượ c l ư u tr ữ nhi ề u n ơ i.

N ơ i l ư u tr ữ các b ả n sao l ư u ph ả i đượ c đả m b ả o an toàn.

Ph ụ c h ồ i:

Quá trình này c ũ ng c ầ n ph ả i đượ c mô t ả rõ ràng

Ph ả i t ổ ch ứ c ki ể m th ử th ườ ng xuyên để đả m b ả o h ệ th ố ng có th ể ph ụ c

h ồ i n ế u có s ự c ố

Trang 25

Tránh nh ữ ng s ử a đổ i không đượ c phép trên ch ươ ng trình.

C ấ p và qu ả n lý s ự truy c ậ p trên d ữ li ệ u.

B ả o đả m các t ư li ệ u là m ớ i nh ấ t.

Các t ậ p tin nh ậ t ký s ẽ đượ c xem xét k ỹ trong công tác ki ể m đị nh

để phát hi ệ n m ọ i ho ạ t độ ng b ấ t th ườ ng n ế u có.

Trang 26

Cài đặt và nâng cấp phần mềm hệ thống.

Ph ả i đ ánh giá m ọ i ả nh h ưở ng đế n d ữ li ệ u và ph ầ n m ề m hi ệ n t ạ i

tr ướ c khi nâng c ấ p.

Ph ả i lên k ế ho ạ ch hành độ ng rõ ràng

Thông th ườ ng, vi ệ c nâng c ấ p ph ả i di ễ n ra vào cu ố i tu ầ n.

Nh ữ ng thay đổ i trong phiên b ả n m ớ i có th ể ả nh h ưở ng đế n các

ch ươ ng trình đ ã đượ c vi ế t b ở i nh ữ ng l ậ p trình viên ứ ng d ụ ng.

Trang 27

Các biện pháp bảo vệ không sử dụng máy tính

Trang 29

tránh sự phá hoại hay sửa đổi các dữ liệu hợp pháp.

Trang 31

Ki ế n trúc ứ ng d ụ ng c ng c ơ ơ s s ở d ữ li ệ u

Mô hình Client / server Mô hình Multi-tier

Trang 32

Th ể hi ệ n CSDL (DB Instance)

Là sự kết hợp giữa SGA và các tiến trình nền

Trang 33

C ấ u trúc CSDL Oracle

Cấu trúc vật lý

Data Files

Control Files

Redo Log Files

Archived Redo Log

Segments Tablespaces

Trang 34

Data blocks, Extents & Segments

Trang 35

Tablespace thuchanh Database

Trang 36

Quan h ệ gi ữ a CT lu ậ n lý & v ậ t lý

Trang 37

Ba ph ươ ng ph

Add new datafile Create new tablespace

Extent Datafile

Trang 38

Schema và schema objects

Schema là m ộ t t ậ p h ợ p các đố i t ượ ng CSDL (database

object hoc schema object) thu ộ c v ề m ộ t ng ườ i dùng.

Schema objects: table, index, view, synonyms, stored procedure…

Trang 39

Data Dictionary

Là t ậ p h ợ p các b ả ng và khung nhìn (view).

L ư u tr ữ các thông tin v ề c ấ u trúc lu ậ n lý và v ậ t lý

c ủ a CSDL (ng ườ i dùng, quy ề n, c ấ u trúc b ả ng…) còn g ọ i là meta-data:

Thông tin ng ườ i dùng (quy ề n, vai trò…)

Trang 40

Oracle net

Là một middleware được cài đặt trên Oracle Client và

Oracle Database Server

Cho phép thiết lập phiên kết nối mạng từ một ứng dụng trình khách đến máy chủ CSDL

Phương thức kết nối thông dụng: TCP/IP, port 1521

Trang 41

alter database

open

Trang 43

Ng ư

Ng ư ờ i dùng m ặ c c đ đ ị nh

Sys / change_on_install và System / manager

Cả hai đều có quyền DBA

Sys là ch ủ sở hữu của CSDL và sở hữu các

bảng tự điển dữ liệu (TĐDL), có quyền

SYSDBA, vì thế có thể mở, tắt CSDL,

System ch ỉ là người quản trị có quyền, không

sở hữu TĐDL mà chỉ sở hữu các bảng tạo ra bởi Oracle nhưng không thuộc TĐDL.

Trang 44

T ạ o ng o ng ư ư ờ i dùng m ớ i

CREATE USER username

IDENTIFIED {BY password | EXTERNALLY}

[ DEFAULT TABLESPACE tablespace ]

[ TEMPORARY TABLESPACE tablespace ]

[ QUOTA {integer [K | M ] | UNLIMITED } ON

Trang 45

S ử a thông tin ng a thông tin ng ư ư ờ i dùng

ALTER USER username [ IDENTIFIED {BY password |

EXTERNALLY }]

ALTER USER username

[ DEFAULT TABLESPACE tablespace]

[ TEMPORARY TABLESPACE tablespace]

{[ QUOTA {integer [K | M] | UNLIMITED } ON tablespace

[ QUOTA {integer [K | M] | UNLIMITED } ON tablespace ] […] }; ALTER USER username ACCOUNT {LOCK|UNLOCK};

ALTER USER username PASSWORD EXPIRE;

DROP USER username

Xem thông tin ng ườ i dùng trong các view: DBA_USERS và

DBA_TS_QUOTAS

Trang 46

Qu ả n lý quy ề n

Có hai lo ạ i quy ề n:

Quyền đối tượng:

Là các quyền thao tác (như select, insert,

update,…) trên một đối tượng của CSDL như

table, view, procedure,…

Quyền hệ thống:

Là các quyền thao tác trên CSDL nhưng không

gắn với bất cứ đối tượng nào như create table,

create procedure,…

Trang 47

CREATE SESSION ALTER SESSION RESTRICTED SESSION

TABLESPACE

CREATE TABLESPACE ALTER TABLESPACE DROP TABLESPACE UNLIMITED TABLESPACE

Trang 48

M ộ t s ố l l ư ư u ý v u ý v ề quy ề n h ệ th ố ng

CREATE SESSION là quyền tối thiểu nhất của một user

để có thể kết nối vào CSDL

Các quyền như CREATE TABLE, CREATE

PROCEDURE, CREATE TRIGGER bao gồm cả các

quyền xoá các đối tượng đó

CREATE TABLE bao gồm các quyền CREATE INDEX

và ANALYZE Với quyền này, người dùng cần có đủ

quota trên tablespace hay phải được gán UNLIMITED TABLESPACE

Các quyền có kèm ANY nghĩa là có thể thực hiện quyền này trên bất cứ schema nào VD: quyền CREATE ANY TABLE

Trang 50

L ư u ý v

Người dùng được gán quyền a với tuỳ chọn WITH

ADMIN OPTION thì có thể tiếp tục gán quyền a đó cho

một người dùng khác, thậm chí với tùy chọn WITH

ADMIN OPTION

Người dùng nào có quyền hệ thống với ADMIN

OPTION đều có thể thu hồi quyền này từ bất kỳ người dùng nào

Tất cả các người dùng có quyền GRANT ANY ROLE

cũng có thể gán hay thu hồi bất kỳ quyền nào

Muốn gỡ bỏ ADMIN OPTION của 1 người dùng thì phải

gỡ bỏ quyền đó trước, sau đó gán lại mà không có

ADMIN OPTION

Trang 53

[WITH GRANT OPTION] ;

REVOKE { object_priv [, object_priv ] | ALL

[PRIVILEGES] }

ON [schema.]object

FROM {user|role|PUBLIC} [, {user|role|PUBLIC} ]

[CASCADE CONSTRAINTS] ;

Trang 54

L ư u ý khi g

L ư u ý khi g án quy ề n n đ đ ố i t i t ư ư ợ ng

Để gán các quyền trên đối tượng, đối tượng đó phải

thuộc về schema của người dùng thực hiện gán hoặc

người dùng đó có quyền WITH GRANT OPTION

Mặc định nếu một đối tượng thuộc về một người dùng nào đó thì người dùng đó có đầy đủ các quyền trên đối

tượng đó

Tuỳ chọn WITH GRANT OPTION không dùng cho việc gán các quyền đối tượng cho các Role

Trang 55

L ư u ý khi thu h

L ư u ý khi thu h ồ i quy ề n n đ đ ố i t i t ư ư ợ ng

Để thu hồi quyền đối tượng thì người thu hồi phải là

người đã gán quyền đó

Vì vậy, khi ra lệnh thu hồi tất cả (ALL) nghĩa là chỉ thu

hồi tất cả các quyền mà người thu đã gán thôi

Muốn gỡ bỏ GRANT OPTION của 1 người dùng thì

phải gỡ bỏ quyền đó trước, sau đó gán lại mà không cóGRANT OPTION

Trang 56

Đượ c gán và thu h ồ i t ừ ng ườ i dùng.

Có th ể gán role cho b ấ t c ứ ng ườ i dùng nào ngo ạ i tr ừ cho chính nó.

Có th ể bao g ồ m c ả quy ề n h ệ th ố ng (system privileges) và quy ề n đố i

t ượ ng (object privileges).

Có th ể enable và disable các Role đượ c gán cho các ng ườ i dùng.

Có th ể yêu c ầ u password khi c ầ n enable các Role.

Tên các Role không trùng v ớ i tên ng ườ i dùng và tên các Role đ ang

t ồ n t ạ i.

Không thu ộ c v ề b ấ t c ứ ng ườ i dùng nào và không thu ộ c v ề b ấ t c ứ

schema nào.

Trang 57

T ạ o, s ử a và xóa role

CREATE ROLE role_name [NOT IDENTIFIED | IDENTIFIED

{BY password | EXTERNALLY }]

ALTER ROLE role_name {NOT IDENTIFIED | IDENTIFIED

{BY password | EXTERNALLY }} ;

DROP ROLE role_name;

Trang 58

Gán và thu h ồ i role t ừ user

GRANT role_name [, role_name ]

TO {user|role|PUBLIC} [, {user|role|PUBLIC} ]

[WITH ADMIN OPTION] ;

REVOKE role_name [, role_name ]

FROM {user|role|PUBLIC}[, {user|role|PUBLIC} ] ;

Trang 59

Import / Export

Export : xuất nội dung luận lý của một CSDL vào một

tập tin nhị phân => tập tin dump

Import: dùng tập tin dump này để tạo lại các đối tượng CSDL trên một schema hoặc trên toàn bộ CSDL

Sử dụng lệnh exp, imp trong cửa sổ command của

Windows (hoặc Terminal của Linux)

Trang 60

Yêu c ầ u v ề quy ề n

Export schema của người dùng

khác

SYSDBA, EXP_FULL_DATABASE vàDBA

Export toàn bộ CSDL hoặc

tablespace

EXP_FULL_DATABASE

Trang 61

Ví d ụ

Export toàn b ộ CSDL (full=y) không có d ữ li ệ u (rows=n): exp

userid=sys/hqtcsdl@xe file=D:\export_full.dmp

Export toàn b ộ schema c ủ a ng ườ i dùng SCOTT: exp

owner=scott

Export b ả ng DEPT trong schema SCOTT: exp

Import t ấ t c ả schema: imp userid=system/hqtcsdl@xe

Import các đố i t ượ ng c ủ a SCOTT vào schema TEST: imp

userid=system/hqtcsdl@xe file=D:\scott.dmp

Import b ả ng DEPT c ủ a SCOTT vào schema TEST: imp

userid=system/hqtcsdl@xe file=D:\scott_dept.dmp

Trang 62

Tham số Ý nghĩĩĩĩa Giá trị mặc

Trang 63

Tham số Ý nghĩĩĩĩa

Giá trị mặc định

được lưu trữ trong tablespace

Trang 64

Oracle Data Pump

Data Pump thừa hưởng tất cả tính năng của phương pháp import/export truyền thống; nhưng có tốc độ thực

hiện nhanh hơn imp/exp ít nhất 2 lần

Tập tin xuất ra từ lệnh expdp sẽ lưu trên server, tập tin

dữ liệu mà impdp thao tác cũng phải lưu trên server;

trong th ư m ụ c đố i t ượ ng

Người dùng nào được gán quyền đọc ghi trên thư mục

đối tượng này thì mới có thể sử dụng nó

Ngày đăng: 21/10/2014, 21:02

HÌNH ẢNH LIÊN QUAN

Bảng tự điển dữ liệu (TĐDL), có quyền - Hệ quản trị cơ sở dữ liệu. File đính kèm gồm slide bài giảng + Source Thực hành
Bảng t ự điển dữ liệu (TĐDL), có quyền (Trang 43)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w