วิธี Backup และ Restore เว็บไซต์ใน DirectAdmin

การสำรองข้อมูลเว็บไซต์เป็นสิ่งสำคัญที่ไม่ควรมองข้าม DirectAdmin มีระบบ Backup ในตัวที่ครอบคลุมทั้งไฟล์เว็บไซต์ ฐานข้อมูล และการตั้งค่า Email

วิธีสร้าง Backup

  1. ล็อกอิน DirectAdmin แล้วไปที่ Advanced Features
  2. คลิก Create/Restore Backups
  3. เลือกรายการที่ต้องการ Backup:
    • Domains — ไฟล์เว็บไซต์ทั้งหมด
    • Databases — ฐานข้อมูล MySQL
    • Emails — อีเมลในกล่องจดหมาย
    • Email Settings — การตั้งค่า Forwarder, Filter
  4. คลิก Create Backup
  5. รอระบบสร้าง Backup เสร็จ แล้วดาวน์โหลดไฟล์

วิธีดาวน์โหลด Backup

หลังสร้าง Backup แล้ว จะเห็นไฟล์ .tar.gz ปรากฏในรายการ คลิกดาวน์โหลดเพื่อเก็บไว้บนเครื่องของคุณ แนะนำให้ Backup อย่างน้อยสัปดาห์ละครั้ง

วิธี Restore จาก Backup

  1. ไปที่ Create/Restore Backups
  2. คลิก Restore ในแท็บ Restore
  3. อัปโหลดไฟล์ Backup หรือเลือกจาก Backup ที่มีอยู่
  4. เลือกรายการที่ต้องการ Restore
  5. คลิก Restore
หน้า Backup and Restore ใน DirectAdmin
หน้า Backup and Restore ใน DirectAdmin
กดปุ่ม Create Backup (วงแดง) เพื่อสร้าง Backup ใหม่
กดปุ่ม Create Backup (วงแดง) เพื่อสร้าง Backup ใหม่

แนะนำ: อย่าเก็บ Backup ไว้บนเซิร์ฟเวอร์เดียวกับเว็บไซต์ หากเซิร์ฟเวอร์พัง Backup ก็พังด้วย ให้ดาวน์โหลดมาเก็บบนเครื่องตัวเอง หรือ Cloud Storage เช่น Google Drive

ระบบ Backup ใน DirectAdmin ทำงานอย่างไร

เมื่อคุณสั่ง Create Backup ใน DirectAdmin ระบบจะสร้างไฟล์ Archive รูปแบบ .tar.gz ซึ่งเป็นการบีบอัดข้อมูลทั้งหมดในบัญชีโฮสติ้งของคุณ โดยแบ่งเป็น 2 โหมดหลัก:

Full Backup (สำรองทั้งหมด)

Full Backup จะรวมทุกอย่างในบัญชีไว้ในไฟล์เดียว ได้แก่ ไฟล์เว็บไซต์ทั้งหมดใน public_html และ home directory, ฐานข้อมูล MySQL ทุก Database, อีเมลในกล่องจดหมายพร้อม Forwarder, Filter และ Autoresponder รวมถึง DNS Zone Records ของโดเมน ไฟล์ที่ได้จะมีขนาดใหญ่ตามสัดส่วนของข้อมูลที่มี และเหมาะสำหรับการ Migration ย้ายโฮสติ้งหรือการสำรองข้อมูลสมบูรณ์ก่อนเปลี่ยนแปลงสำคัญ

Partial Backup (สำรองบางส่วน)

Partial Backup ให้คุณเลือกเฉพาะ Component ที่ต้องการ เช่น สำรองแค่ฐานข้อมูลเพียงอย่างเดียวก่อนอัปเดต WordPress ไม่ต้องรอ Backup ไฟล์ทั้งหมดที่อาจใช้เวลานาน ไฟล์ที่ได้จะมีขนาดเล็กกว่าและใช้เวลาสร้างสั้นกว่า เหมาะสำหรับ Backup ก่อนการเปลี่ยนแปลงเฉพาะจุด

