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

Bài giảng hệ quản trị cơ sở dữ liệu chương 10 lê thị minh nguyện

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, 8 trang )

8/25/2017

Nội dung
1. Khái niệm

Chương 10.
Khôi phục dữ liệu

2. Phân loại các sự cố
3. Khôi phục sự cố sau một giao tác
4. Khôi phục sau sự cố hệ thống

GV: Lê Thị Minh Nguyện
Email:

5. Cài đặt cơ chế sao lưu và phục hồi dữ liệu
Hệ quản trị Cơ sở dữ liệu

2

1. Khái niệm

2. Phân loại sự cố

• Khơi phục CSDL là tiến trình phục hồi CSDL về trạng thái
nhất quán cuối cùng trước khi có sự cố xảy ra.
• Khơi phục dữ liệu tự động giúp giảm thiểu việc yêu cầu
người sử dụng thực hiện lại công việc (khi xảy ra sự cố).
• Giao tác là đơn vị cơ bản khi khơi phục CSDL.

• Sự cố giao tác: là các sự cố gây nên việc một giao tác kết thúc


khơng bình thường
• Một số sự cố có thể xảy ra do:

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

3

• Khách quan: mất điện
• Chủ quan: thao tác sai

2.1. Sự cố do nhập liệu sai
2.2. Sự cố của giao tác (transaction failure)
2.3. Sự cố liên quan đến hệ thống (system failure)
2.4. Sự cố trên thiết bị lưu trữ (media failure)
Hệ quản trị Cơ sở dữ liệu

4

1


8/25/2017

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

2.2. Sự cố của giao tác (transaction failure)
• Sự cố gây nên một giao tác kết thúc khơng bình thường:
• Ví dụ

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

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

• Chia cho khơng

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

• Giao tác bị hủy

• Ràng buộc khóa chính, khóa ngoại

• Dữ liệu nhập sai

• Ràng buộc miền giá trị

• Tràn số

• Trigger
5

2.3. Sự cố liên quan đến hệ thống (system failure)
• Sự cố gây nên bị mất hoặc không thể truy xuất được dữ liệu ở
bộ nhớ trong.
• Ví dụ
• Cúp điện

6

Sự cố trên thiết bị lưu trữ (media failure)
• Sự cố gây nên việc mất hay không thể truy cập được dữ liệu ở
bộ nhớ ngịai

• Ví dụ

• Lỗi phần mềm DBMS hoặc OS

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

• Hư RAM

• Sector trên đĩa cứng hư

7

8

2


8/25/2017

3. Khôi phục sự cố sau một giao tác
T1

4. Sự cố hệ thống

• Nếu một giao tác T bị sự cố thì hệ
thống sẽ thực hiện các việc sau:

T2

Lock(A)

Read(A)
A=A+1
Write(A)
Lock(B)
Unlock(A)

• Giải phóng các đơn vị dữ liệu đang
bị khóa bởi T (UL(B))
• Reset lại giá trị các đơn vị dữ liệu
mà T đã làm thay đổi (A) (khó???)
Lock(A)
Read(A)
A=A+2

• Xét xem có giao tác nào(#T) đã đọc
dữ liệu do T ghi không? Nếu có:

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

-T’ chưa commit hủy

Read(B)

-T’ commit rồi  thực hiện lại

Write(A)

Unlock(A)
Commit

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

B=B/A

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

9

4.1. Nhật ký giao tác

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

10

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

• Nhật ký giao tác là một chuỗi các mẫu tin (log record) ghi
nhận lại các hành động của DBMS
• Một mẫu tin cho biết một giao tác nào đó đã làm những gì

• Nhật ký là một tập tin tuần tự được lưu trữ trên bộ nhớ chính,
và sẽ được ghi xuống đĩa ngay khi có thể
A = 8 16
B = 8 16
Actions

• Hạn chế của PP khơi phục bằng log???

• Check point dùng để cải thiện q trình phục hồi
• Check point định kỳ xảy ra:

Data
Log

Log

• Ghi tất cả log record từ bộ hớ chính xuống bộ nhớ phụ
• Ghi xuống CSDL tất cả những gì thay đổi trên Buffer

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

11

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

12

3


8/25/2017

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

4.2. Nghi thức Undo


T2 đã ghi nhận trên đĩa nên không cần phục hồi gì cả
Hệ quản trị Cơ sở dữ liệu

13

4.2. Nghi thức Undo (tt)

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

14

4.3. Nghi thức REDO

 Khi có sự cố
 T1 và T3 đã hồn tất

 T2 và T4 chưa kết thúc

T2

Khơi phục dữ
liệu

T1

Bỏ qua

T4
T3


Sự cố
Hệ quản trị Cơ sở dữ liệu

15

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

16

4


8/25/2017

4.3. Nghi thức REDO (tt)

4.4. Phục hồi nóng

 Khi có sự cố

Khi hệ thống đang hoạt động. Cơ chế này dựa trên nhật ký , các bản sao dữ
liệu và điểm phục hồi hệ thống.

 T1 và T3 đã hoàn tất

 T2 và T4 chưa kết thúc

T1

Bỏ qua


T2

Thực hiện lại
T3

T4

Sự cố

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

17

4.5. Phục hồi lạnh

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

18

5. Cài đặt cơ chế sao lưu và phục hồi dữ liệu
1. Full Backup
2. Differential Backup
3. Log Backup

• Xảy ra do lỗi thiết bị (thiết bị hư, thay đĩa khác).
• Thơng thường người ta có một phiên bản CSDL và nhật ký
nằm trên một đĩa khác. Cơ chế này dựa trên “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ở dữ liệu

19

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

20

5


8/25/2017

Full Backup

Differential Backup

• Cú pháp

• Cú pháp:
Backup database <tên database> TO backup>
WITH DIFFERENTIAL
• Ví dụ
BACKUP DATABASE AdventureWorks
TO DISK = ’C:\Backup\AdventureWorks.bak’
WITH DIFFERENTIAL

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


• Ví dụ
BACKUP DATABASE AdventureWorks
TO DISK =
‘C:\Backup\AdventureWorks.bak’

21

22

Phục hồi csdl (restore databse)

Log Backup

• Phục hồi tịan bộ CSDL

• Cú pháp:
Backup log <tên database> TO <tên logic backup>
WITH NO_TRUNCATE

Restore database <tên database>
from <thiết bị backup>
Ví dụ:

RESTORE DATABASE AdventureWorks
FROM DISK =
‘C:\Backup\AdventureWorks.bak’

• BACKUP LOG AdventureWorks
TO DISK= 'C:\SQL\Backup\ AdventureWorks.bak'

WITH NO_TRUNCATE

• Phục hồi giao tác
Restore log <tên database>
from <thiết bị backup>
23

24

6


8/25/2017

Ví dụ

Backup tự động
Right Click vào Jobs chọn New Job…

• backup database qlsv to disk='d:\qlsv.bak'
• restore database qlsv from disk ='d:\qlsv.bak'

25

26

27

28


7


8/25/2017

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

29

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

30

8



×