-
คำสั่ง Crosscheck Archivelog All คืออะไร
-
ทำไมควรใช้ Crosscheck Archivelog All
-
วิธีรัน Crosscheck Archivelog All ใน RMAN
-
การตีความผลลัพธ์ของ Crosscheck Archivelog All ทำอย่างไร?
-
การปกป้องฐานข้อมูล Oracle ของคุณด้วย Vinchin Backup & Recovery
-
คำถามที่พบบ่อย เกี่ยวกับ Crosscheck Archivelog All
-
บทสรุป
การจัดการสำรองข้อมูล Oracle เป็นงานประจำวันของผู้ดูแลระบบฐานข้อมูล คำสั่งหนึ่งที่มักถูกพูดถึงบ่อยคือ crosscheck archivelog all แต่คำสั่งนี้จริง ๆ แล้วทำอะไร และควรใช้เมื่อไร? ในบทความนี้ เราจะแยกอธิบายแนวคิด แสดงวิธีการรันอย่างปลอดภัยในสภาพแวดล้อมต่างๆ และอธิบายวิธีตีความผลลัพธ์ในทุกระดับความสามารถ นอกจากนี้เรายังจะพูดถึงแนวทางปฏิบัติที่ดีที่สุด รวมถึงเคล็ดลับการแก้ปัญหา และวิธีที่ Vinchin สามารถช่วยให้คุณปกป้องฐานข้อมูล Oracle ของคุณได้
คำสั่ง Crosscheck Archivelog All คืออะไร
คำสั่ง crosscheck archivelog all เป็นส่วนหนึ่งของเครื่องมือ Recovery Manager (RMAN) ของ Oracle ซึ่งเป็นเครื่องมือหลักสำหรับการจัดการข้อมูลสำรองตั้งแต่ Oracle 8i (เอกสาร Oracle) และจะตรวจสอบไฟล์บันทึก redo log ที่ถูกเก็บไว้ทุกไฟล์ที่ระบุไว้ในที่เก็บ RMAN กับไฟล์จริงบนดิสก์หรือเทป หากไฟล์บันทึกหายไปจากตำแหน่งที่คาดไว้ เช่น เนื่องจากการลบด้วยตนเองหรือความล้มเหลวของฮาร์ดแวร์ RMAN จะทำเครื่องหมายในแคตตาล็อกว่า EXPIRED แต่หากไฟล์บันทึกมีอยู่ในตำแหน่งที่คาดไว้ ก็จะยังคงสถานะเป็น AVAILABLE
กระบวนการนี้ช่วยให้บันทึกการสำรองข้อมูลของคุณถูกต้องแม่นยำ โดยการรับประกันว่า RMAN รู้ว่าล็อกใดสามารถใช้งานได้จริงสำหรับการกู้คืน เช่น การเรียกคืนหรือการกู้คืนตามจุดเวลา (PITR) หากไม่ทำการตรวจสอบเปรียบเทียบอย่างสม่ำเสมอ คุณอาจเสี่ยงต่อการพึ่งพาข้อมูลที่ล้าสมัยในระหว่างการกู้คืนที่สำคัญ
ทำไมควรใช้ Crosscheck Archivelog All
ทำไมต้องรันคำสั่งนี้? เมื่อเวลาผ่านไป archive log อาจถูกลบออกด้วยตนเองหรือย้ายไปอยู่นอกเหนือการควบคุมของ RMAN เช่น ระหว่างการโยกย้ายข้อมูลเก็บหรืองานบำรุงรักษาตามปกติ เมื่อสิ่งนี้เกิดขึ้นโดยไม่ได้อัปเดตคลังข้อมูลของ RMAN โดยใช้คำสั่งที่เหมาะสม เช่น DELETE ARCHIVELOG แคตตาล็อกของคุณจะไม่ตรงกับความเป็นจริงอีกต่อไป
หากคุณพยายามกู้คืนหรือสำรองข้อมูลโดยใช้ข้อมูลที่ล้าสมัยเกี่ยวกับตำแหน่งหรือสถานะการใช้งานของไฟล์บันทึกอาร์คิฟ คุณอาจพบข้อผิดพลาด หรือแย่กว่านั้น คือคิดว่ามีไฟล์บันทึกที่แท้จริงแล้วสูญหายไปตลอดกาล การรัน crosscheck archivelog all จะช่วยหลีกเลี่ยงปัญหาดังกล่าว โดยการอัปเดตระเบียนภายในของ RMAN ให้สะท้อนเฉพาะสิ่งที่มีอยู่จริงบนดิสก์หรือเทป
วิธีรัน Crosscheck Archivelog All ใน RMAN
การรันคำสั่งนี้ทำได้ง่ายมาก แต่เรามาดำเนินการทีละขั้นตอนอย่างระมัดระวัง เพื่อให้แน่ใจว่าไม่มีอะไรหลงเหลือ
ขั้นตอนแรก เปิดหน้าต่างเทอร์มินัลบนเซิร์ฟเวอร์ของคุณโดยใช้สิทธิ์การเข้าถึงที่เพียงพอสำหรับงานการดูแลจัดการฐานข้อมูล (โดยทั่วไปคือ SYSDBA) เริ่มเซสชัน RMAN:
rman target /
คุณอาจต้องใช้พารามิเตอร์การเชื่อมต่อเพิ่มเติมหากทำงานจากระยะไกล โปรดปรึกษานโยบายของผู้ดูแลฐานข้อมูลหากไม่แน่ใจเกี่ยวกับวิธีการรับรองความถูกต้อง
เมื่ออยู่ที่พรอมต์ RMAN> ให้ป้อน:
CROSSCHECK ARCHIVELOG ALL;
RMAN จะสแกนไฟล์บันทึก redo ทั้งหมดที่ระบุไว้ในแคตตาล็อกของ repository โดยเปรียบเทียบตำแหน่งที่จัดเก็บข้อมูลกับไฟล์จริงที่พบในอุปกรณ์จัดเก็บข้อมูลแบบดิสก์หรือเทปที่กำหนดค่าผ่านช่องทาง (ALLOCATE CHANNEL)
สำหรับแต่ละไฟล์บันทึก
ถ้ามีอยู่ตามเส้นทางที่คาดหวัง: สถานะยังคงเป็น AVAILABLE
หากขาด: สถานะจะเปลี่ยนเป็น หมดอายุทันที
ตัวอย่างผลลัพธ์มีลักษณะดังนี้
validation succeeded for archived log archived log file name=/u01/app/oracle/arch/arch1_5_1086532269.dbf validation failed for archived log archived log file name=/u01/app/oracle/arch/arch1_20_1086532269.dbf
คุณสามารถรันคำสั่งนี้ได้บ่อยเท่าที่จำเป็น โดยเฉพาะหลังจากการลบด้วยตนเองหรือการเปลี่ยนแปลงโครงสร้างพื้นฐาน แต่โปรดจำไว้ว่าการสแกนบ่อยครั้งในแคตตาล็อกที่มีขนาดใหญ่มากอาจใช้เวลานานและใช้ทรัพยากรระบบอย่างมาก
การตรวจสอบและสิทธิ์ก่อนการดำเนินการ
ก่อนเรียกใช้งานการข้ามเช็คใดๆ
ยืนยันว่าคุณมีสิทธิ์
SYSDBAมิฉะนั้นตำแหน่งจัดเก็บข้อมูลบางตำแหน่งอาจไม่สามารถเข้าถึงได้
ตรวจสอบให้แน่ใจว่าไม่มีงานที่ขัดแย้งกัน (เช่น การสำรองหรือกู้คืนข้อมูลที่กำลังทำงานอยู่) กำลังดำเนินการอยู่ เนื่องจากการทำงานพร้อมกันอาจทำให้เกิดปัญหาการแข่งขันล็อกได้
ตรวจสอบพื้นที่ว่างบนดิสก์/เทปต้นทางและไดเรกทอรีชั่วคราวที่ใช้โดยกระบวนการ RMAN
การดำเนินตามขั้นตอนเหล่านี้จะป้องกันไม่ให้เกิดการหยุดชะงักในช่วงกลางการสแกน และหลีกเลี่ยงผลลัพธ์ที่ทำให้เข้าใจผิดอันเนื่องมาจากข้อผิดพลาดชั่วคราว
การตีความผลลัพธ์ของ Crosscheck Archivelog All ทำอย่างไร?
หลังจากรันคำสั่ง crosscheck archivelog all แล้ว ตรวจสอบข้อความที่แสดงในเซสชันเทอร์มินัลอย่างระมัดระวัง หรือหากต้องการ สามารถสอบถามสถานะโดยตรงจากภายใน RMAN โดยใช้รูปแบบคำสั่งคล้าย SQL ได้ในภายหลัง
บันทึกที่ถูกทำเครื่องหมายว่า AVAILABLE มีอยู่ที่ตำแหน่งที่คาดหวังไว้ตามการตั้งค่าปัจจุบัน พร้อมใช้งานสำหรับการสำรองข้อมูลหรือกู้คืนในอนาคตโดยไม่มีปัญหา
บันทึกที่ถูกทำเครื่องหมายว่า EXPIRED อย่างไรก็ตาม… ต้องการการตรวจสอบ
ไฟล์เหล่านี้จะไม่สามารถใช้งานได้เว้นแต่ว่าจะกู้คืนจากแหล่งอื่น เช่น คลังเทปนอกสถานที่/คลังข้อมูลบนระบบคลาวด์
การมีอยู่ของพวกมันในแคตตาล็อกแต่ไม่มีในสื่อทางกายภาพหมายความว่า การกู้คืนที่พยายามทำจะล้มเหลว เว้นแต่ว่าจะแก้ไขปัญหานี้ก่อน
เพื่อแสดงรายการบันทึกการเก็บถาวรที่หมดอายุอย่างชัดเจน:
LIST EXPIRED ARCHIVELOG ALL;
ในการลบรายการที่ล้าสมัยออกจากเมตาดาต้าของที่เก็บ:
DELETE EXPIRED ARCHIVELOG ALL;
สิ่งนี้ลบเฉพาะข้อมูลอ้างอิงภายใน RMAN เท่านั้น ไม่ได้ลบไฟล์จริงออกจากระบบจัดเก็บข้อมูลบนดิสก์หรือเทป! ควรตรวจสอบซ้ำทุกครั้งก่อนลบอะไรก็ตามอย่างถาวร นอกเหนือจากขั้นตอนที่ควบคุมไว้
การปกป้องฐานข้อมูล Oracle ของคุณด้วย Vinchin Backup & Recovery
นอกจากการรักษาให้บันทึกย้อนหลัง (archive logs) มีความซิงโครไนซ์กันแล้ว การปกป้องสภาพแวดล้อม Oracle ทั้งหมดอย่างมีประสิทธิภาพต้องอาศัยโซลูชันระดับองค์กรที่ออกแบบมาโดยเฉพาะสำหรับฐานข้อมูลสมัยใหม่ เช่น Oracle, MySQL, SQL Server, MariaDB, PostgreSQL, PostgresPro และ TiDB โดยเน้นเป็นพิเศษที่การรองรับ Oracle Vinchin Backup & Recovery มอบคุณสมบัติระดับมืออาชีพ เช่น การสำรองข้อมูลแบบเพิ่มเติม ความสามารถในการสำรองฐานข้อมูลแบบกลุ่ม การบีบอัดข้อมูลขั้นสูงที่ฝั่งต้นทางพร้อมตัวเลือกที่ออกแบบมาโดยเฉพาะสำหรับแพลตฟอร์มบางตัว เช่น Oracle เอง นโยบายการเก็บรักษาที่ยืดหยุ่น รวมถึงกลยุทธ์การเก็บรักษา GFS และการผสานรวมการสำรองข้อมูลบนคลาวด์กับการจัดเก็บข้อมูลบนเทปอย่างราบรื่น ทั้งหมดนี้ออกแบบมาเพื่อเพิ่มความน่าเชื่อถือสูงสุด ขณะเดียวกันก็ลดภาระงานด้านการบริหารและค่าใช้จ่ายด้านการจัดเก็บข้อมูลให้น้อยที่สุด
ด้วยอินเทอร์เฟซคอนโซลเว็บที่ใช้งานง่ายของ Vinchin Backup & Recovery การปกป้องข้อมูล Oracle ของคุณมักจะใช้เพียง 4 ขั้นตอนที่เรียบง่าย:
ขั้นตอนที่ 1: เลือกฐานข้อมูล Oracle ที่ต้องการสำรองข้อมูล

