สำรองและกู้คืนฐานข้อมูลบน BrewInTH: กันข้อมูลหายเมื่อ AI ทำพลาด

อะไรถูกสำรองบ้างบน BrewInTH เปิดสำรองฐานข้อมูลรายวันยังไง กู้คืนยังไง ดาวน์โหลดเก็บเองยังไง และควรกดสำรองเองตอนไหนก่อนให้ AI แก้ข้อมูล
เว็บที่มีฐานข้อมูลคือเว็บที่มีของมีค่า รายชื่อลูกค้า ออเดอร์ คิวจอง คะแนนนักเรียน ทั้งหมดอยู่ในฐานข้อมูล โค้ดหายยังให้ AI เขียนใหม่ได้ แต่ข้อมูลที่ลูกค้ากรอกมา หายแล้วหายเลย
และข้อมูลหายได้ง่ายกว่าที่คิด ไม่ใช่เพราะเครื่องพัง แต่เพราะ คำสั่งผิดคำสั่งเดียว เช่น AI รัน migration ที่ลบคอลัมน์ หรือสคริปต์แก้ข้อมูลที่ลืมใส่เงื่อนไข บทความนี้อธิบายว่าบน BrewInTH อะไรถูกสำรองบ้าง เปิดการสำรองฐานข้อมูลยังไง กู้คืนยังไง และควรกดสำรองเองตอนไหน
สรุปสั้นก่อนอ่าน
✅ การสำรองข้อมูลเป็น บริการเสริม Backups 99 บาทต่อเดือน ครอบคลุมทุกโปรเจกต์ในบัญชี ถ้าไม่ซื้อ ระบบไม่สำรองฐานข้อมูลให้
✅ เปิดแล้วระบบสำรองฐานข้อมูล อัตโนมัติทุกวัน เก็บ 7 ชุดล่าสุด และกด สำรองตอนนี้ เองได้ทุกเมื่อ
✅ กู้คืนได้เองในคอนโซล ระบบสำรองข้อมูลปัจจุบันไว้ให้ก่อน 1 ชุดเสมอ เผื่อกู้ผิดชุด
✅ ดาวน์โหลดไฟล์สำรองไปเก็บที่อื่นได้ ควรทำเป็นประจำ
✅ กดสำรองเองทุกครั้งก่อนให้ AI แก้โครงสร้างตารางหรือแก้ข้อมูลจำนวนมาก
บนเว็บหนึ่งเว็บ มีอะไรต้องสำรองบ้าง
เว็บบน BrewInTH มีของ 3 อย่าง แต่ละอย่างมีวิธีย้อนกลับต่างกัน

- โค้ดของเว็บ ทุกครั้งที่ deploy ระบบเก็บเป็นเวอร์ชัน ย้อนได้จากแท็บ การเผยแพร่ › ประวัติการเผยแพร่ ด้วยปุ่ม กลับมาใช้เวอร์ชันนี้ ไม่ต้องซื้ออะไรเพิ่ม (และคุณควรมีโค้ดต้นฉบับเก็บไว้ที่เครื่องหรือ Git ด้วย)
- ฐานข้อมูล (PostgreSQL, MySQL, MariaDB, MongoDB) การย้อนเวอร์ชันโค้ด ไม่ย้อนข้อมูล ต้องใช้การสำรองฐานข้อมูล ซึ่งเป็นเรื่องหลักของบทความนี้
- ไฟล์ในพื้นที่ถาวร (/data) เช่น รูปที่ผู้ใช้อัปโหลด บริการเสริมเดียวกันสำรอง volume นี้ให้ทุกวัน
ส่วน Redis เป็นที่พักข้อมูลชั่วคราว (cache) ไม่มีการสำรอง แอปควรสร้างข้อมูลในนั้นใหม่ได้เอง อย่าเก็บข้อมูลสำคัญไว้ใน Redis อย่างเดียว
บริการเสริม Backups ได้อะไรบ้าง
การสำรองข้อมูลบน BrewInTH เป็นบริการเสริมชื่อ Backups ราคา 99 บาทต่อเดือน ซื้อเพิ่มได้กับทุกแพ็กเกจ ซื้อครั้งเดียวครอบคลุมทุกโปรเจกต์ในบัญชี
- สำรองฐานข้อมูลอัตโนมัติทุกวัน เก็บ 7 ชุดล่าสุด ชุดที่เก่ากว่าถูกลบเอง
- สำรองเองได้ทุกเมื่อ ด้วยปุ่ม สำรองตอนนี้ เก็บ 5 ชุดล่าสุดของแบบสั่งเอง
- กู้คืน ดาวน์โหลด และลบ ไฟล์สำรองได้เองในคอนโซล
- สำรอง volume /data ของแอปทุกวัน
ถ้าไม่ซื้อ ระบบไม่สำรองฐานข้อมูลให้ คุณต้องหาวิธีเก็บสำเนาข้อมูลเอง เช่น ให้ AI ทำปุ่ม export ข้อมูลเป็นไฟล์ในหลังบ้านของแอป แล้วดาวน์โหลดเก็บเป็นประจำ
ถ้าเคยซื้อแล้วหยุดต่ออายุ ไฟล์สำรองที่มีอยู่ยังดาวน์โหลดและกู้คืนได้ แต่จะไม่มีชุดใหม่เพิ่ม
เปิดการสำรองฐานข้อมูล
- ในคอนโซลเปิดเมนู แพ็กเกจ / ชำระเงิน เลื่อนไปที่ ซื้อทรัพยากรเพิ่ม แล้วซื้อ Backups (ติ๊ก ต่ออายุอัตโนมัติทุกเดือน ได้ ถ้าไม่อยากให้ขาดช่วง)
- เปิดโปรเจกต์ ไปที่แท็บ ฐานข้อมูล เลือกฐานข้อมูล แล้วเลื่อนลงมาที่กรอบ สำรองข้อมูล
- ตรวจว่าช่อง สำรองอัตโนมัติทุกวัน (เก็บ 7 ชุด) ติ๊กอยู่ (ค่าเริ่มต้นคือเปิด)
- กด สำรองตอนนี้ หนึ่งครั้ง เพื่อให้มีชุดแรกทันทีโดยไม่ต้องรอรอบรายวัน
ไม่กี่อึดใจจะมีแถวใหม่ในตาราง สถานะ เสร็จแล้ว พร้อมขนาดไฟล์ ตารางแสดงประเภทของแต่ละชุด: รายวัน (ระบบทำให้) สั่งเอง (คุณกดเอง) และ ก่อนกู้คืน (ระบบทำก่อนกู้คืน)
กู้คืนฐานข้อมูล
ใช้เมื่อข้อมูลเสียหายและต้องการย้อนกลับไปยังชุดที่สำรองไว้