ไฟล์ Backup ที่สร้างเสร็จแล้วจะถูกเก็บไว้ใน folder backups/ ภายใต้ home directory ของบัญชี คุณสามารถดาวน์โหลดผ่าน File Manager หรือ FTP ได้ตลอดเวลา

การตั้งค่า Automatic Scheduled Backup

การ Backup ด้วยมือนั้นเสี่ยงถูกลืม วิธีที่ดีกว่าคือตั้งค่า Scheduled Backup ให้ทำงานอัตโนมัติตามเวลาที่กำหนด ใน DirectAdmin ทำได้ด้วยการใช้ Cron Job ร่วมกับสคริปต์ Backup:

ความถี่ที่แนะนำ

การตั้ง Cron Backup อัตโนมัติ

ไปที่ Advanced Features → Cron Jobs แล้วเพิ่ม Cron ที่รันสคริปต์ Backup ของคุณ ตัวอย่างสำหรับ Backup ฐานข้อมูล MySQL รายวันเวลา 02:00 น.:

0 2 * * * /usr/bin/mysqldump -u username -ppassword dbname > /home/username/backups/db_$(date +\%Y\%m\%d).sql

Retention Policy — จำนวน Backup ที่ควรเก็บ

อย่าเก็บ Backup ไว้ทุกวันโดยไม่มีการลบ ไฟล์ Backup จะสะสมจนเต็ม Disk Space ในที่สุด ตั้งนโยบายการลบ Backup เก่าออกโดยอัตโนมัติ เช่น เก็บย้อนหลังไม่เกิน 7 วัน โดยเพิ่ม Cron อีกตัวเพื่อลบไฟล์เก่า:

0 3 * * * find /home/username/backups/ -name "db_*.sql" -mtime +7 -delete

การ Restore ไฟล์และฐานข้อมูลจาก Backup

เมื่อเกิดปัญหาและต้องกู้คืนข้อมูล DirectAdmin รองรับการ Restore ทั้งแบบ Full Restore และแบบ Partial Restore เลือกเฉพาะส่วนที่ต้องการ:

Partial Restore (กู้คืนเฉพาะส่วน)

เมื่อปัญหาเกิดเฉพาะส่วน เช่น ฐานข้อมูลเสียหายแต่ไฟล์ยังดี คุณสามารถ Restore เฉพาะ Database โดยไม่แตะไฟล์เว็บไซต์ได้ ทำให้การกู้คืนเร็วขึ้นมากและลดความเสี่ยงที่ไฟล์ที่ดีอยู่จะถูกเขียนทับโดยไม่จำเป็น

ขั้นตอน Partial Restore:

  1. ไปที่ Advanced Features → Create/Restore Backups
  2. ในแท็บ Restore เลือกไฟล์ Backup ที่ต้องการ
  3. ยกเลิกติ๊กประเภทข้อมูลที่ไม่ต้องการ Restore เก็บไว้เฉพาะอย่างที่ต้องการ
  4. คลิก Restore และรอจนเสร็จ

Selective File Restore ผ่าน Archive

ถ้าต้องการกู้คืนเฉพาะไฟล์บางไฟล์ เช่น ไฟล์ wp-config.php หรือ .htaccess ที่ถูกลบโดยบังเอิญ สามารถแตก .tar.gz บนเครื่องของคุณก่อน แล้วเลือก Upload ไฟล์เฉพาะที่ต้องการผ่าน File Manager หรือ FTP โดยไม่ต้อง Restore ทั้งไฟล์ Backup ซึ่งจะเขียนทับข้อมูลใหม่ที่ยังดีอยู่

กลยุทธ์ Backup ที่ดี: 3-2-1 Rule

