Giải Tin Học trang 114
Lời giải chi tiết SGK Lớp 11 · Môn Tin Há»c · Trang 114–115
Nguon: Tin Hoc 11 - Ket Noi Tri Thuc Voi Cuoc Song (trang 114 – 115)
Bài 24: Thực hành sao lưu dữ liệu
🔍 Kiến thức cần nhớ
Đây là bài thực hành, mục tiêu chính là giúp em nắm được hai thao tác quan trọng trong công tác bảo đảm an toàn cơ sở dữ liệu (CSDL):
- Sao lưu (backup): Tạo bản dự phòng của CSDL để phòng khi có sự cố (hỏng phần cứng, mất dữ liệu, lỗi phần mềm...).
- Phục hồi (restore): Khôi phục lại CSDL từ bản sao lưu khi xảy ra sự cố.
Phần mềm thực hành là HeidiSQL kết nối với hệ QTCSDL MariaDB. CSDL minh hoạ là mymusic gồm các bảng: banhhac, banthuam, casi, nhacsi, theloai.
💡 Mẹo nhớ: Sao lưu = Export (xuất ra tệp .sql). Phục hồi = Load/Run SQL file (nạp tệp .sql vào lại). Hai thao tác này ngược chiều nhau.
⚙️ Bài tập
Nhiệm vụ 1: Thực hành sao lưu CSDL
Đề bài: Thực hiện sao lưu CSDL mymusic ra một tệp SQL.
Cách 1 — Sao lưu toàn bộ CSDL (theo hướng dẫn SGK)
Các bước thực hiện theo Hình 24.1:
- Mở chức năng xuất: Trên thanh menu, nháy chuột chọn thẻ Các công cụ → chọn Xuất cơ sở dữ liệu dưới dạng SQL.
- Chọn CSDL cần sao lưu: Ở khung bên trái, đánh dấu (tích) vào CSDL mymusic.
- Thiết lập tuỳ chọn cho cấu trúc (Database/Table): Đánh dấu vào các ô Drop.
- Ý nghĩa: khi phục hồi CSDL, hệ thống sẽ xoá đối tượng cũ (nếu có) bằng lệnh DROP trước khi tạo đối tượng mới (Create).
- Mục đích: tránh lỗi trùng tên bảng/CSDL khi phục hồi.
- Thiết lập tuỳ chọn cho dữ liệu (Data): Ở dòng Data, chọn Delete + insert.
- Ý nghĩa: khi phục hồi sẽ xoá dữ liệu cũ đi (nếu có) trước khi chèn vào dữ liệu đã sao lưu.
- Mục đích: tránh trùng lặp bản ghi.
- Chọn kiểu kết xuất (output): Chọn 1 tệp các câu truy vấn SQL: Single .sql file (gom tất cả thành một tệp duy nhất).
- Đặt tên tệp sao lưu: Nhập đường dẫn và tên tệp, ví dụ:
```
C:\Temp\_mymusic.sql
```
- Thực hiện sao lưu: Nháy chọn nút Export.
- Lưu giữ bản sao lưu: Sao chép và cất giữ tệp _mymusic.sql ở nơi an toàn (ổ đĩa khác, thiết bị lưu trữ ngoài hoặc lưu trữ đám mây).
Cách 2 — Sao lưu một phần CSDL (chỉ một số bảng)
Theo phần Lưu ý và Hình 24.2, em có thể chỉ sao lưu những bảng cần thiết thay vì toàn bộ CSDL:
- Mở hộp thoại Table tools (Công cụ bảng).
- Trong khung bên trái, chỉ tích chọn những bảng muốn sao lưu (ví dụ chỉ chọn banhhac, casi mà bỏ qua các bảng khác).
- Thiết lập tương tự Cách 1:
- Database(s)/Table(s): tích Create (và Drop nếu muốn xoá trước khi tạo).
- Data: chọn Delete + insert (truncate existing data).
- Output: chọn Single .sql file.
- Tên tệp: ví dụ
C:\Temp\_mymusic.sql.
- Nháy Export để xuất, rồi nháy Đóng.
💡 Mẹo nhớ: Sao lưu một phần phù hợp khi CSDL rất lớn nhưng chỉ một vài bảng thay đổi thường xuyên → tiết kiệm dung lượng và thời gian.
⚠️ Lưu ý thi: Cần phân biệt rõ ý nghĩa các tuỳ chọn: - Drop: xoá đối tượng (bảng/CSDL) cũ trước khi tạo mới. - Create: tạo lại cấu trúc đối tượng. - Delete + insert: xoá dữ liệu cũ rồi chèn dữ liệu mới. Đây là dạng câu hỏi lý thuyết hay xuất hiện trong đề kiểm tra.
Nhiệm vụ 2: Thực hành phục hồi (restore) CSDL
Đề bài: Phục hồi CSDL mymusic từ tệp sao lưu _mymusic.sql trên một máy mới (chưa có CSDL mymusic), hoặc khôi phục lại CSDL mymusic sau khi đã xoá.
Cách 1 — Phục hồi bằng Load SQL file (theo hướng dẫn SGK)
Tình huống: phục hồi mymusic trên một máy mới chưa có sẵn CSDL này. (Cũng có thể xoá CSDL mymusic hiện có bằng lệnh DROP DATABASE mymusic; như minh hoạ ở Hình 24.3 để thực hành lại từ đầu.)
Các bước thực hiện theo Hình 24.4:
- Mở chức năng nạp tệp: Nháy chuột chọn thẻ Tập tin → chọn Load SQL file... (hoặc nhấn tổ hợp phím Ctrl + O).
- Chọn tệp sao lưu: Trong hộp thoại mở ra, tìm và chọn tệp _mymusic.sql đã sao lưu (ví dụ tại
C:\Temp\_mymusic.sql).
- Nạp nội dung tệp: Tệp SQL được tải lên, hiển thị toàn bộ các câu lệnh (CREATE, INSERT...) trong cửa sổ truy vấn.
- Chạy các câu lệnh: Thực thi tệp SQL (chọn Run / Chạy) để hệ thống tự động tạo lại CSDL, các bảng và chèn lại toàn bộ dữ liệu.
- Kiểm tra kết quả: Làm tươi (refresh) danh sách CSDL, kiểm tra CSDL mymusic đã xuất hiện trở lại với đầy đủ các bảng và dữ liệu.
Cách 2 — Phục hồi bằng Run SQL file (chạy trực tiếp)
Thay vì Load (tải toàn bộ nội dung vào cửa sổ truy vấn rồi mới chạy), em có thể dùng:
- Chọn thẻ Tập tin → Run SQL file....
- Chọn tệp _mymusic.sql.
- Phần mềm chạy thẳng các câu lệnh trong tệp mà không cần nạp toàn bộ vào bộ nhớ.
💡 Mẹo nhớ: Với tệp sao lưu dung lượng lớn, nên dùng Run SQL file vì cách này tiết kiệm bộ nhớ hơn (không phải mở toàn bộ nội dung lên màn hình).
⚠️ Lưu ý thi: - Khi sao lưu đã chọn Drop, lúc phục hồi tệp SQL chứa sẵn lệnhDROP ...nên có thể chạy trực tiếp mà không lo lỗi trùng tên. - Thao tácDROP DATABASE mymusic;(Hình 24.3) là không thể hoàn tác nếu chưa có bản sao lưu → đây chính là lý do vì sao phải sao lưu trước khi xoá.
🎯 Ghi nhớ: - Sao lưu (Export): Các công cụ → Xuất CSDL dưới dạng SQL → chọn mymusic → tích Drop/Create, chọn Delete + insert → Single .sql file → đặt tên → Export. - Phục hồi (Restore): Tập tin → Load SQL file (Ctrl+O) hoặc Run SQL file → chọn tệp _mymusic.sql → chạy. - Sao lưu định kỳ và cất giữ bản sao ở nơi an toàn là biện pháp quan trọng nhất để bảo đảm an toàn dữ liệu.