ขั้นตอนที่ 2: เลือกที่จัดเก็บข้อมูลสำรองที่คุณต้องการ

ขั้นตอนที่ 3: กำหนดกลยุทธ์การสำรองข้อมูลที่เหมาะสม

ขั้นตอนที่ 4: ส่งงาน

เป็นที่ยอมรับในระดับโลกโดยองค์กรหลายพันแห่งและได้รับการจัดอันดับสูงสุดอย่างต่อเนื่องจากผู้ใช้ทั่วโลก Vinchin Backup & Recovery มอบบริการทดลองใช้งานฟรี 60 วัน คลิกด้านล่างเพื่อสัมผัสประสบการณ์การปกป้องข้อมูลระดับองค์กรด้วยตนเอง
คำถามที่พบบ่อยเกี่ยวกับ Crosscheck Archivelog All
คำถามที่ 1. ทำ CROSSCHECK ARCHIVELOG ALL โดยอัตโนมัติในหลายฐานข้อมูลได้ไหม?
ได้ ใช้สคริปต์เปลือก (shell scripts) ร่วมกับเครื่องมือจัดตารางงาน เช่น cron jobs โดยต้องมั่นใจว่าการจัดการข้อมูลรับรองความปลอดภัยมีความปลอดภัยตลอดสภาพแวดล้อมการติดตั้ง
คำถามที่ 2. CROSSCHECK จะลบไฟล์บันทึกการเก็บถาวรของผมออกจากดิสก์ไหม?
CROSSCHECK จะอัปเดตเฉพาะสถานะภายในที่เก็บข้อมูลของ RMAN เท่านั้น จะไม่ลบไฟล์จริงโดยตรง เว้นแต่ว่าจะตามด้วยคำสั่ง DELETE
คำถามที่ 3. หาก CROSSCHECK รายงานว่า "หมดอายุ" แต่พื้นที่จัดเก็บของฉันแสดงว่ามีไฟล์อยู่ ฉันควรทำอย่างไร?
ตรวจสอบสิทธิ์การเข้าถึงไดเรกทอรีให้ตรงกับที่กระบวนการของ Oracle ต้องการ จากนั้นรันคำสั่ง CROSSCHECK ARCHIVELOG ALL อีกครั้ง
บทสรุป
การรักษาความสอดคล้องของบันทึกการจัดเก็บช่วยให้การกู้คืนเป็นไปอย่างราบรื่นเมื่อเกิดภัยพิบัติ และหลีกเลี่ยงปัญหาที่ไม่คาดคิดในระหว่างการกู้คืน คำสั่ง crosscheck archivelog all ทำให้ผู้ดูแลฐานข้อมูลมั่นใจได้ว่าแคตตาล็อกของพวกเขาสะท้อนสถานะจริงในทุกขั้นตอนของการวางแผนปฏิบัติการหรือการตอบสนองต่อเหตุการณ์ เพื่อความปลอดภัยอย่างสมบูรณ์ ควรพิจารณาใช้โซลูชันทรงพลังจาก Vinchin ตั้งแต่วันนี้
แชร์บน: