Sao lưu website: quy tắc 3-2-1 và cách thử phục hồi

Rất nhiều doanh nghiệp phát hiện bản sao lưu của mình không dùng được đúng vào lúc cần nó nhất. Bài này nói về cách sao lưu để khi có sự cố, bạn mất một giờ chứ không mất cả website.

Hosting & Tên miền25/08/20266 phút đọc
Ảnh minh hoạ bài viết: Sao lưu website: quy tắc 3-2-1 và cách thử phục hồi
Trả lời nhanh

Quy tắc 3-2-1 nghĩa là giữ 3 bản dữ liệu, trên 2 loại nơi lưu khác nhau, trong đó 1 bản ở nơi tách biệt hoàn toàn với máy chủ website. Một website doanh nghiệp cần sao lưu cả mã nguồn, cơ sở dữ liệu và thư mục ảnh, tần suất hằng ngày với website bán hàng và hằng tuần với website giới thiệu. Quan trọng nhất là phải thử phục hồi định kỳ — bản sao lưu chưa từng được thử phục hồi thì chưa gọi là có bản sao lưu.

Sao lưu là loại công việc không mang lại giá trị nào cho tới đúng cái ngày nó cứu cả doanh nghiệp. Bốn tình huống thật khiến người ta cần tới nó: website bị chèn mã độc, một bản cập nhật làm hỏng giao diện, nhân viên xoá sai dữ liệu, và nhà cung cấp hosting gặp sự cố.

Sao lưu những gì

Một website đầy đủ gồm ba phần, thiếu phần nào cũng không phục hồi được:

  1. Cơ sở dữ liệu. Chứa toàn bộ nội dung: bài viết, sản phẩm, đơn hàng, khách hàng, cấu hình. Đây là phần quan trọng nhất và cũng là phần thay đổi liên tục.
  2. Thư mục tải lên. Toàn bộ ảnh và tài liệu. Phần này nặng nhưng ít thay đổi.
  3. Mã nguồn: giao diện, các phần mở rộng, và những đoạn mã tuỳ chỉnh riêng của bạn.

Phần lớn gói hosting đã có sao lưu tự động, nhưng bạn vẫn cần một bản nằm ngoài hạ tầng đó. Ngoài ba phần trên, nên lưu thêm một tài liệu ghi: tên miền đang ở nhà cung cấp nào, hosting ở đâu, tài khoản email quản trị là gì, các dịch vụ bên ngoài đang nối vào website. Khi có sự cố, thông tin này giúp bạn tiết kiệm nhiều giờ tìm kiếm.

Quy tắc 3-2-1 áp dụng cho doanh nghiệp nhỏ

Ba bản dữ liệu

Bản đang chạy, cộng hai bản sao lưu. Lý do cần hai bản sao lưu chứ không phải một: nếu website bị chèn mã từ hai tuần trước mà bạn chỉ giữ bản sao lưu của hôm qua, thì bản sao lưu đó cũng đã nhiễm.

Hai loại nơi lưu khác nhau

Ví dụ: một bản trên hosting, một bản trên dịch vụ lưu trữ đám mây. Không đặt cả hai bản trên cùng một máy chủ, vì sự cố máy chủ sẽ lấy đi cả hai.

Một bản ở nơi tách biệt hoàn toàn

Bản này phải nằm ngoài tầm ảnh hưởng của mọi sự cố liên quan tới hosting: tài khoản đám mây riêng, hoặc ổ cứng ở công ty. Với doanh nghiệp nhỏ, cách đơn giản là mỗi tháng tải một bản đầy đủ về máy tính công ty và lưu vào ổ ngoài.

Tần suất theo loại website

  • Website giới thiệu, ít thay đổi: hằng tuần là đủ, giữ 4 bản gần nhất.
  • Website có đăng bài thường xuyên: hằng ngày cho cơ sở dữ liệu, hằng tuần cho toàn bộ.
  • Website bán hàng có đơn hàng: hằng ngày là mức tối thiểu. Mất dữ liệu một ngày nghĩa là mất đơn hàng và thông tin khách của ngày đó.
  • Trước mỗi lần cập nhật lớn: luôn sao lưu ngay trước khi cập nhật giao diện hoặc phần mở rộng quan trọng. Đây là lúc rủi ro cao nhất.

Câu hỏi quyết định tần suất: nếu mất dữ liệu từ lần sao lưu gần nhất tới bây giờ, bạn mất gì? Với website bán hàng, câu trả lời là đơn hàng và khách hàng — nên hằng ngày không phải lựa chọn mà là bắt buộc.

Thử phục hồi — bước bị bỏ qua nhiều nhất

Đây là phần quan trọng nhất của cả bài. Rất nhiều bản sao lưu tồn tại nhưng không dùng được vì: thiếu cơ sở dữ liệu, tệp bị hỏng, phiên bản không tương thích, hoặc chỉ sao lưu được một phần mà không ai kiểm tra.

