Bỏ qua, đến nội dung

Cài đặt và sử dụng — Backup & Restore

Tổng quan

Plugin hỗ trợ sao lưu (backup) và phục hồi (restore) toàn bộ hệ thống Digiforce. Backup bao gồm database (collections, cấu hình, users) và có thể bao gồm cả file uploads. File backup được lưu trực tiếp trên filesystem — không lưu trong database.

Yêu cầu hệ thống

  • Server Digiforce đang chạy
  • Quyền Admin để truy cập chức năng Backup & Restore
  • Đủ dung lượng disk cho file backup (tối thiểu 2x kích thước database)

Bước 1: Kích hoạt plugin

Vào Settings → Plugin Manager, tìm plugin-backup-restore và bật. Khởi động lại server.

Bước 2: Tạo Backup

  1. Vào Settings → Backup & Restore
  2. Nhấn Create Backup
  3. Chọn nội dung backup:
Tuỳ chọnBao gồmKích thước
Full backupDatabase + file uploads + attachmentsLớn
Database onlyChỉ database (collections, cấu hình, users)Nhỏ hơn
  1. Chọn collections muốn backup (hoặc chọn tất cả)
  2. Đợi quá trình dump hoàn tất

Luồng tạo backup

Bước 3: Quản lý Backups

Trang Backup & Restore hiển thị danh sách tất cả backup:

CộtMô tả
Tên fileTên file backup (tự động sinh theo timestamp)
Ngày tạoThời gian tạo backup
Kích thướcDung lượng file backup
LoạiFull hoặc Database only

Các thao tác

Thao tácMô tảGhi chú
DownloadTải file backup về máyĐể lưu trữ bên ngoài server
RestoreKhôi phục từ backup này⚠️ Ghi đè toàn bộ dữ liệu hiện tại
DeleteXoá file backupGiải phóng dung lượng disk
UploadUpload file backup từ máy tínhCho restore từ server khác

Bước 4: Restore (Phục hồi)

Cảnh báo quan trọng

Restore ghi đè toàn bộ dữ liệu hiện tại. Đảm bảo:

  1. Đã tạo backup mới nhất trước khi restore
  2. Tất cả user đã logout
  3. Không có thao tác đang diễn ra trên hệ thống

Quy trình restore

  1. Chọn backup từ danh sách (hoặc upload file backup)
  2. Nhấn Restore
  3. Xác nhận hành động (không thể hoàn tác)
  4. Restorer đọc file backup → ghi ngược vào database
  5. Server tự động khởi động lại sau khi restore hoàn tất

Restore từ command line

Ngoài giao diện, có thể restore qua CLI:

bash
# Restore từ file backup trên server
digiforce restore --file storage/backups/backup-2024-03-15.nbdump

Migration giữa các môi trường

Plugin hỗ trợ chuyển dữ liệu giữa các môi trường (dev → staging → production):

  1. Tạo backup trên môi trường nguồn (ví dụ: dev)
  2. Download file backup
  3. Upload file backup lên môi trường đích (ví dụ: staging)
  4. Restore — dữ liệu và cấu hình được chuyển sang

WARNING

Đảm bảo phiên bản Digiforce trên môi trường đích tương thích với backup. Backup từ phiên bản mới có thể không restore được trên phiên bản cũ.

Các collection có thể backup

Gọi API để xem danh sách:

typescript
const response = await agent.resource('backupFiles').dumpableCollections();
// Trả về danh sách collections có thể đưa vào backup

Lưu trữ file backup

File backup được lưu trong thư mục storage/backups/ trên server:

Đặc điểmChi tiết
Vị trí./storage/backups/
Định dạng.nbdump (archive format nội bộ)
Đặt tênbackup-{timestamp}.nbdump
MetadataĐọc từ filesystem (tên, kích thước, ngày tạo)

Lưu ý quan trọng

  • Restore ghi đè toàn bộ dữ liệu — luôn tạo backup mới nhất trước khi restore
  • Test restore định kỳ để đảm bảo backup hoạt động (trên môi trường test)
  • Lưu file backup ở nơi an toàn ngoài server (S3, NAS, external drive)
  • Backup lớn mất thời gian — chạy vào giờ thấp điểm
  • File backup chứa dữ liệu nhạy cảm — bảo vệ bằng mã hoá hoặc kiểm soát truy cập
  • Plugin không tạo bảng riêng trong database — metadata đọc trực tiếp từ filesystem