1. Trang chủ
  2. » Cao đẳng - Đại học

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

7 6 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 1,22 MB

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

Nội dung

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

Trang 1

Chương 10.

Khôi phục dữ liệu

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

Nội dung

1 Khái niệm

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

5 Cài đặt cơ chế sao lưu và phục hồi dữ liệu

1 Khái niệm

nhất quán cuối cùng trước khi có sự cố xảy ra

người sử dụng thực hiện lại công việc (khi xảy ra sự cố)

2 Phân loại sự cố

•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

• 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)

Trang 2

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

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

• DBMS cung cấp các cơ chế cho phép phát hiệ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ố do nhập liệu sai

•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ố của giao tác (transaction failure)

bộ nhớ trong

• Cúp điện

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

• Hư RAM

7

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

bộ nhớ ngòai

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

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

8

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

Trang 3

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

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 một giao tác T bị sự cố thì hệ thống sẽ thực hiện các việc sau:

• 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ó???)

• Xét xem có giao tác nào(#T) đã đọc

dữ liệu do T ghi không? Nếu có:

-T’ chưa commit hủy -T’ commit rồi  thực hiện lại Giả sử B/A (A=0) thì hệ thệ bị đứng

4 Sự cố hệ thống

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

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ì

và sẽ được ghi xuống đĩa ngay khi có thể

Data

Memory

A = 816

B = 8 16

Log

Disk

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

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

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

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

• 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

Trang 4

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

T2 đã ghi nhận trên đĩa nên không cần phục hồi gì cả

4.2 Nghi thức Undo

4.2 Nghi thức Undo (tt)

 Khi có sự cố

 T1và T3đã hoàn tất

 T2và T4chưa kết thúc

T3

T4

T 1

Sự cố

T 2

Bỏ qua

Khôi phục dữ liệu

4.3 Nghi thức REDO

Trang 5

4.3 Nghi thức REDO (tt)

 Khi có sự cố

 T1và T3đã hoàn tất

 T2và T4chưa kết thúc

T 3 T 4

T 1

Sự cố

Thực hiện lại

4.4 Phục hồi nóng

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.

4.5 Phục hồi lạnh

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

nằm trên một đĩa khác Cơ chế này dựa trên “nhật ký sau”

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

Trang 6

Full Backup

21

• Cú pháp

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

• Ví dụ

‘C:\Backup\AdventureWorks.bak’

Differential Backup

22

• Cú pháp:

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

WITH DIFFERENTIAL

• Ví dụ

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 bộ CSDL Restore database <tên database>

from <thiết bị backup>

Ví dụ:

‘C:\Backup\AdventureWorks.bak’

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

from <thiết bị backup>

Trang 7

Ví dụ

25

Backup tự động

26

Right Click vào Jobs chọn New Job…

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

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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