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