Đăng ký để xem nội dung này
Tạo tài khoản miễn phí và đăng ký gói học để truy cập toàn bộ bài học, video và tài liệu độc quyền.
Đăng ký ngay — Miễn phí Đã có tài khoản? Đăng nhậpBackup & Restore Database
🎓 BÀI GIẢNG: BACKUP & RESTORE DATABASE TRONG SQL SERVER
1️⃣ GIỚI THIỆU
-
Backup (sao lưu) là lưu dữ liệu ra file dự phòng.
-
Restore (phục hồi) là nạp dữ liệu từ file backup để khôi phục database.
✔️ Dùng để bảo vệ dữ liệu khi:
-
Lỗi phần cứng
-
Xoá nhầm
-
Tấn công virus
2️⃣ SAO LƯU (BACKUP DATABASE)
🔥 A. THỰC HIỆN BẰNG CÂU LỆNH SQL
📝 Full Backup
BACKUP DATABASE WebDaoTao
TO DISK = 'D:\Backup\WebDaoTao_Full.bak'
WITH FORMAT, INIT;
📝 Differential Backup
BACKUP DATABASE WebDaoTao
TO DISK = 'D:\Backup\WebDaoTao_Diff.bak'
WITH DIFFERENTIAL;
📝 Transaction Log Backup
(chỉ thực hiện được khi database ở FULL RECOVERY)
BACKUP LOG WebDaoTao
TO DISK = 'D:\Backup\WebDaoTao_Log.trn';
🔥 B. THỰC HIỆN TRÊN GIAO DIỆN SSMS
✅ Full Backup
-
Click phải vào database → Tasks → Back Up...
-
Chọn:
-
Backup type:
Full -
Destination:
Addfile đích (ví dụD:\Backup\WebDaoTao_Full.bak)
-
-
Nhấn OK.
✅ Differential Backup
-
Tương tự, chỉ đổi Backup type thành
Differential.
✅ Transaction Log Backup
-
Vào Tasks → Back Up..., chọn:
-
Backup type:
Transaction Log. -
Nhấn OK.
-
3️⃣ KHÔI PHỤC (RESTORE DATABASE)
🔥 A. THỰC HIỆN BẰNG CÂU LỆNH SQL
📝 Restore Full Backup
RESTORE DATABASE WebDaoTao
FROM DISK = 'D:\Backup\WebDaoTao_Full.bak'
WITH REPLACE, RECOVERY;
📝 Restore Full + Differential
RESTORE DATABASE WebDaoTao
FROM DISK = 'D:\Backup\WebDaoTao_Full.bak'
WITH NORECOVERY;
RESTORE DATABASE WebDaoTao
FROM DISK = 'D:\Backup\WebDaoTao_Diff.bak'
WITH RECOVERY;
📝 Restore từ Transaction Log
RESTORE DATABASE WebDaoTao
FROM DISK = 'D:\Backup\WebDaoTao_Full.bak'
WITH NORECOVERY;
RESTORE LOG WebDaoTao
FROM DISK = 'D:\Backup\WebDaoTao_Log.trn'
WITH RECOVERY;
🔥 B. THỰC HIỆN TRÊN GIAO DIỆN SSMS
✅ Restore Full
-
Click phải Databases → Restore Database...
-
Chọn Device, nhấn
..., thêm file.bak. -
Ở tab Options:
-
Check
Overwrite the existing database (WITH REPLACE)nếu muốn ghi đè.
-
-
Nhấn OK.
✅ Restore Full + Differential
-
Restore Full như trên nhưng:
-
Ở tab Options, chọn
RESTORE WITH NORECOVERY.
-
-
Sau đó tiếp tục restore Differential:
-
Chọn file
.bakdiff, tab Options chọnWITH RECOVERY.
-
✅ Restore Transaction Log
-
Tương tự, lần lượt restore log với
NORECOVERY, cuối cùng log cuối cùng chọnWITH RECOVERY.
4️⃣ SAO LƯU / KHÔI PHỤC TỪ SCRIPT (GENERATE SCRIPT)
🔥 A. BẰNG GIAO DIỆN SSMS
-
Đây là cách “backup logic”, cho phép sao lưu chỉ 1 phần table, hoặc toàn bộ schema + data thành script
.sql.
✅ Các bước
-
Click phải database → Tasks → Generate Scripts...
-
Chọn
Tables,Views,Stored Procedurestuỳ ý. -
Nhấn Advanced:
-
Types of data to script=Schema and Data(lấy cả cấu trúc & dữ liệu).
-
-
Export ra file
.sql→ Sau này chỉ cầnRunscript để restore.
🔥 B. BẰNG CÂU LỆNH (EXPORT / IMPORT DATA)
-
Nếu cần di chuyển từng phần data, có thể dùng
bcphoặcBULK INSERT(ngoài phạm vi cơ bản).
5️⃣ MỘT SỐ GỢI Ý KHI GẶP LỖI
| Lỗi | Nguyên nhân | Cách xử lý |
|---|---|---|
| Database đang có kết nối | Người khác đang dùng DB | ALTER DATABASE WebDaoTao SET SINGLE_USER WITH ROLLBACK IMMEDIATE |
| Sai phiên bản SQL Server | File .bak từ bản mới hơn |
Dùng đúng version hoặc Generate Script để migrate |
| Disk đầy | Không đủ dung lượng ổ cứng | Dọn ổ hoặc chọn ổ khác |
| Transaction log đầy | Chưa backup log thường xuyên | Thực hiện BACKUP LOG rồi DBCC SHRINKFILE |
6️⃣ CHIẾN LƯỢC BACKUP HIỆU QUẢ
| Hành động | Tần suất |
|---|---|
| Full Backup | Hàng ngày |
| Differential Backup | Vài giờ |
| Transaction Log Backup | 15-30 phút |
| Test Restore định kỳ | Hàng tuần |
| Sao chép file backup ra cloud / ổ ngoài | Hàng ngày |
✅ KẾT LUẬN
-
Backup & Restore là kỹ năng không thể thiếu để bảo vệ hệ thống.
-
Hãy luôn:
-
Lên lịch backup tự động.
-
Lưu trữ backup trên nhiều thiết bị khác nhau.
-
Định kỳ test restore để tránh rủi ro.
-
1. Yêu cầu:
- Hãy tạo 1 database có tên: QuanLyHocVien
2. Thực hành:
2.1- Backup bằng lệnh sql
2.2- Backup bằng tool SQL Managment studio
2.3- Dùng tool SQL Managment studio tạo ra các lệnh backup cả cấu trúc và data
2.4- Restore database lại thành 2 database mới: QuanLyHocVien_Backup1 , QuanLyHocVien_Backup2
3. Nộp bài
- File sql mục 2.4
- Hình ảnh 2 db QuanLyHocVien_Backup1 , QuanLyHocVien_Backup2 trên tool SQL Managment studio