ดำเนินการคืนค่าข้อมูลด้วยตนเอง

หน้านี้อธิบายวิธีกู้คืนข้อมูลในข้อมูลสำรองไปยังฐานข้อมูลที่มีชื่อเดียวกับฐานข้อมูลต้นทางของข้อมูลสำรอง คุณควรทำความคุ้นเคยกับวิธีสำรองและกู้คืนข้อมูลก่อนที่จะอ่านหน้านี้

การคืนค่า ณ จุดที่เห็น

การกู้คืน ณ ขณะนั้นช่วยให้คุณกู้คืนฐานข้อมูลจากข้อมูลสำรองไปยังฐานข้อมูลต้นทางที่สร้างข้อมูลสำรองในขณะที่ยังมีฐานข้อมูลเดิมอยู่ การคืนค่า ณ ตำแหน่งช่วยให้คุณหลีกเลี่ยงการเปลี่ยนเส้นทางการรับส่งข้อมูลหรือสร้างฐานข้อมูลด้วยชื่ออื่น

การดำเนินการกู้คืนต้องใช้ฐานข้อมูลปลายทางที่ยังไม่มีอยู่ อย่างไรก็ตาม คุณจำลองการกู้คืนขณะอยู่ในตําแหน่งได้โดยลบฐานข้อมูลต้นทาง แล้วกู้คืนจากข้อมูลสำรองไปยังฐานข้อมูลใหม่ซึ่งมีชื่อเดียวกับฐานข้อมูลต้นทาง

ดำเนินการคืนค่าข้อมูลด้วยตนเอง

หากต้องการคืนค่าข้อมูลที่มาพร้อมเครื่อง ให้ทำตามขั้นตอนต่อไปนี้

  1. ระบุข้อมูลสำรองที่จะใช้ในการดำเนินการกู้คืน
  2. ลบฐานข้อมูลที่มีอยู่
  3. ใช้ข้อมูลสำรองและรหัสฐานข้อมูลของฐานข้อมูลที่ถูกลบเพื่อดำเนินการกู้คืนให้เสร็จสมบูรณ์

ก่อนเริ่มต้น

เราขอแนะนำให้ทำตามขั้นตอนต่อไปนี้ก่อนเริ่มขั้นตอนการคืนค่าในสถานที่

  1. ส่งออกข้อมูลในฐานข้อมูลที่คุณจะลบ

    หากจำเป็นต้องกู้คืนฐานข้อมูลที่ลบไปแล้ว ให้นำเข้าข้อมูลจากการดำเนินการส่งออก หากต้องการกู้คืนฐานข้อมูลที่ถูกลบเป็นรหัสฐานข้อมูลเดียวกัน คุณต้องรอจนกว่าการดำเนินการกู้คืนที่ดำเนินการอยู่จะเสร็จสมบูรณ์ จากนั้นทำดังนี้

    1. ลบฐานข้อมูลที่มีอยู่ซึ่งมีรหัสฐานข้อมูลแล้วรออย่างน้อย 5 นาที
    2. สร้างฐานข้อมูลใหม่ด้วยรหัสฐานข้อมูล
    3. เริ่มการดำเนินการนำเข้า
  2. เรียกและคัดลอกการกำหนดค่าดัชนีของฐานข้อมูล การดำเนินการส่งออก จะไม่บันทึกคำจำกัดความของดัชนี ใช้การกำหนดค่าดัชนีเพื่อสร้างดัชนีอีกครั้งหลังจากที่ดำเนินการกู้คืนในตำแหน่งที่เสร็จสิ้น ใช้คำสั่งต่อไปนี้เพื่อเรียกข้อมูลการกำหนดค่าดัชนีของฐานข้อมูล

    • ใช้ gcloud firestore indexes composite list เพื่อเรียกข้อมูลรายการดัชนีผสม

      gcloud firestore indexes composite list --database=DATABASE_ID
      

      แทนที่ DATABASE_ID ด้วยรหัสของฐานข้อมูล

    • ใช้ gcloud firestore indexes fields list เพื่อเรียกข้อมูลรายการการยกเว้นดัชนีแบบช่องเดียว (ในตัว)

      gcloud firestore indexes fields list --database=DATABASE_ID
      

ดำเนินการคืนค่าข้อมูลด้วยตนเอง

ทำตามขั้นตอนต่อไปนี้เพื่อดำเนินการกู้คืนในสถานที่ กระบวนการนี้ต้องมีช่วงพักระหว่างที่คุณลบฐานข้อมูลและเมื่อการดำเนินการกู้คืนเสร็จสิ้น

เมื่อการดำเนินการกู้คืนเริ่มขึ้นแล้ว คุณจะยกเลิกการดำเนินการไม่ได้และต้องรอจนกว่าการดำเนินการจะเสร็จสิ้น การดำเนินการกู้คืนจะใช้รหัสฐานข้อมูลที่ใช้ในการดำเนินการนี้ทันที

  1. ใช้คำสั่ง gcloud alpha firestore backups list เพื่อระบุข้อมูลสำรองที่จะใช้สำหรับการดำเนินการกู้คืนและจดชื่อทรัพยากร ชื่อทรัพยากรจะใช้รูปแบบต่อไปนี้

        projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
    
  2. ใช้คำสั่ง gcloud firestore databases delete เพื่อลบฐานข้อมูลที่มีอยู่

        gcloud firestore databases delete --database='DATABASE_ID'
    

    แทนที่ DATABASE_ID ด้วยรหัสฐานข้อมูล

  3. รออย่างน้อย 5 นาทีหลังจากที่คุณลบฐานข้อมูลเพื่อให้รหัสฐานข้อมูลพร้อมใช้งานอีกครั้ง เริ่มการดำเนินการกู้คืนโดยใช้คำสั่ง gcloud alpha firestore databases restore ดังนี้

    gcloud alpha firestore databases restore \
    --source-backup=projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID \
    --destination-database='DATABASE_ID'
    

    แทนที่ DATABASE_ID ด้วยรหัสฐานข้อมูล

ขั้นตอนถัดไป