Giáo trình Hệ quản trị cơ sở dữ liệu - Chương 10: Khôi phục dữ liệu - Lê Thị Minh Nguyên
• Phục hồi tòan bộ CSDL
Restore database
from
Ví dụ:
RESTORE DATABASE AdventureWorks
FROM DISK =
‘C:\Backup\AdventureWorks.bak’
• Phục hồi giao tác
Restore log
from
8 trang |
Chia sẻ: huongthu9 | Lượt xem: 455 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Giáo trình Hệ quản trị cơ sở dữ liệu - Chương 10: Khôi phục dữ liệu - Lê Thị Minh Nguyên, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
8/25/2017
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
Hệ quản trị Cơ sở dữ liệu 2
1. Khái niệm
• 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.
Hệ quản trị Cơ sở dữ liệu 3
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
• Một số sự cố có thể xảy ra do:
• 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
8/25/2017
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
• Sự cố gây nên một giao tác kết thúc không bì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ố của giao tác (transaction 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
• 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)
• 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ụ
• Đầ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)
8/25/2017
3
3. Khôi phục sự cố sau một giao tác
Hệ quản trị Cơ sở dữ liệu 9
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 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
Hệ quản trị Cơ sở dữ 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ở dữ liệu 11
• 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ể
Actions Log
Data
Memory
A = 8 16
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
Hệ quản trị Cơ sở dữ liệu 12
8/25/2017
4
4.1. Nhật ký giao tác (tt) – check point
Hệ quản trị Cơ sở dữ liệu 13
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
Hệ quản trị Cơ sở dữ liệu 14
4.2. Nghi thức Undo (tt)
Hệ quản trị Cơ sở dữ liệu 15
Khi có sự cố
T1 và T3 đã hoàn tất
T2 và T4 chưa kết thúc
T3
T4
T1
Sự cố
T2
Bỏ qua
Khôi phục dữ
liệu
4.3. Nghi thức REDO
Hệ quản trị Cơ sở dữ liệu 16
8/25/2017
5
4.3. Nghi thức REDO (tt)
Hệ quản trị Cơ sở dữ liệu 17
Khi có sự cố
T1 và T3 đã hoàn tất
T2 và T4 chưa kết thúc
T3
T4
T1
Sự cố
T2 Bỏ qua
Thực hiện lại
4.4. Phục hồi nóng
Hệ quản trị Cơ sở dữ liệu 18
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).
• 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
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
Hệ quản trị Cơ sở dữ liệu 20
8/25/2017
6
Full Backup
21
• Cú pháp
Backup database TO
• Ví dụ
BACKUP DATABASE AdventureWorks
TO DISK =
‘C:\Backup\AdventureWorks.bak’
Differential Backup
22
• Cú pháp:
Backup database TO <tên logic
backup>
WITH DIFFERENTIAL
• Ví dụ
BACKUP DATABASE AdventureWorks
TO DISK = ’C:\Backup\AdventureWorks.bak’
WITH DIFFERENTIAL
Log Backup
23
• Cú pháp:
Backup log TO
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
from
Ví dụ:
RESTORE DATABASE AdventureWorks
FROM DISK =
‘C:\Backup\AdventureWorks.bak’
• Phục hồi giao tác
Restore log
from
8/25/2017
7
Ví dụ
25
• backup database qlsv to disk='d:\qlsv.bak'
• restore database qlsv from disk ='d:\qlsv.bak'
Backup tự động
26
Right Click vào Jobs chọn New Job
27 28
8/25/2017
8
Hệ quản trị Cơ sở dữ liệu 29 Hệ quản trị Cơ sở dữ liệu 30
Các file đính kèm theo tài liệu này:
- giao_trinh_he_quan_tri_co_so_du_lieu_chuong_10_khoi_phuc_du.pdf