Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 10 - Lê Thị Minh Nguyện

7 6 0
Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 10 - Lê Thị Minh Nguyện

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

Thông tin tài liệu

Sự cố trên thiết bị lưu trữ (media failure).. Hệ quản trị Cơsở dữ liệu 4..[r]

(1)

Chương 10.

Khôi phục liệu

GV: Lê Thị Minh Nguyện Email: nguyenltm@huflit.edu.vn

Nội dung Khái niệm

2 Phân loại cố

3 Khôi phục cố sau giao tác Khôi phục sau cố hệ thống

5 Cài đặt chế lưu phục hồi liệu

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

1 Khái niệm

•Khơi phục CSDL tiến trình phục hồi CSDL trạng thái quán cuối trước có cố xảy

•Khơi phục liệu tự động giúp giảm thiểu việc yêu cầu người sử dụng thực lại công việc (khi xảy cố) •Giao tác đơn vị khôi phục CSDL

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

2 Phân loại cố

•Sự cố giao tác: cố gây nên việc giao tác kết thúc khơng bình thường

•Một số cố xảy do: •Khách quan: điện

•Chủ quan: thao tác sai 2.1 Sự cố nhập liệu sai

2.2 Sự cố giao tác (transaction failure) 2.3 Sự cố liên quan đến hệ thống (system failure)

2.4 Sự cố thiết bị lưu trữ (media failure)

(2)

•Dữ liệu sai hiển nhiên

•Dữ liệu sai khơng thể phát

•DBMS cung cấp chế cho phép pháthiện lỗi

•Ràng buộc khóa chính, khóa ngoại •Ràng buộc miền giá trị

•Trigger

5

2.1 Sự cố nhập liệu sai

•Sự cố gây nên giao tác kết thúc khơngbình thường:

•Ví dụ

•Chia cho khơng •Giao tác bị hủy •Dữ liệu nhập sai •Tràn số

6

2.2 Sự cố giao tác (transaction failure)

•Sự cố gây nên bị truyxuất liệu nhớ

•Ví dụ •Cúp điện

•Lỗi phần mềm DBMS OS •Hư RAM

7

2.3 Sự cố liên quan đến hệ thống (system failure)

•Sự cố gây nên việc hay truycập liệu nhớ ngịai

•Ví dụ

•Đầu đọc đĩa cứng hư •Sector đĩa cứng hư

(3)

3 Khôi phục cố sau giao tác

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

T1 T2 Lock(A) Read(A) A=A+1 Write(A) Lock(B) Unlock(A) Read(B) B=B/A Lock(A) Read(A) A=A+2 Write(A) Unlock(A) Commit

•Nếu giao tác T bị cố hệ thống thực việc sau:

•Giải phóng đơn vị liệu bị khóa T (UL(B))

•Reset lại giá trị đơn vị liệu mà T làm thay đổi (A)(khó???) •Xét xem có giao tác nào(#T) đọc

dữ liệu T ghi khơng? Nếu có: -T’ chưa commit hủy -T’ commit rồithực lại

Giả sử B/A (A=0) hệ thệ bị đứng

4 Sự cố hệ thống

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

4.1 Nhật ký giao tác 4.2 Nghi thức Undo log 4.3 Nghi thức Redo log 4.4 Phục hồi nóng 4.5 Phục hồi lạnh

4.1 Nhật ký giao tác

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

•Nhật ký giao tác chuỗi mẫu tin (log record) ghi nhận lại hành động DBMS

•Một mẫu tin cho biết giao tác làm

•Nhật ký tập tin lưu trữ nhớ chính, ghi xuống đĩa

Actions Log

Data

Memory A = 816

B = 16

Log

Disk

4.1 Nhật ký giao tác (tt)

•Hạn chế PP khơi phục log???

•Check point dùng để cải thiện trình phục hồi

•Check point định kỳ xảy ra:

•Ghi tất log record từ hớ xuống nhớ phụ

•Ghi xuống CSDL tất thay đổi Buffer

(4)

4.1 Nhật ký giao tác (tt) – check point

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

T2 ghi nhận đĩa nên khơng cần phục hồi

4.2 Nghi thức Undo

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

4.2 Nghi thức Undo (tt)

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

Khi có cố

T1và T3đã hoàn tất T2và T4chưa kết thúc

T3

T4

T1

Sự cố

T2

Bỏ qua

Khôi phục liệu

4.3 Nghi thức REDO

(5)

4.3 Nghi thức REDO (tt)

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

Khi có cố

T1và T3đã hồn tất T2và T4chưa kết thúc

T3 T4

T1

Sự cố

T2 Bỏ qua Thực lại

4.4 Phục hồi nóng

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

Khihệ thống hoạt động Cơ chếnàydựatrênnhậtký , cácbảnsaodữ

liệuvàđiểm phục hồi hệ thống.

4.5 Phục hồi lạnh

•Xảy lỗi thiết bị (thiết bị hư, thay đĩa khác)

•Thơng thường người ta có phiên CSDL nhật ký nằm đĩa khác Cơchế dựa “nhật ký sau” •Cơ chế phục hồi lạnh tùy thuộc vào người quản trị CSDL

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

5 Cài đặt chế lưu phục hồi liệu

1 Full Backup

2 Differential Backup 3 Log Backup

(6)

Full Backup

21

•Cú pháp

Backup database <tên database> TO <tên logic backup>

•Ví dụ

BACKUP DATABASE AdventureWorks

TO DISK =

‘C:\Backup\AdventureWorks.bak’

Differential Backup

22 •Cú pháp:

Backup database <tên database> TO <tên logic backup>

WITH DIFFERENTIAL

•Ví dụ

BACKUP DATABASEAdventureWorks

TO DISK= ’C:\Backup\AdventureWorks.bak’

WITH DIFFERENTIAL

Log Backup

23 •Cú pháp:

Backup log <tên database> TO <tên logic backup> WITH NO_TRUNCATE

BACKUP LOG AdventureWorks

TO DISK= 'C:\SQL\Backup\AdventureWorks.bak' WITH NO_TRUNCATE

Phục hồi csdl (restore databse)

24

•Phục hồi tịan CSDL

Restore database <tên database> from <thiết bị backup>

Ví dụ:

RESTORE DATABASE AdventureWorks FROM DISK =

‘C:\Backup\AdventureWorks.bak’

•Phục hồi giao tác Restore log <tên database>

(7)

Ví dụ

25 •backup databaseqlsv to disk='d:\qlsv.bak'

•restore databaseqlsv from disk='d:\qlsv.bak'

Backup tự động

26

Right Click vàoJobschọnNew Job…

Ngày đăng: 30/03/2021, 04:29

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan