คำอธิบายโดยละเอียดของ lingudcloud: การสำรองฐานข้อมูล Alibaba Cloud RDS MySQL และการกู้คืนระบบข้ามภูมิภาค
ใครที่ไม่ได้สัมผัสกับช่วงเวลาที่น่าตื่นเต้นในโครงการอินเทอร์เน็ต?
"ลบฐานข้อมูลการผลิตโดยไม่ได้ตั้งใจ" "สายเคเบิลออปติคอลในห้องคอมพิวเตอร์ถูกตัด" "การเข้ารหัส ransomware" อุบัติเหตุเหล่านี้ที่ฟังดูเหมือนเรื่องตลกตราบใดที่เกิดขึ้นเพียงครั้งเดียวบริษัทสามารถปิดได้โดยตรง
หลายคนซื้อ Alibaba Cloud RDS MySQL และคิดว่าทุกอย่างจะดีหลังจากคลิก "การสำรองข้อมูลอัตโนมัติ" แต่คุณเคยคิดบ้างไหม: หากเมืองที่ห้องคอมพิวเตอร์คลาวด์ทั้งหมดตั้งอยู่ประสบภัยธรรมชาติอย่างรุนแรงหรือบัญชี Alibaba Cloud ของคุณถูกขโมยและแฮกเกอร์ลบข้อมูลสำรองบนคลาวด์ด้วยกันคุณควรทำอย่างไร?
วันนี้ฉันไม่ได้พูดถึงแนวคิดเสมือนจริงและไปที่สินค้าแห้งแบบฮาร์ดคอร์โดยตรงพาคุณไป
สร้างชุดการสำรองข้อมูล RDS MySQL และระบบกู้คืนระบบข้ามภูมิภาคที่สามารถช่วยชีวิตได้ตั้งแต่เริ่มต้น
。แบบฝึกหัดการต่อสู้จริงทั้งหมดโดยไม่พูดเรื่องไร้สาระ
ตรรกะการกู้คืนระบบหลัก: เป้าหมายของเราคืออะไร?
ก่อนที่จะเริ่มให้ดูโครงสร้าง "สามแนวป้องกัน" ที่เราต้องการบรรลุ:
ข้อความธรรมดา
【ฐานข้อมูลการผลิต】
│
├── แนวป้องกัน1 ──> [การสำรองข้อมูลอัตโนมัติในพื้นที่] (ป้องกันการลบโดยไม่ได้ตั้งใจป้องกันความล้มเหลวประจำวัน)
│
├── แนวป้องกัน2 ──> [การซิงโครไนซ์การสำรองข้อมูลข้ามภูมิภาค] (ภัยพิบัติในห้องคอมพิวเตอร์ระดับเมือง Fangcheng)
│
└ ── แนวป้องกัน3 ──> [ดึงและกู้คืนจากระยะไกล] (แบบฝึกหัดการต่อสู้จริงเพื่อให้แน่ใจว่ามีการสำรองข้อมูลจริงๆ)
ขั้นตอนที่1: กำหนดค่าการสำรองข้อมูลอัตโนมัติในพื้นที่ (แนวป้องกัน1: การช่วยชีวิตประจำวัน)
Alibaba Cloud RDS จะเปิดการสำรองข้อมูลตามค่าเริ่มต้นแต่การกำหนดค่าเริ่มต้นมักจะ "ไม่ยาวพอ" หรือ "ไม่หนาแน่นพอ" เราจำเป็นต้องเพิ่มประสิทธิภาพด้วยตนเอง
1.ปรับกลยุทธ์การสำรองข้อมูล
ลงชื่อเข้าใช้ Alibaba Cloud Console และเข้าสู่ "Cloud Database RDS Edition"
คลิกที่ "รายการตัวอย่าง" ในเมนูด้านซ้ายเพื่อเข้าสู่อินสแตนซ์ MySQL ของคุณ
ค้นหา "Backup Recovery" ในแถบนำทางด้านซ้ายและคลิก "Backup Policy Settings" ทางด้านขวา
2.ปรับพารามิเตอร์สำคัญดังนี้:
รอบการสำรองข้อมูล: ขอแนะนำอย่างยิ่งให้ตรวจสอบทุกวัน (ค่าเริ่มต้นอาจเป็นการสำรองข้อมูลทุกๆสองสามวัน) อย่าเสี่ยงเพื่อประหยัดค่าธรรมเนียมการจัดเก็บ
วันที่สำรองข้อมูล: แนะนำให้ใช้สภาพแวดล้อมการผลิตอย่างน้อย30วันหากอุตสาหกรรมมีข้อกำหนดการปฏิบัติตาม (เช่นการเงินและการรักษาพยาบาล) จำเป็นต้องปรับให้สูงขึ้น
บันทึกการสำรองข้อมูล (Binlog): ต้องเปิด! นี่คือกุญแจสำคัญในการบรรลุ "การกู้คืนที่แม่นยำในไม่กี่วินาที" แนะนำให้จอง Binlog เป็นเวลาอย่างน้อย7วัน
ขั้นตอนที่2: เปิดการซิงโครไนซ์การสำรองข้อมูลข้ามภูมิภาค (แนวป้องกันที่2: ป้องกันภัยพิบัติระดับเมือง)
หากฐานข้อมูลการผลิตของคุณอยู่ในห้องคอมพิวเตอร์ "ปักกิ่ง" การสำรองข้อมูลในเครื่องของคุณจะมีอยู่ในปักกิ่งด้วยในกรณีที่เกิดความล้มเหลวที่หายากในโครงสร้างพื้นฐานระบบคลาวด์ในพื้นที่ทั้งหมดของปักกิ่งคุณจะไม่สามารถรับข้อมูลสำรองของคุณได้เลย
ในเวลานี้เราจำเป็นต้องซิงโครไนซ์การสำรองข้อมูลโดยอัตโนมัติไปยังเมืองอื่นที่อยู่ห่างออกไปหลายพันกิโลเมตร (เช่น "เซินเจิ้น" หรือ "เซี่ยงไฮ้")
1.เปิดการสำรองข้อมูลข้ามภูมิภาค
นอกจากนี้ในหน้า "การสำรองข้อมูลและการกู้คืน" ให้เปลี่ยนเป็นแท็บ "การตั้งค่าการสำรองข้อมูลข้ามภูมิภาค"
คลิก "ซ่อม
เปลี่ยนการตั้งค่า "และเปลี่ยนสถานะเป็น" เปิด"
พื้นที่ปลายทาง: เลือกเมืองที่มีระยะทางกายภาพไกลจากห้องผลิตของคุณตัวอย่างเช่นการผลิตอยู่ในหางโจวและเลือกปักกิ่งหรือเซินเจิ้นในที่ต่างๆ
2.เลือกประเภทการสำรองข้อมูล
ตรวจสอบ "การสำรองข้อมูลข้ามภูมิภาค" และ "การสำรองข้อมูลบันทึกข้ามภูมิภาค"
หมายเหตุ: การซิงโครไนซ์ข้ามภูมิภาคจะถูกส่งแบบอะซิงโครนัสโดยพื้นหลังของ Alibaba Cloud หลังจากการสำรองข้อมูลในเครื่องเสร็จสิ้นและจะไม่ใช้แบนด์วิดท์อินทราเน็ตและประสิทธิภาพของฐานข้อมูลการผลิตของคุณ
ขั้นตอนที่3: การฝึกซ้อมรบจริง-ดึงและกู้คืนข้อมูลจากระยะไกล (ประเด็นสำคัญ)
ไม่ว่าการสำรองข้อมูลจะดีแค่ไหนหากไม่ได้รับการกู้คืนก็เป็นเพียง "ไฟล์ไบนารีของ Schrödinger" จำนวนมากคุณไม่รู้ว่าจะใช้งานได้ในช่วงเวลาวิกฤตหรือไม่
ตอนนี้จำลองฉาก:
ห้องสมุดการผลิตของปักกิ่งเป็นอัมพาตโดยสิ้นเชิงเราจำเป็นต้องใช้การสำรองข้อมูลข้ามภูมิภาคเพื่อดึงฐานข้อมูลใหม่ในห้องคอมพิวเตอร์เซินเจิ้น
สถานการณ์ A: คืนค่าเป็น "โคลนอินสแตนซ์" ใหม่ (ปลอดภัยที่สุดและแนะนำมากที่สุด)
ใช้วิธีนี้เมื่อคุณต้องการข้อมูลที่สมบูรณ์เหมือนเดิมหรือต้องการกู้คืนข้อมูลไปยังจุดเวลาที่กำหนดเมื่อไม่กี่วันที่ผ่านมา
ลงชื่อเข้าใช้คอนโซล Alibaba Cloud RDS และสลับไปยังเมืองปลายทางที่คุณสำรองข้อมูลข้ามภูมิภาค (เช่นเซินเจิ้น)
ไปที่ "สำรองและกู้คืน" ในเมนูด้านซ้ายและคลิกที่รายการ "สำรองข้อมูลข้ามภูมิภาค"
ค้นหาไฟล์สำรองที่คุณต้องการกู้คืนหรือคลิก "กู้คืนเมื่อใดก็ได้"
ตัวเลือกที่สำคัญ: กู้คืนข้อมูลประวัติไปที่: เลือก "อินสแตนซ์ใหม่" การเลือกจุดเวลา: คุณสามารถตรวจสอบปีเดือนบางวันบางนาทีและวินาทีที่ผ่านมาได้อย่างแม่นยำนี่คือพลังในการเปิดการสำรองข้อมูลบันทึก Binlog
คลิกถัดไปและระบบจะให้คุณซื้อ "ฐานข้อมูลโคลน" ชั่วคราว
หลังจากเปิดใช้งานการชำระเงินแล้ว Alibaba Cloud จะดาวน์โหลดข้อมูลสำรองระยะไกลโดยอัตโนมัติและเล่นบันทึก Binlog ซ้ำประมาณ10 ~ ใน30นาที (ขึ้นอยู่กับปริมาณข้อมูล) ฐานข้อมูลใหม่ที่มีข้อมูลในอดีตของคุณจะปรากฏในห้องคอมพิวเตอร์ของเซินเจิ้น
สถานการณ์ B: ดาวน์โหลดไฟล์สำรองคืนค่าด้วยตนเองไปยังเซิร์ฟเวอร์ท้องถิ่นหรือที่สร้างขึ้นเอง
หากบริษัทไม่ต้องการใช้จ่ายเงินเพิ่มเพื่อเปิดอินสแตนซ์ใหม่บนคลาวด์หรือหากคุณต้องการดาวน์โหลดข้อมูลไปยังเซิร์ฟเวอร์ของเครือข่ายสำนักงานในพื้นที่เพื่อวิเคราะห์ข้อมูลคุณสามารถดาวน์โหลดได้ด้วยตนเอง
1.ดาวน์โหลดไฟล์
ในรายการสำรองข้อมูลข้ามภูมิภาคค้นหาการสำรองข้อมูลที่เกี่ยวข้องคลิกที่ด้านขวา
“ดาวน์โหลด”
(หากไม่ได้สร้างที่อยู่สำหรับดาวน์โหลดให้คลิก "สร้างอินสแตนซ์เพื่อสำรองที่อยู่สำหรับดาวน์โหลด" และรอสักครู่เพื่อดาวน์โหลด)
💡อาลีบาบาคลาวด์ RDS ให้ไฟล์สำรองข้อมูลทางกายภาพโดยทั่วไป. Tar.gz หรือบรรจุผ่านเครื่องมือ Percona XtraBackup
2.การกู้คืนเซิร์ฟเวอร์ Linux ที่สร้างขึ้นเอง (ใช้ NRE / XtraBackup เป็นตัวอย่าง)
สมมติว่าสิ่งที่คุณดาวน์โหลดเป็นแพ็กเกจบีบอัดข้อมูลสำรองทางกายภาพเราจำเป็นต้องใช้เครื่องมือ Percona เพื่อกู้คืนหลังจากคลายการบีบอัด
ขั้นตอนแรกติดตั้งเครื่องมือ XtraBackup (เวอร์ชันต้องสอดคล้องกับเวอร์ชัน MySQL ของคุณอย่างเคร่งครัด
MySQL 8.0ต้องใช้ XtraBackup 8.0)
ขั้นตอนที่สองดำเนินการเปิดเครื่องรูดและเตรียมคำสั่ง (Prepare):
แบช
#1.สร้างแคตตาล็อกข้อมูลที่สะอาด
Mkdir-p/var/lib/ mysql_recovery
#2.เตรียมข้อมูลของไฟล์คลายการบีบอัดที่ดาวน์โหลดมา (สมมติว่ามีการคลายการบีบอัด)
Xtrabackup -- prepare -- target-dir = /var/lib/ mysql_recovery
หน้าที่ของขั้นตอนนี้คือการย้อนกลับธุรกรรมที่ไม่มีเวลาส่งระหว่างการสำรองข้อมูลและเขียนธุรกรรมที่ส่งลงในดิสก์เพื่อให้แน่ใจว่าข้อมูลมีความสอดคล้องกัน
ขั้นตอนที่สามคือการแก้ไขสิทธิ์และแก้ไขโปรไฟล์ MySQL:
แบช
Chown-R mysql:mysql /var/lib/ mysql_recovery
ใน MySQL ที่สร้างขึ้นเองของคุณ
My.cn f
ในใส่
Datadir
ชี้ไปที่สิ่งนี้
/Var/lib/ mysql_recovery
ไดเร็กทอรีจากนั้นรีสตาร์ทบริการ MySQL ข้อมูลจะถูกคืนชีพอย่างสมบูรณ์แบบ
ประวัติการหลีกเลี่ยงเลือดและน้ำตาในสภาพแวดล้อมการผลิต
อย่าใส่ข้อมูลและสำรองข้อมูลภายใต้บัญชี Alibaba Cloud เดียวกัน! หากคุณพบ "พนักงานลบฐานข้อมูลและหนี" ในตำนานหรือ "บัญชีเจ้าของธุรกิจถูกขโมย" ที่เกิดขึ้นบ่อยครั้งสิ่งแรกที่แฮกเกอร์เข้ามาคือปล่อย RDS และข้อมูลสำรองทั้งหมดของคุณอย่างสมบูรณ์โซลูชันการรักษาความปลอดภัยขั้นสูงสุด: ภายใต้บัญชี Alibaba Cloud ที่เป็นอิสระอย่างสมบูรณ์ซึ่งควบคุมโดยผู้บริหารเปิดเซิร์ฟเวอร์น้ำหนักเบาที่มีรายละเอียดต่ำหรือที่เก็บข้อมูล OSS และดึงสำเนาสำรองฐานข้อมูลข้ามบัญชีผ่านสคริปต์อัตโนมัติทุกวัน
โปรดทราบว่า "ค่าธรรมเนียมการจัดเก็บในพื้นที่" และ "ค่าธรรมเนียมการส่งข้อมูลข้ามภูมิภาค" ขีดจำกัดการสำรองข้อมูลฟรีของ Alibaba Cloud มีจำกัด (โดยปกติจะใหญ่เท่ากับความจุฐานข้อมูลของคุณ) ส่วนที่เกินจะเรียกเก็บค่าธรรมเนียมการจัดเก็บสูงการซิงโครไนซ์ข้ามภูมิภาคจะเรียกเก็บค่าธรรมเนียมการส่งเครือข่ายจำนวนเล็กน้อยการทำรัฐประหารเพื่อประหยัดเงิน: สำหรับการสำรองข้อมูลบันทึก (Binlog) หากมีการเขียนธุรกิจบ่อยมากจำนวนบันทึกจะน่ากลัวมากเวลาในการเก็บรักษาบันทึกในพื้นที่สามารถสั้นลงได้อย่างเหมาะสมเหลือ3-5วันและเวลาในการเก็บรักษาระยะไกลสามารถขยายออกไปได้เพื่อให้สมดุลกับต้นทุนและความปลอดภัย
การฝึกซ้อมเป็นประจำแม้ว่าทีมเทคนิคจำนวนมากจะเขียนสคริปต์สำรองทุกไตรมาสแต่ก็จะวางไว้บนชั้นวางด้วยเหตุนี้ฉันจึงประสบอุบัติเหตุในอีกหนึ่งปีต่อมาเมื่อฉันดาวน์โหลดข้อมูลสำรองฉันพบว่าไฟล์สำรองทั้งหมดเสียเนื่องจากเวอร์ชันที่เข้ากันไม่ได้หรือมีพารามิเตอร์น้อยกว่าหนึ่งตัวในสคริปต์การรวม "แบบฝึกหัดการกู้คืน" ไว้ใน KPI ของทีมเทคนิคคือการกู้คืนระบบที่แท้จริง
ใช้ความระมัดระวังตรวจสอบกลยุทธ์การสำรองข้อมูล Alibaba Cloud RDS ของคุณคืนนี้!