หลักการ 3-2-1 เป็นมาตรฐานอุตสาหกรรมสำหรับการสำรองข้อมูลที่เชื่อถือได้ กำหนดโดยผู้เชี่ยวชาญด้านความปลอดภัยข้อมูล และใช้กันทั่วโลกในองค์กรทุกขนาด ตั้งแต่เว็บไซต์ส่วนตัวไปจนถึงบริษัทใหญ่ ประกอบด้วย 3 หลักการง่ายๆ ดังนี้:

ตัวอย่าง 3-2-1 สำหรับเว็บไซต์ทั่วไป

สำหรับเว็บไซต์ที่ทำงานบน Shared Hosting กับ DirectAdmin วิธีปฏิบัติตาม 3-2-1 ที่ง่ายที่สุดคือ:

การทำแค่นี้ใช้เวลาไม่มากแต่ช่วยให้คุณสามารถกู้คืนเว็บไซต์ได้ในทุกสถานการณ์ ไม่ว่าจะเป็นเซิร์ฟเวอร์พัง เครื่องคอมพิวเตอร์เสีย หรือแม้แต่ Cloud Account ถูกปิด

Backup ก่อน Update ทุกครั้ง

ก่อนอัปเดต WordPress, Plugin, PHP Version หรือ Theme ควรสร้าง Backup ทันที เพราะการอัปเดตอาจทำให้เว็บไซต์พังในบางกรณี การมี Backup ใหม่ล่าสุดก่อน Update จะทำให้กู้คืนได้ภายใน 5–10 นาทีหากมีปัญหา แทนที่จะต้องใช้เวลาหลายชั่วโมงในการแก้ไข

การทดสอบ Restore เพื่อยืนยันว่า Backup ใช้งานได้จริง

Backup ที่ไม่เคยทดสอบ Restore เลยนั้น เท่ากับไม่มี Backup จริงๆ เพราะคุณไม่มีทางรู้ว่าไฟล์ Backup เสียหายหรือ Corrupt ไปแล้วจนกว่าจะถึงเวลาที่ต้องการใช้งานจริง ซึ่งอาจสายเกินไปแล้ว การทดสอบ Restore เป็นระยะๆ เป็นขั้นตอนที่หลายคนมองข้ามแต่มีความสำคัญอย่างมาก

วิธีทดสอบ Restore Drill

ไม่จำเป็นต้อง Restore ลงเว็บไซต์จริง ให้สร้าง Staging Environment แทน โดยทำตามขั้นตอนนี้:

  1. สร้าง Subdomain เช่น test.yourdomain.com หรือใช้บัญชี Hosting สำรอง
  2. Restore ไฟล์ Backup ลงใน Subdomain นั้น โดยเลือก Restore เฉพาะ Files และ Database
  3. ตรวจสอบว่าหน้าเว็บโหลดได้ปกติ และ Database แสดงข้อมูลที่ถูกต้อง
  4. ทดสอบฟังก์ชันสำคัญ เช่น Login, ฟอร์มติดต่อ, หรือตะกร้าสินค้า
  5. ลบ Subdomain ทดสอบออกเมื่อยืนยันแล้วว่า Backup ใช้งานได้จริง

สิ่งที่ต้องตรวจสอบหลัง Restore

ความถี่ในการทดสอบ

แนะนำให้ทดสอบ Restore ทุก 1–3 เดือน ขึ้นอยู่กับความสำคัญของเว็บไซต์ สำหรับเว็บไซต์ E-Commerce หรือเว็บที่มีธุรกรรมทางการเงิน ควรทดสอบทุกเดือน สำหรับเว็บทั่วไปอาจทดสอบทุก 3 เดือนก็เพียงพอ การลงทุนเวลา 30–60 นาทีต่อรอบเพื่อทดสอบ Restore จะช่วยประหยัดเวลาและเงินได้มากหากเกิดเหตุฉุกเฉินจริงๆ

ต้องการ Hosting พร้อม Backup อัตโนมัติ?

AsiaGB Hosting มี Backup อัตโนมัติ 2 ครั้ง/เดือน พร้อม DirectAdmin ในทุกแพ็กเกจ

ดูแพ็กเกจ Hosting