ความสอดคล้องของข้อมูลในระหว่างการสำรองข้อมูลเชิงตรรกะบน AWS RDS เป็นสิ่งจำเป็นเพื่อให้แน่ใจว่ามีความสมบูรณ์และความน่าเชื่อถือของการสำรองข้อมูลฐานข้อมูล การสำรองข้อมูลเชิงตรรกะหมายถึงการส่งออกข้อมูลและสคีมาฐานข้อมูลในรูปแบบตรรกะ (เช่นไฟล์ Dump SQL) แทนที่จะเป็นสแน็ปช็อตดิสก์ดิสก์ การรับรองความสอดคล้องของข้อมูลในระหว่างการสำรองข้อมูลเชิงตรรกะนั้นจำเป็นต้องมีแนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับเวลาสำรองข้อมูลการกำหนดค่าฐานข้อมูลและกลไกการตรวจสอบ
ใช้คุณสมบัติการทำธุรกรรมความสอดคล้องของฐานข้อมูล
การสำรองข้อมูลเชิงตรรกะบน AWS RDS มักจะเกี่ยวข้องกับการส่งออกข้อมูลโดยใช้เครื่องมือฐานข้อมูลดั้งเดิมเช่น `mySqldump` สำหรับ mySQL หรือ` pg_dump` สำหรับ postgreSQL เครื่องมือเหล่านี้มีตัวเลือกเพื่อให้แน่ใจว่าการทำธุรกรรมสอดคล้องกันระหว่างการสำรองข้อมูล:
- ใช้โหมดสแน็ปช็อตหรือธุรกรรมที่สอดคล้องกัน: สำหรับ postgreSQL `pg_dump` รองรับการถ่ายโอนข้อมูลที่สอดคล้องกันโดยการล็อคตารางหรือใช้สแน็ปช็อตธุรกรรมเพื่อให้การถ่ายโอนข้อมูลเป็นจุดเดียวในเวลา สำหรับ MySQL ตัวเลือกเช่น `-การทำธุรกรรมแบบร้องเพลงใน` mysqldump` เปิดใช้งานการสำรองข้อมูลที่สอดคล้องกันบนตาราง innoDB โดยการชะลอการล็อคและทิ้งภายในธุรกรรม
- ล็อคตารางด้วยความระมัดระวัง: ตารางการล็อคช่วยให้มั่นใจได้ถึงความสอดคล้อง แต่สามารถบล็อกการเขียนได้ดังนั้นจึงต้องใช้อย่างระมัดระวังโดยเฉพาะในสภาพแวดล้อมการผลิตที่มีการจราจรสูง
-ดำเนินการสำรองข้อมูลในช่วงเวลากิจกรรมต่ำ: การจัดตารางการสำรองข้อมูลเชิงตรรกะในช่วงเวลานอกเวลาที่มีความเสี่ยงลดความเสี่ยงของความขัดแย้งลดเวลาการล็อคและลดผลกระทบต่อประสิทธิภาพการใช้งานของแอปพลิเคชัน
ใช้ประโยชน์จากการสำรองข้อมูลและสแน็ปช็อตอัตโนมัติ
แม้ว่าการสำรองข้อมูลอัตโนมัติใน AWS RDS นั้นมีอยู่จริงแทนที่จะเป็นตรรกะ แต่ก็มีส่วนช่วยในการสำรองข้อมูลโดยรวม:
-AWS RDS การสำรองข้อมูลอัตโนมัติใช้สแน็ปช็อตรายวันและบันทึกการทำธุรกรรมการบันทึกที่เปิดใช้งานการกู้คืนจุดในเวลาซึ่งรักษาความสอดคล้องของร้านค้าข้อมูลทางกายภาพ
- ในการปรับใช้หลาย AZ การสำรองข้อมูลเกิดขึ้นบนแบบจำลองสแตนด์บายเพื่อหลีกเลี่ยงการส่งผลกระทบต่อประสิทธิภาพของอินสแตนซ์หลัก
- การรวมการสำรองข้อมูลเชิงตรรกะกับ Snapshots สำรองข้อมูลอัตโนมัติ AWS นำเสนอวิธีการที่ครอบคลุมซึ่งการสำรองข้อมูลเชิงตรรกะให้ความยืดหยุ่นสคีมาและข้อมูลความยืดหยุ่นและสแน็ปช็อตอัตโนมัติให้การกู้คืนและความทนทานอย่างรวดเร็ว
ใช้การปรับใช้หลาย AZ และอ่านแบบจำลองเพื่อความสอดคล้อง
การกำหนดค่า Multi-AZ ให้ความพร้อมใช้งานสูงโดยการรักษาแบบจำลองแบบซิงโครนัสของฐานข้อมูลในโซนความพร้อมใช้งานที่แตกต่างกัน ในระหว่างการสำรองข้อมูลแบบจำลองเหล่านี้สามารถ:
- ทำหน้าที่เป็นแหล่งข้อมูลสำหรับการสำรองข้อมูลเพื่อลดผลกระทบด้านประสิทธิภาพในฐานข้อมูลหลัก
- อนุญาตให้อ่านที่สอดคล้องกันในระหว่างการสำรองข้อมูลเชิงตรรกะโดยเปลี่ยนเส้นทางการอ่านข้อมูลไปยังแบบจำลอง
- ช่วยในสถานการณ์การล้มเหลวทำให้มั่นใจได้ว่าการหยุดชะงักและความสอดคล้องของข้อมูลน้อยที่สุด
การอ่านแบบจำลองยังสามารถใช้เพื่อถ่ายการสำรองข้อมูลแบบลอจิคัลเนื่องจากข้อมูลถูกจำลองแบบแบบอะซิงโครนัสจากอินสแตนซ์หลัก การตั้งค่านี้ช่วยลดผลกระทบด้านประสิทธิภาพ แต่มีความเสี่ยงต่อการจำลองแบบบางอย่างซึ่งจะต้องมีการตรวจสอบอย่างระมัดระวัง
เครื่องมือสำรองและวิธีปฏิบัติเฉพาะสำหรับการสำรองข้อมูลเชิงตรรกะ
- ใช้บริการโยกย้ายฐานข้อมูล AWS (DMS) สำหรับการจำลองแบบและการสำรองข้อมูลอย่างต่อเนื่องด้วยการรับประกันความสอดคล้องหากจำเป็นต้องมีการสำรองข้อมูลเชิงตรรกะอย่างต่อเนื่องหรือการย้ายข้อมูล
- สำหรับการสำรองข้อมูลเชิงตรรกะ postgreSQL ให้ใช้คุณสมบัติเช่นการจัดส่ง WAL และการถอดรหัสเชิงตรรกะเพื่อจับการเปลี่ยนแปลงและรักษาความสอดคล้องของธุรกรรม
-เปิดใช้งานการบันทึกไบนารีสำหรับ MySQL และใช้เครื่องมือที่เข้ากันได้กับบันทึกเหล่านั้นเพื่อรักษาความสอดคล้องของการสำรองข้อมูลและอำนวยความสะดวกในการกู้คืนจุดเวลา
การตรวจสอบและการตรวจสอบ
- ตรวจสอบสถานะการทำซ้ำและสถานะงานสำรองเพื่อตรวจจับและแก้ไขความไม่สอดคล้องกันอย่างรวดเร็ว
- ดำเนินการทดสอบการคืนค่าการสำรองข้อมูลเชิงตรรกะเป็นระยะเพื่อตรวจสอบความสมบูรณ์ของการสำรองข้อมูลและความสอดคล้องของข้อมูล
- ใช้การตรวจสอบและการตรวจสอบข้อมูลการตรวจสอบข้อมูลโพสต์ที่เก็บเพื่อยืนยันความถูกต้องของข้อมูล
- ติดตามและแจ้งเตือนข้อผิดพลาดในการสำรองข้อมูลและงานที่ล้มเหลวเพื่อให้แน่ใจว่าปัญหาได้รับการแก้ไขทันที
การจัดตารางการสำรองข้อมูลและการจัดการทรัพยากร
- กำหนดเวลาการสำรองข้อมูลเชิงตรรกะระหว่างหน้าต่างการบำรุงรักษาหรือช่วงเวลาของกิจกรรมฐานข้อมูลต่ำเพื่อลดการล็อคและการโต้แย้งให้น้อยที่สุด
- ปรับพารามิเตอร์ฐานข้อมูลเช่นการล็อคหมดเวลาและระดับการแยกธุรกรรมเพื่อปรับสมดุลความสอดคล้องการสำรองข้อมูลและการตอบสนองของแอปพลิเคชัน
- วิเคราะห์รูปแบบการโหลดและปรับแต่งกลยุทธ์การสำรองข้อมูลตามนั้นเช่นการแยกฐานข้อมูลขนาดใหญ่ออกเป็นชิ้นเล็ก ๆ สำหรับการสำรองข้อมูล
การควบคุมความปลอดภัยและการเข้าถึง
- ตรวจสอบให้แน่ใจว่ามีการสำรองข้อมูลโดยมีสิทธิ์น้อยที่สุดและมีความปลอดภัยเพื่อป้องกันการดัดแปลงที่ไม่พึงประสงค์
- ใช้การเชื่อมต่อที่เข้ารหัส (SSL/TLS) สำหรับการถ่ายโอนข้อมูลสำรอง
- จัดเก็บการสำรองข้อมูลเชิงตรรกะอย่างปลอดภัยในถัง Amazon S3 ที่เข้ารหัสและควบคุมการเข้าถึงหรือ AWS Backup Vaults
สรุป
เพื่อให้แน่ใจว่าข้อมูลมีความสอดคล้องในระหว่างการสำรองข้อมูลเชิงตรรกะบน AWS RDS:
- ใช้ประโยชน์จากคุณลักษณะของฐานข้อมูล- นวลเช่นโหมดสแน็ปช็อตธุรกรรมและการล็อคตารางอย่างระมัดระวัง
- กำหนดเวลาการสำรองข้อมูลในช่วงเวลานอกเวลาเพื่อลดความขัดแย้ง
- ใช้การปรับใช้หลาย AZ และการสำรองข้อมูลแบบลอจิคัลเพื่ออ่านแบบจำลองเพื่อลดผลกระทบ
- เติมเต็มการสำรองข้อมูลเชิงตรรกะด้วยการสำรองข้อมูลทางกายภาพอัตโนมัติ AWS เพื่อความน่าเชื่อถือที่ดีขึ้น
- ตรวจสอบความล่าช้าในการจำลองความสำเร็จการสำรองข้อมูลและทำการกู้คืนการตรวจสอบความถูกต้องตามปกติ
- บังคับใช้ความปลอดภัยและการเข้ารหัสที่แข็งแกร่งสำหรับข้อมูลสำรอง
แนวทางปฏิบัติเหล่านี้ช่วยรักษาความสอดคล้องของการสำรองข้อมูลและปรับปรุงความน่าเชื่อถือและความสามารถในการกู้คืนของการสำรองข้อมูลเชิงตรรกะ AWS RDS ในสภาพแวดล้อมการผลิต