PlusMagi's Blog By Pitt Phunsanit Database การสำรองข้อมูลสำคัญ (Backup ข้อมูลลง External Drive หรือ Cloud Storage ตามหลัก 3-2-1 Rule)

การสำรองข้อมูลสำคัญ (Backup ข้อมูลลง External Drive หรือ Cloud Storage ตามหลัก 3-2-1 Rule)

ในโลกดิจิทัลที่ข้อมูลคือสินทรัพย์ที่มีค่าที่สุด การสูญหายของข้อมูลฐานข้อมูล (Database) ไม่ว่าจะเป็นเพราะฮาร์ดแวร์ขัดข้อง การโจมตีทางไซเบอร์ หรือความผิดพลาดของมนุษย์ ล้วนนำมาซึ่งความเสียหายทางธุรกิจที่ประเมินค่าไม่ได้ ดังนั้น การวางแผนและดำเนินการสำรองข้อมูล (Backup) จึงไม่ใช่แค่ทางเลือก แต่เป็นข้อกำหนดด้านความต่อเนื่องทางธุรกิจ (Business Continuity Mandate) ที่ทุกองค์กรที่ใช้ PostgreSQL ต้องให้ความสำคัญสูงสุด

เข้าใจหลักการ 3-2-1: มาตรฐานทองคำของการสำรองข้อมูล

หลักการ 3-2-1 คือแนวทางสากลที่กำหนดให้องค์กรต้องมีสำเนาข้อมูลอย่างน้อย 3 ชุด (Three copies) เก็บไว้ในสื่อจัดเก็บที่แตกต่างกัน 2 ประเภท (Two different media types) และต้องนำสำเนาชุดที่ 1 ไปเก็บไว้นอกสถานที่จริง 1 แห่ง (One copy offsite) การปฏิบัติตามหลักการนี้จะช่วยให้มั่นใจได้ว่า แม้แหล่งจัดเก็บข้อมูลหลักและสำรองในพื้นที่เกิดความเสียหายพร้อมกัน คุณก็ยังมีข้อมูลที่สามารถกู้คืนได้อย่างแน่นอน

การสำรองข้อมูล PostgreSQL ด้วย pg_dump

สำหรับระบบฐานข้อมูล PostgreSQL เครื่องมือมาตรฐานและมีประสิทธิภาพที่สุดในการสำรองข้อมูลคือ pg_dump ซึ่งจะทำการส่งออกโครงสร้าง (Schema) และข้อมูล (Data) ทั้งหมดออกมาเป็นไฟล์ที่สามารถนำไปกู้คืนได้ (Restorable format) เพื่อให้สอดคล้องกับหลักการ 3-2-1 เราต้องกำหนดกลยุทธ์การจัดเก็บที่แตกต่างกัน:

ขั้นตอนที่ 1: การสร้าง Backup (Copy 1 – Primary)

เราใช้ pg_dump เพื่อสร้างไฟล์สำรองข้อมูลหลัก นี่คือคำสั่งพื้นฐานที่ใช้ในการสำรองฐานข้อมูลชื่อ mydatabase:

SQL

pg_dump -h localhost -U youruser -d mydatabase > mydatabase_backup.sql

mydatabase_backup.sql คือไฟล์สำรองข้อมูลชุดแรกที่อยู่ในระบบหลัก (หรือเซิร์ฟเวอร์ที่เข้าถึงได้ทันที) ซึ่งเป็นข้อมูลที่พร้อมใช้งานที่สุด

ขั้นตอนที่ 2: การจัดเก็บสำเนา (Applying 3-2-1)

  1. 3 Copies: ฐานข้อมูลหลัก (Live DB) + ไฟล์ Backup ในเครื่อง (Local) + ไฟล์ Backup บน Cloud (Offsite)
  2. 2 Media Types: Local Disk/Server (เช่น NAS หรือ External Drive) และ Cloud Storage (เช่น AWS S3, Google Cloud Storage)
  3. 1 Offsite: ต้องนำสำเนาชุดที่ 3 ไปเก็บนอกสถานที่จริง (Cloud Storage คือตัวอย่างที่ดีที่สุด)

คำแนะนำทางสถาปัตยกรรม: เพื่อให้การสำรองข้อมูลเป็นไปตามหลัก 3-2-1 อย่างสมบูรณ์ ควรตั้ง Cron Job หรือ Script ให้รัน pg_dump อย่างสม่ำเสมอ และกำหนดให้ Script นั้นทำการคัดลอกไฟล์ที่ได้ไปยังปลายทางที่แตกต่างกัน 2 แห่งเสมอ

บทสรุป: การทดสอบคือหัวใจของการสำรองข้อมูล

การมีไฟล์ Backup ไม่ได้หมายความว่าคุณปลอดภัย การสำรองข้อมูลที่สมบูรณ์ต้องมาพร้อมกับการทดสอบการกู้คืน (Restore Test) อย่างสม่ำเสมอ องค์กรควรจัดตารางเวลาเพื่อจำลองสถานการณ์ภัยพิบัติและทดลองกู้คืนฐานข้อมูลจากไฟล์ Backup ทั้งบน External Drive และ Cloud Storage การทำเช่นนี้จะช่วยให้มั่นใจได้ว่าระบบ 3-2-1 ของคุณทำงานได้อย่างมีประสิทธิภาพจริง เมื่อถึงเวลาวิกฤต ข้อมูลของ PostgreSQL ของคุณจะพร้อมใช้งานเสมอ

Exit mobile version