Oracle® Database 18c for Enterprise Edition บน Cloud มัดระบบวิศวกรรม (Exadata) พร้อมคุณสมบัติใหม่และปรับปรุงมากมาย รีลีส 18ci ปรับปรุงฟีเจอร์โคลนที่รีเฟรชได้จาก 12c รีลีส 2 โดยการเพิ่มสวิตช์ลัดหรือระบบเฟลโอเวอร์ คุณยังสามารถสร้างภาพหมุนสแน็ปช็อตเพื่อโคลนหรือจำลองฐานข้อมูลแบบเสียบได้ (PDB) ในสภาพแวดล้อมแบบหลายผู้ใช้
สำหรับสภาพแวดล้อมการใช้งานจริง ให้ใช้วงล้อสแน็ปช็อตที่มีฟีเจอร์ clonePDB ที่รีเฟรชได้เพื่อทำให้กิจกรรมการดูแลฐานข้อมูล (DBA) ง่ายขึ้น เช่น การป้องกันไฟดับที่คาดไม่ถึงหรือการแก้ไขปัญหาความเสียหายเชิงตรรกะ โพสต์นี้อธิบายการใช้งานจริงของโคลนที่สามารถรีเฟรชได้กับกรณีการสลับด้วยตนเองและอัตโนมัติ คุณสามารถใช้กับคุณลักษณะภาพหมุนสแน็ปช็อตเพื่อระบุและจัดการปัญหาความสมบูรณ์ของฐานข้อมูลต่อไปนี้:
-
ไม่มีฐานข้อมูลการผลิต
-
ปัญหาด้านประสิทธิภาพ
-
ความเสียหายเชิงตรรกะในฐานข้อมูล Oracle
โพสต์นี้เป็นส่วนหนึ่งของชุดโพสต์บล็อกสองส่วน อ่านต่อไปเพื่อเรียนรู้เกี่ยวกับ PDB โคลนที่รีเฟรชได้นั้น มันทำงานอย่างไร และควรใช้เมื่อใด
ส่วนที่สองของชุดข้อมูลจะอธิบายวิธีสร้าง กำหนดค่า บำรุงรักษา และวาง PDB โคลนที่รีเฟรชได้
คำถามเกี่ยวกับการโคลนและสแนปชอต
ส่วนนี้ให้คำตอบสำหรับคำถามพื้นฐานเกี่ยวกับการโคลนและภาพหมุนสแน็ปช็อต
การโคลนคืออะไร
เมื่อคุณโคลนอินสแตนซ์ คุณจะสำรองข้อมูลของอินสแตนซ์และกู้คืนข้อมูลสำรองที่อื่น โดยปกติ คุณจะกู้คืนบนเครื่องอื่นที่มีโครงสร้างไดเรกทอรีเดียวกัน คุณยังสามารถกู้คืนข้อมูลดังกล่าวในเครื่องเดียวกันได้โดยเปลี่ยน OracleSystem ID (SID) และชื่อฐานข้อมูล คุณสามารถใช้โคลนของอินสแตนซ์ที่ใช้งานจริงในเครื่องทดสอบเพื่อลองใช้สถานการณ์แบบ What-if เช่น การเปลี่ยนinit.ora
พารามิเตอร์หรือแก้ไขโค้ดของคุณ เป็นต้น
การโคลน PDB ทำงานอย่างไร
คุณสามารถใช้การโคลน PDB เพื่อโคลน PDB ในสภาพแวดล้อมที่มีผู้เช่าหลายราย สำหรับ PDB ระยะไกลในเครื่อง ให้ใช้โคลนที่รีเฟรชได้หรือภาพหมุนสแน็ปช็อตเพื่อสร้างการโคลน PDB ในฐานข้อมูลคอนเทนเนอร์ในเครื่อง
สำหรับการโคลน PDB ระยะไกล ให้พิจารณาสิ่งต่อไปนี้:
-
ในการใช้โคลนที่รีเฟรชได้ คุณต้องมีลิงก์ฐานข้อมูลสำหรับ PDB และปิดใช้งานฐานข้อมูลที่ลอกแบบมา
-
ในการใช้ภาพหมุนสแน็ปช็อต คุณต้องสร้างโคลน PDB ทั่วไปโดยใช้ asnapshot จากนั้น ใช้ลิงก์ฐานข้อมูลหรือถอดปลั๊กและเสียบเข้ากับฐานข้อมูลอื่นคอนเทนเนอร์ คุณยังสามารถสร้างโคลนที่รีเฟรชได้จาก PDB ที่ลอกแบบมา
สแนปชอต PDB คืออะไร
สแน็ปช็อต PDB คือสำเนา PDB ในช่วงเวลาหนึ่ง สร้างสแน็ปช็อตด้วยตนเองโดยใช้ SNAPSHOT
อนุประโยคของ CREATE PLUGGABLE DATABASE
(หรือ ALTER PLUGGABLE DATABASE
) หรือโดยอัตโนมัติโดยใช้คำสั่ง EVERY
ประโยคช่วงเวลา
ภาพหมุนสแนปชอต PDB คืออะไร
ภาพหมุนสแนปชอต PDB จะรักษาไลบรารีของสแนปชอต PDB ล่าสุด ซึ่งคุณสามารถใช้เพื่อทำการกู้คืน ณ เวลาหนึ่งและเพื่อโคลน PDB
PDB โคลนที่รีเฟรชได้
คุณสามารถโคลน PDB ได้โดยใช้คุณลักษณะการโคลนที่รีเฟรชได้ ซึ่งปกป้องฐานข้อมูลจากความเสียหายของข้อมูลและภัยพิบัติโดยข้อมูลจะสูญหายน้อยที่สุด ขึ้นอยู่กับช่วงเวลาการรีเฟรชและอัตราการสร้างซ้ำ คุณสามารถใช้ฐานข้อมูล refreshableclone เป็นแบบจำลองเพื่อดำเนินการกับแอปพลิเคชันที่โหลดต่ำและไม่สำคัญต่อ คุณสามารถตั้งค่าฐานข้อมูลโคลนที่รีเฟรชได้เพื่ออัปเดตโดยอัตโนมัติตามช่วงเวลาที่กำหนดหรือด้วยตนเองโดยใช้แอปพลิเคชันบันทึกซ้ำ
รูปที่ 1 แสดงสถาปัตยกรรมของการประมวลผลโคลนที่รีเฟรชได้ มันแสดงส่วนประกอบหลักและกระบวนการ และแสดงความสัมพันธ์ระหว่างฐานข้อมูลการผลิตและฐานข้อมูลโคลนที่รีเฟรชได้ แผนภาพนี้แสดงการโคลนฐานข้อมูลที่เสียบได้ PDB1 ของฐานข้อมูลคอนเทนเนอร์ CDB1 ไปยังฐานข้อมูลอื่น CDB2 . การดำเนินการนี้ส่งผลให้เกิด PDB1 . เวอร์ชัน hot-cloned ชื่อ PDB1_REF_CLONE .
รูปที่ 1ภาพที่ 1
ตัวเลือกโหมดรีเฟรช
คุณสามารถเปลี่ยนโหมดรีเฟรชได้โดยการตั้งค่าสภาพแวดล้อมด้วยโหมดต่อไปนี้:
-
MANUAL
-
AUTOMATIC
(โดยใช้EVERY
นMINUTES
) -
NONE
สร้างและทำงานกับโคลนที่รีเฟรชได้
ใช้คำสั่งต่อไปนี้เพื่อโคลน PDB ต้นทางและกำหนดค่าโคลนให้รีเฟรชได้ การรีเฟรชโคลน PDB จะอัปเดตด้วยการทำซ้ำข้อมูลที่สะสมตั้งแต่บันทึกการทำซ้ำครั้งล่าสุดมีผลใช้บังคับ
CREATE PLUGGABLE DATABASE ... REFRESH MODE [ MANUAL / AUTOMATIC (using EVERY n MINUTES) / NONE ] ;
ใช้คำสั่งต่อไปนี้เพื่อเปลี่ยนโหมดปัจจุบันของโคลนที่รีเฟรชได้ ordisabled ที่รีเฟรชแล้วแปลงเป็น PDB ที่ทำงานได้อย่างสมบูรณ์:
ALTER PLUGGABLE DATABASE ... REFRESH MODE [ MANUAL / AUTOMATIC (using EVERY n MINUTES) / NONE ] ;
ถ้าคุณไม่โคลน PDB บ่อยๆ เพื่อหลีกเลี่ยงการลดประสิทธิภาพ ข้อมูลโคลนจะค้าง PDB โคลนที่รีเฟรชได้แก้ปัญหานี้ เมื่อรีเฟรชได้โคลนค้าง คุณสามารถรีเฟรชได้อย่างรวดเร็วด้วยการทำซ้ำล่าสุด
โดยปกติ คุณจะรักษาระดับ ผู้เชี่ยวชาญ โคลนที่รีเฟรชได้ของ PDB ที่ใช้งานจริง จากนั้นจึงทำการโคลนสแนปชอตของต้นแบบเพื่อการพัฒนาและทดสอบ
ใช้คำสั่งต่อไปนี้เพื่อย้อนกลับบทบาทของซอร์สและโคลน PDB:
ALTER PLUGGABLE DATABASE ... SWITCHOVER;
คุณสามารถลดความซับซ้อนของกระบวนการเปลี่ยนนี้ ดังแสดงในรูปต่อไปนี้:
รูปที่ 2รูปที่ 2
รูปที่ 3ภาพที่ 3
ความสามารถในการสลับสับเปลี่ยนนี้มีประโยชน์ในสถานการณ์ต่อไปนี้
วางแผนการสับเปลี่ยนของโคลนที่รีเฟรชได้
ในรูปที่ 3 CDB1 ซึ่งโฮสต์ PDB ต้นทาง PDB1 อาจมีค่าใช้จ่ายสูงกว่า CDB2 . อย่างมาก ซึ่งโฮสต์โคลน PDBPDB1_REF_CLONE . เพื่อให้ได้โหลดบาลานซ์ที่ดีขึ้น คุณสามารถย้อนกลับบทบาทของ PDB โดยแปลงโคลนเป็น PDB ต้นทางใหม่และ PDB ต้นทางเป็นโคลนใหม่
ดำเนินการเปลี่ยนบทบาทนี้โดยใช้คำสั่งต่อไปนี้บนฐานข้อมูลหลักปัจจุบัน:
ALTER PLUGGABLE DATABASE PDB1 REFRESH MODE EVERY 2 MINUTES FROM PDB1_REF_CLONE@DBLINK2CDB2 SWITCHOVER;
หลังจากคำสั่งนี้เสร็จสิ้น PDB1_REF_CLONE ใน CDB2 รับบทบาทหลัก CDB1 ตอนนี้รักษาแบบจำลอง การเชื่อมต่อกับการผลิตทั้งหมดเชื่อมต่อกับหลักใหม่ ซึ่งขณะนี้คือ CDB2 . คุณสูญเสียธุรกรรมไม่เกินสองนาที สมมติว่าการรีเฟรชนั้นรักษาอัตราการสร้างใหม่จากแหล่งที่มา
การสับเปลี่ยนโดยไม่ได้วางแผนของโคลนที่รีเฟรชได้
หาก PDB ต้นทางมีความล้มเหลวที่ไม่ได้วางแผนไว้ คุณสามารถสลับ PDB โคลนไปยัง PDB ต้นทางใหม่และกลับสู่การทำงานปกติได้
อย่าลืมทดสอบสภาพแวดล้อมของคุณโดยใช้ปริมาณธุรกรรมจริงเพื่อให้แน่ใจว่ากระบวนการรีเฟรชแบบจำลองสามารถติดตามการสร้างซ้ำได้
โคลนที่รีเฟรชได้แตกต่างจาก Data Guard อย่างไร
Oracle แนะนำคุณสมบัติความพร้อมใช้งานสูงด้วย Data Guard และฐานข้อมูลสแตนด์บาย องค์ประกอบต่อไปนี้แยกความแตกต่างของโคลนที่รีเฟรชได้จาก Data Guard:
-
Data Guard ให้ความพร้อมใช้งานสูงในการปกป้องฐานข้อมูลจากภัยพิบัติและความเสียหายของข้อมูลในแบบเรียลไทม์ที่เปลี่ยนและเปลี่ยนระบบไปยังฐานข้อมูลสำรอง คุณยังสามารถใช้ฐานข้อมูลสแตนด์บายของ Data Guard สำหรับการแชร์โหลดโดยใช้ฟีเจอร์โคลน PDB ที่รีเฟรชได้ Data Guard ทำงานที่ระดับ CDB และคุณไม่สามารถมีสวิตช์โอเวอร์หรือเฟลโอเวอร์ที่ระดับ PDB ได้
-
เนื่องจากความล่าช้าระหว่างการเริ่มต้นและการเปลี่ยนแปลงที่เสร็จสิ้น Data Guard จึงมีประสิทธิภาพมากกว่าการรักษาโคลนที่รีเฟรชได้ ในช่วงแล็กนี้ ธุรกรรมไปยังฐานข้อมูลหลักอาจไม่สามารถใช้กับ orsynced กับฐานข้อมูลแบบอ่านอย่างเดียวก่อนที่คุณจะเปลี่ยนบทบาท ด้วยเหตุนี้ คุณอาจสูญเสียธุรกรรมเหล่านั้น
-
Data Guard มีฐานข้อมูลสำรองสูงสุด 30 ฐานข้อมูล แต่คุณสามารถมีโคลนที่รีเฟรชได้มากเท่าที่ต้องการ
เพื่อเสริมความแข็งแกร่งให้กับฟีเจอร์โคลน PDB ที่รีเฟรชได้เพื่อความพร้อมใช้งานสูงและแทบไม่มีข้อมูลสูญหาย ให้ตั้งค่า REMOTE_RECOVERY_FILE_DEST
พารามิเตอร์เพื่อเก็บถาวรตำแหน่งบันทึกของ PDB ต้นทาง
บทสรุป
คุณไม่ควรพิจารณาคุณลักษณะ PDB โคลนที่รีเฟรชได้เพื่อแทนที่ Data Guard จากมุมมองของความพร้อมใช้งานสูง อย่างไรก็ตาม คุณสามารถใช้ arefreshable clone เพื่อรักษาฐานข้อมูลจำลองบนเซิร์ฟเวอร์อื่นได้
โพสต์นี้อธิบายวิธีใช้ PDB ที่รีเฟรชได้เป็นแบบจำลอง เพื่อให้คุณดำเนินการกับแอปพลิเคชันที่โหลดต่ำและไม่สำคัญต่อได้ ไม่ว่าสวิตช์จะเป็นเหตุการณ์ที่วางแผนไว้หรือไม่ได้วางแผนไว้ พึงระลึกไว้เสมอว่าคุณควรพิจารณาการสับเปลี่ยนจากมุมมองของ Recovery Time Objectives (RTO, time to resume operation) และ Recovery Point Objectives (RPOs เช่น การสูญเสียข้อมูลน้อยที่สุด)
ส่วนที่สองของซีรีส์จะสาธิตฟีเจอร์โคลนที่รีเฟรชได้
ใช้แท็บคำติชมเพื่อแสดงความคิดเห็นหรือถามคำถาม คุณยังแชทตอนนี้เพื่อเริ่มการสนทนาได้
เรียนรู้เพิ่มเติมเกี่ยวกับฐานข้อมูล