Backup và Khôi phục dữ liệu

Tạo bởi Hoàng Vũ, chỉnh sửa cuối lúc 8 tháng 4, 2025

Một website thương mại điện tử hoạt động liên tục luôn đối mặt với rủi ro: mất dữ liệu, hỏng server, plugin lỗi, hoặc bị hack.
Backup thường xuyên là điều bắt buộc để đảm bảo khả năng phục hồi nhanh chónggiảm thiểu thiệt hại.

Backup và Khôi phục dữ liệu

1. Backup database (MySQL / PostgreSQL)**

MySQL:

mysqldump -u [user] -p[password] [database] > backup.sql

PostgreSQL:

pg_dump -U [user] [database] > backup.sql

Gợi ý: nên lưu backup theo định dạng kèm ngày tháng, ví dụ backup_2025-04-07.sql

2. Backup source code & thư mục quan trọng

  • Các thư mục cần backup:

    • app/ – nơi chứa plugin, cấu hình, template override
    • html/upload/ – chứa ảnh sản phẩm, file media
    • composer.json, composer.lock, package.json
    • .env, docker-compose.yml nếu dùng Docker
  • Dùng lệnh tar:

tar -czvf eccube_backup_2025-04-07.tar.gz /var/www/eccube

3. Lên lịch tự động backup (cron job)

Tạo cron job chạy mỗi ngày lúc 3h sáng:

0 3 * * * /usr/bin/mysqldump -u root -p123456 eccube > /home/backup/db_$(date +\%F).sql
  • Có thể kết hợp rclone để đẩy backup lên Google Drive, Dropbox...
  • Dùng logrotate hoặc script để xóa backup cũ sau X ngày

4. Khôi phục hệ thống khi gặp lỗi

Restore database:

mysql -u [user] -p [database] < backup.sql

Restore source code:

Giải nén file .tar.gz vào lại thư mục EC-CUBE

tar -xzvf eccube_backup.tar.gz -C /var/www

Sau khi restore, nhớ chạy:

php bin/console cache:clear --env=prod

Kết luận

Backup không chỉ là thao tác kỹ thuật, mà là một phần của chiến lược bảo mật và đảm bảo tính liên tục cho hệ thống.
Dù bạn làm việc một mình hay trong team, hãy thiết lập cơ chế backup tự động, thường xuyên, dễ khôi phục.

Website Logo

Với hơn 10 năm kinh nghiệm lập trình web và từng làm việc với nhiều framework, ngôn ngữ như PHP, JavaScript, React, jQuery, CSS, HTML, CakePHP, Laravel..., tôi hy vọng những kiến thức được chia sẻ tại đây sẽ hữu ích và thiết thực cho các bạn.

Bình luận

Website Logo

Chào, tôi là Vũ. Đây là blog hướng dẫn lập trình của tôi.

Liên hệ công việc qua email dưới đây.

lhvuctu@gmail.com

Chúng Tôi Trên

Bạn đang muốn học về lập trình website?

Bạn cần nâng cao kiến thức chuyên nghiệp hơn để nâng cao cơ hội nghề nghiệp? Liên hệ