- แท็บ ฐานข้อมูล › กรอบ สำรองข้อมูล หาชุดที่ต้องการจากวันเวลาในตาราง
- กด กู้คืน ที่แถวนั้น
- อ่านคำเตือน พิมพ์ชื่อฐานข้อมูลเพื่อยืนยัน แล้วกด กู้คืนเดี๋ยวนี้
- รอจนงานเสร็จ แล้วเปิดเว็บตรวจข้อมูล
สิ่งที่ควรรู้ก่อนกด
- ข้อมูลปัจจุบันทั้งหมดถูกแทนที่ ด้วยข้อมูล ณ เวลาของชุดนั้น ออเดอร์หรือสมาชิกที่เข้ามา หลัง เวลานั้นจะไม่อยู่
- ระบบสำรองข้อมูลปัจจุบันไว้ก่อน 1 ชุด (ประเภท "ก่อนกู้คืน" เก็บ 3 ชุดล่าสุด) ถ้ากู้ผิดชุด ยังกู้กลับมาที่จุดก่อนกดได้
- แอปอาจใช้งานไม่ได้ชั่วครู่ ระหว่างกู้คืน เลือกช่วงที่คนใช้น้อย
- กู้คืนแล้วโค้ดไม่เปลี่ยน ถ้าโค้ดเวอร์ชันปัจจุบันต้องการตารางหรือคอลัมน์ที่ชุดเก่าไม่มี ให้ย้อนโค้ดไปเวอร์ชันที่เข้ากัน หรือให้ AI รัน migration อีกรอบ
ดาวน์โหลดไฟล์สำรองเก็บไว้ที่อื่น
ไฟล์สำรองเก็บบนเซิร์ฟเวอร์ของ BrewInTH กด ดาวน์โหลด ที่แถวไหนก็ได้เพื่อเก็บสำเนาไว้เอง ชนิดไฟล์ตามชนิดฐานข้อมูล
- PostgreSQL ไฟล์
.pgdump(เปิดด้วยpg_restore) - MySQL / MariaDB ไฟล์
.sql.gz(ไฟล์ SQL ที่บีบอัด) - MongoDB ไฟล์
.mongo.jsonl.gz(เอกสารทีละบรรทัดแบบ JSON ที่บีบอัด)
ข้อมูลสำคัญไม่ควรมีสำเนาอยู่ที่เดียว ดาวน์โหลดเก็บไว้ในคอมพิวเตอร์หรือคลาวด์ของคุณสักเดือนละครั้ง หรือทุกครั้งก่อนเปลี่ยนแปลงใหญ่ และเก็บให้ปลอดภัย เพราะในไฟล์มีข้อมูลลูกค้าทั้งหมด
ควรกด "สำรองตอนนี้" ตอนไหน
การสำรองรายวันช่วยเรื่องที่ไม่คาดคิด แต่มีบางจังหวะที่ควรกดเองก่อนเสมอ
- ก่อนให้ AI แก้โครงสร้างตาราง (migration) โดยเฉพาะที่ลบหรือเปลี่ยนชื่อคอลัมน์
- ก่อนรัน สคริปต์แก้ข้อมูลจำนวนมาก เช่น ปรับราคาทุกสินค้า ล้างข้อมูลซ้ำ
- ก่อน นำเข้าข้อมูล จากไฟล์หรือระบบเดิม
- ก่อน deploy เวอร์ชันที่เปลี่ยนแปลงเยอะ
ใส่กติกานี้ให้ AI ไว้เลย
กติกาเรื่องข้อมูลของโปรเจกต์นี้บน BrewInTH
1. ก่อนรัน migration ที่ลบ/เปลี่ยนชื่อตารางหรือคอลัมน์ หรือคำสั่งที่แก้ข้อมูลจำนวนมาก
ให้หยุดและบอกฉันก่อน ฉันจะกด "สำรองตอนนี้" ในคอนโซล แล้วค่อยให้ทำต่อ
2. ห้ามรัน migrate:fresh, DROP, TRUNCATE หรือคำสั่งล้างข้อมูลเพื่อแก้ปัญหา
3. migration ต้องไม่ทำให้ข้อมูลเดิมหาย ถ้าจำเป็นต้องลบคอลัมน์ ให้ทำเป็น 2 รอบ
(รอบแรกเลิกใช้ รอบถัดไปค่อยลบ)
4. ทำเสร็จแล้ว บอกฉันว่าตารางไหนเปลี่ยน และข้อมูลเดิมยังอยู่ครบไหม
เมื่อ AI ทำข้อมูลพัง: ทำตามลำดับนี้
- หยุด AI ก่อน อย่าให้มัน "ลองแก้" ต่อ เพราะอาจเขียนทับข้อมูลเพิ่ม
- เปิดกรอบ สำรองข้อมูล ดูว่าชุดล่าสุดก่อนเกิดเหตุคือชุดไหน
- ประเมินว่าข้อมูลที่เข้ามาหลังชุดนั้นมีมากแค่ไหน ถ้าน้อย กู้คืนแล้วกรอกเพิ่มเอง ถ้ามาก ให้ AI อธิบายก่อนว่าเสียหายตรงไหน บางครั้งแก้เฉพาะตารางเดียวได้
- กู้คืน แล้วตรวจเว็บ
- ถ้าไม่แน่ใจ กด คุยกับทีมงาน ก่อนกู้คืน
คำถามที่พบบ่อย
แพ็กเกจฟรีซื้อ Backups ได้ไหม
ได้ Backups ซื้อเพิ่มได้กับทุกแพ็กเกจ รวมถึงแพ็กเกจฟรี
สำรองรายวันทำตอนกี่โมง
ระบบทำให้วันละครั้งต่อฐานข้อมูล ห่างจากชุดก่อนหน้าอย่างน้อย 24 ชั่วโมง ไม่ได้กำหนดเวลาตายตัว ดูเวลาของชุดล่าสุดได้ที่ สำรองล่าสุด ในกรอบสำรองข้อมูล ถ้าต้องการชุด ณ เวลาที่แน่นอน ให้กด สำรองตอนนี้
กู้คืนเฉพาะบางตารางได้ไหม
ปุ่มกู้คืนในคอนโซลแทนที่ทั้งฐานข้อมูล ถ้าต้องการเฉพาะบางตาราง ให้ดาวน์โหลดไฟล์สำรอง แล้วให้ AI ที่ทำงานบนคอมพิวเตอร์ดึงเฉพาะข้อมูลที่ต้องการจากไฟล์ไปใส่กลับ
ไฟล์ใน /data กู้คืนเองได้ไหม
ตอนนี้ยังไม่มีปุ่มกู้คืน /data ในคอนโซล ถ้าต้องการกู้ไฟล์ในพื้นที่ถาวร ให้กด คุยกับทีมงาน
ลบโปรเจกต์แล้วไฟล์สำรองยังอยู่ไหม
ไม่อยู่ ไฟล์สำรองของฐานข้อมูลถูกลบไปพร้อมโปรเจกต์ ดาวน์โหลดเก็บไว้ก่อนลบเสมอ
Redis ทำไมไม่สำรอง
Redis บน BrewInTH ออกแบบให้เป็น cache และคิวงาน ข้อมูลที่ต้องอยู่ถาวรควรอยู่ในฐานข้อมูลหลัก
สรุป
โค้ดย้อนได้จากประวัติการเผยแพร่ แต่ข้อมูลต้องมีการสำรอง เปิดบริการเสริม Backups แล้วกด สำรองตอนนี้ หนึ่งครั้ง จากนั้นระบบสำรองให้ทุกวันและเก็บ 7 ชุดล่าสุด กดสำรองเองทุกครั้งก่อนให้ AI แตะโครงสร้างตาราง ดาวน์โหลดสำเนาเก็บไว้ที่อื่นเป็นประจำ และเมื่อต้องกู้คืน ระบบเก็บข้อมูลปัจจุบันไว้ให้ก่อนเสมอ