Cách thử phục hồi an toàn

  1. Tạo một môi trường thử, thường hosting có chức năng nhân bản website sang tên miền phụ.
  2. Phục hồi bản sao lưu mới nhất vào đó.
  3. Kiểm tra: trang chủ mở được không, ảnh có hiện không, đăng nhập quản trị được không, dữ liệu sản phẩm và đơn hàng có đủ không.
  4. Ghi lại thời gian phục hồi mất bao lâu — con số này chính là thời gian website sẽ ngừng nếu có sự cố thật.
  5. Xoá môi trường thử.

Nên làm mỗi ba tháng một lần, và làm ngay sau khi đổi hosting hoặc thay đổi cách sao lưu.

Ba cách sao lưu và ưu nhược điểm

Sao lưu do hosting cung cấp

Tiện nhất, thường tự động và có sẵn trong gói. Nhược điểm: bản sao nằm cùng hạ tầng với website, và một số nhà cung cấp giữ ít bản hoặc tính phí khi cần phục hồi. Hãy hỏi rõ: bao nhiêu ngày, tự phục hồi được không, có mất phí không.

Sao lưu bằng phần mở rộng trên website

Cho bạn quyền chọn tần suất, chọn nơi lưu ra ngoài, và tự phục hồi. Nhược điểm: chạy trên chính website nên tốn tài nguyên khi sao lưu, và nếu website chết hoàn toàn thì công cụ đó cũng không dùng được — vì thế vẫn cần bản lưu ở ngoài.

Sao lưu ở tầng máy chủ

Áp dụng khi bạn dùng VPS: viết một tiến trình tự động nén dữ liệu và đẩy ra dịch vụ lưu trữ ngoài theo giờ định trước. Kiểm soát tốt nhất, nhưng cần người biết cấu hình.

Danh sách kiểm tra hệ thống sao lưu của bạn

  1. Bạn biết bản sao lưu gần nhất là lúc nào chứ?
  2. Bản đó gồm cả cơ sở dữ liệu, ảnh và mã nguồn chứ?
  3. Có ít nhất một bản nằm ngoài máy chủ website chứ?
  4. Bạn giữ được bao nhiêu bản cũ, có đủ để lùi về trước thời điểm nghi bị xâm nhập không?
  5. Bạn tự phục hồi được, hay phải chờ nhà cung cấp?
  6. Lần cuối bạn thử phục hồi là khi nào?
  7. Nếu người phụ trách kỹ thuật nghỉ, còn ai biết cách phục hồi không?

Trả lời không được ba câu trở lên thì hệ thống sao lưu của bạn đang mang tính hình thức. Đây là nhóm việc nằm trong gói chăm sóc website, cùng với cập nhật bảo mật đã nói ở bài 10 việc bảo mật WordPress phải làm.

Sao lưu không thay thế bảo mật

Chi phí cho việc sao lưu và theo dõi định kỳ được bóc tách trong bài chi phí duy trì website hằng năm.

Một điểm cần nói rõ: sao lưu là phương án khắc phục, không phải phương án phòng ngừa. Nếu website liên tục bị chèn mã, phục hồi từ bản sao lưu chỉ đưa bạn về trạng thái cũ — kèm nguyên lỗ hổng đã bị khai thác. Phải tìm ra đường vào và bịt lại, nếu không sẽ bị lại trong vài tuần.

Thứ tự xử lý đúng khi có sự cố: đổi toàn bộ mật khẩu, sao lưu nguyên trạng để còn dấu vết, phục hồi từ bản sạch, cập nhật toàn bộ, rồi tìm nguyên nhân.

Câu hỏi thường gặp

Hosting đã có sao lưu tự động thì tôi cần làm gì thêm?
Cần thêm một bản ở nơi tách biệt với hosting, và cần thử phục hồi định kỳ. Sao lưu của hosting rất tiện nhưng nằm cùng hạ tầng với website, nên không bảo vệ được trong tình huống sự cố ở chính nhà cung cấp.
Nên giữ bao nhiêu bản sao lưu cũ?
Tối thiểu 7 bản hằng ngày và 4 bản hằng tuần. Lý do là mã độc có thể đã nằm im vài tuần trước khi bị phát hiện, nên bạn cần khả năng lùi về xa hơn một tuần.
Sao lưu có làm website chậm không?
Có thể chậm trong lúc đang chạy sao lưu nếu website lớn và sao lưu bằng phần mở rộng. Cách xử lý là đặt giờ sao lưu vào lúc ít khách, thường 2–4 giờ sáng.
Mất bao lâu để phục hồi một website?
Với website vừa và nhỏ, thường 15–60 phút nếu bản sao lưu đầy đủ và bạn có quyền tự phục hồi. Nếu phải chờ nhà cung cấp xử lý, thời gian phụ thuộc cam kết hỗ trợ của họ — đây là lý do nên tự nắm được bản sao lưu.

Bản sao lưu của bạn có thật sự dùng được?

Chúng tôi kiểm tra hệ thống sao lưu hiện tại, thử phục hồi một bản vào môi trường riêng và báo lại kết quả thật.