การสะท้อนข้อจํากัดของ Oracle ใน Microsoft Fabric

บทความนี้สรุปขีดจํากัดปัจจุบันเมื่อมิเรอร์ ฐานข้อมูล Oracle ใน Microsoft Fabric ข้อจํากัดเหล่านี้อาจเปลี่ยนแปลงได้เมื่อเราปรับปรุงบริการอย่างต่อเนื่อง

Note

ขณะนี้เรารองรับการมิเรอร์สําหรับ Oracle สําหรับเกตเวย์ข้อมูลภายในองค์กร (OPDG) ใช้เวอร์ชัน 3000.282.5 หรือสูงกว่า

ขีดจํากัดมาตราส่วน

นี่คือสิ่งที่คุณคาดหวังได้สําหรับขนาดฐานข้อมูล:

  • ปัจจุบันฐานข้อมูลมิเรอร์รองรับได้ถึง 1000 ตาราง

สภาพแวดล้อมที่รองรับ

เราสนับสนุนสภาพแวดล้อม Oracle Server เหล่านี้:

  • Oracle เวอร์ชัน 10 ขึ้นไปที่เปิดใช้งาน LogMiner
  • Oracle on-premises (VM, Azure VM)
  • โครงสร้างพื้นฐานระบบคลาวด์ของ Oracle (OCI)
  • ออราเคิล Database@Azure
  • ออราเคิล Exadata

การมิเรอร์สําหรับ Oracle สามารถรองรับฐานข้อมูลในโหมดเขียนเท่านั้น LogMiner ไม่ทํางานบนฐานข้อมูลโหมดการอ่าน

Note

  • ต้องเปิดใช้งาน LogMiner บนเซิร์ฟเวอร์ Oracle ของคุณ เครื่องมือนี้ช่วยติดตามการเปลี่ยนแปลงในฐานข้อมูล Oracle ของคุณสําหรับการมิเรอร์แบบเรียลไทม์

ข้อกําหนดเบื้องต้นในการมิเรอร์

นี่คือสิ่งที่คุณต้องการสําหรับการตั้งค่าฐานข้อมูลของคุณ:

ประเภทข้อมูลและการสนับสนุน Schema

ชนิดข้อมูล Oracle เหล่านี้ได้รับการสนับสนุน:

  • VARCHAR2
  • NVARCHAR2
  • เลข
  • ลอย
  • วันที่
  • BINARY_FLOAT
  • BINARY_DOUBLE
  • ดิบ
  • โรวิด
  • เผา
  • NCHAR
  • การประทับเวลาด้วยเขตเวลาท้องถิ่น
  • ช่วงเวลาวันถึงวินาที
  • ช่วงเวลาปีถึงเดือน

สําหรับการเปลี่ยนแปลงสคีมา (DDL) ขณะนี้เรารองรับสิ่งต่อไปนี้

  • การเปลี่ยนแปลงคอลัมน์ (การสนับสนุนบางส่วน):
    • เพิ่มคอลัมน์
    • ลบคอลัมน์
    • เปลี่ยนชื่อคอลัมน์

Note

ไม่รองรับการอัปเดตชนิดข้อมูลคอลัมน์

นอกจากนี้เรายังสนับสนุนการมิเรอร์ตารางที่มีการแบ่งพาร์ติชัน - หากตารางต้นทางของคุณถูกแบ่งพาร์ติชันเราสามารถมิเรอร์ตารางเหล่านั้นได้

รองรับตารางที่ไม่มีคีย์หลัก (PK) - หากคุณมีดัชนีที่ไม่ซ้ํากันในตาราง เราก็สามารถรองรับการมิเรอร์ตารางเหล่านั้นได้ หากตารางของคุณไม่มีคีย์หลัก (PK) หรือดัชนีที่ไม่ซ้ํากัน เราจะไม่รองรับการสะท้อนตารางเหล่านั้น

เราไม่สามารถสนับสนุนชื่อตารางที่มีความยาวมากกว่าหรือเท่ากับ 30

โต๊ะขนาดใหญ่และเมล็ดพันธุ์ใหม่

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

สิทธิ์ที่จําเป็น

ผู้ใช้การซิงค์ต้องมีสิทธิ์ต่อไปนี้

GRANT CREATE SESSION TO user;
GRANT SELECT_CATALOG_ROLE TO user;
GRANT CONNECT, RESOURCE TO user;
GRANT EXECUTE_CATALOG_ROLE TO user;
GRANT FLASHBACK ANY TABLE TO user;
GRANT SELECT ANY DICTIONARY TO user;
GRANT SELECT ANY TABLE TO user;
GRANT LOGMINING TO user;

ข้อกําหนดการกําหนดค่า

เก็บการตั้งค่าบันทึก

ฐานข้อมูลของคุณต้องการการตั้งค่าบันทึกการเก็บถาวรเหล่านี้:

  • เปิดใช้งานโหมด ARCHIVELOG
  • เปิดโหมดบันทึกการเก็บถาวรไว้ระหว่างการมิเรอร์
  • ทําซ้ําการเก็บถาวรไฟล์บันทึกที่เปิดใช้งานโดยผู้ดูแลระบบฐานข้อมูล

การล้างบันทึกการเก็บถาวรของ Oracle อย่างจริงจังในระหว่างการโหลดครั้งแรกหรือกิจกรรม CDC ที่หนักหน่วงสามารถบังคับให้ลองใหม่และเพิ่มแรงกดดันในหน่วยความจํา คําแนะนําสําหรับความเสถียรคือการหลีกเลี่ยงการล้างระหว่างการโหลดครั้งแรกและ CDC ที่หนักหน่วง หากกรอบเวลาหยุดทํางานไม่ชัดเจน โปรดเก็บบันทึกไว้อย่างน้อย ~24 ชั่วโมงที่ผ่านมา

หากคุณได้รับข้อผิดพลาดนี้ - "ไม่พบพจนานุกรม Logminer ที่สมบูรณ์ หรือ ORA-01291: ไฟล์บันทึกที่หายไป\nORA-06512: ที่ \"SYS. DBMS_LOGMNR\." ให้ทําตามคําแนะนําข้างต้นเกี่ยวกับการเก็บรักษาไฟล์บันทึก

การกําหนดค่าการบันทึก

หากผู้ใช้ Oracle ของคุณไม่มีสิทธิ์ ALTER DATABASE และ ALTER TABLE โดยตรง ให้ขอให้ DBA เรียกใช้คําสั่งเหล่านี้:

  1. เปิดใช้งานการบันทึกเพิ่มเติมสําหรับฐานข้อมูล:

    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY, UNIQUE) COLUMNS;
    
  2. เปิดใช้งานการบันทึกเพิ่มเติมสําหรับแต่ละตารางที่คุณต้องการมิเรอร์:

    ALTER TABLE {schemaName}.{tableName} ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
    

ความแม่นยําหรือมาตราส่วนทศนิยมไม่ถูกต้องสําหรับคอลัมน์ Oracle NUMBER

ประเด็น

หากคอลัมน์ Oracle ถูกกําหนดเป็น NUMBER โดยไม่มีความแม่นยําและมาตราส่วน (นั่นคือ ไม่มี (p,s) ที่ระบุ) การมิเรอร์ไปยัง Fabric อาจล้มเหลวโดยมีข้อผิดพลาดต่อไปนี้: ความแม่นยําหรือมาตราส่วนทศนิยมไม่ถูกต้อง ความแม่นยํา: 38 มาตราส่วน: 127

สาเหตุ

ปัญหานี้อาจเกิดขึ้นเนื่องจากไคลเอ็นต์ Oracle ที่ล้าสมัย/โปรแกรมควบคุม ODP ที่ใช้ โดยเกตเวย์ข้อมูลภายในองค์กร ซึ่งไม่ได้ตีความชนิด Oracle NUMBER อย่างถูกต้องโดยไม่มีความแม่นยําและมาตราส่วนที่ชัดเจน

การแก้ปัญหา

อัปเกรดเครื่องมือไคลเอ็นต์ Oracle ที่ใช้ โดยเกตเวย์ และเริ่มกระบวนการมิเรอร์ใหม่ โดยทําตามขั้นตอนเหล่านี้:

  1. หยุดการสะท้อนสําหรับฐานข้อมูลที่ได้รับผลกระทบ
    • หากการหยุดการมิเรอร์ส่งผลกระทบต่อผู้บริโภคดาวน์สตรีม ให้หยุดเกตเวย์ข้อมูลภายในองค์กร
  2. อัปเดตเครื่องมือไคลเอ็นต์ Oracle
  3. รีสตาร์ทบริการเกตเวย์
    • เปิด services.msc
    • รีสตาร์ทบริการเกตเวย์ข้อมูลภายในองค์กร
  4. รีสตาร์ทมิเรอร์
    • กลับไปที่พอร์ทัล Fabric
    • รีสตาร์ทกระจก

ตั้งค่าเกตเวย์ของคุณ

ปัจจุบัน เรารองรับเฉพาะการเชื่อมต่อกับ Oracle โดยใช้เกตเวย์ข้อมูลภายในองค์กร (OPDG) เท่านั้น คุณต้องติดตั้งและกําหนดค่าเกตเวย์บนเครื่องที่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ Oracle ของคุณได้

สําหรับข้อกําหนดของเครื่องและคําแนะนําในการตั้งค่าเพื่อติดตั้งและลงทะเบียนเกตเวย์ของคุณ โปรดดู คู่มือการติดตั้งเกตเวย์ข้อมูลภายในองค์กร

Note

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

ในการตั้งค่าการทํางานพร้อมกันที่สูงขึ้น การใช้หน่วยความจําจะสะสมเมื่อเวลาผ่านไป เนื่องจากไปป์ไลน์การมิเรอร์แต่ละรายการเรียกใช้กระบวนการของตัวเอง ความเสถียรที่ดีขึ้นสามารถรับได้โดย -

  • ใช้ VM เกตเวย์ที่น้อยลงและมีประสิทธิภาพมากขึ้นโดยมีพื้นที่ว่างเพียงพอและ
  • ทุ่มเท VM ให้กับเกตเวย์ข้อมูลในองค์กรโดยเฉพาะ - ไม่มีเวิร์กโหลด Fabric หรือแบทช์อื่น ๆ

ถ้าคุณได้รับข้อผิดพลาดนี้ - "ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกล..." อาจเป็นไปได้ว่าความพยายามในการเชื่อมต่อล้มเหลวเนื่องจากฝ่ายที่เชื่อมต่อไม่ตอบสนองอย่างถูกต้องหลังจากผ่านไประยะหนึ่ง หรือการเชื่อมต่อที่สร้างขึ้นล้มเหลวเนื่องจากโฮสต์ที่เชื่อมต่อล้มเหลวในการตอบสนอง Oracle Mirror Publisher ทํางานบนเกตเวย์ข้อมูลภายในองค์กร และจําเป็นต้องมีข้อกําหนดที่เชื่อถือได้สําหรับการเชื่อมต่อขาออกของเกตเวย์ อ้างถึง ปรับการตั้งค่าการสื่อสารสําหรับเกตเวย์ข้อมูลภายในองค์กร และทําตามคําแนะนําที่ระบุไว้ที่นั่น

ปัญหานอก Mirroring for Oracle

หากคุณได้รับข้อผิดพลาดใด ๆ ต่อไปนี้ -

  • ORA-00604: เกิดข้อผิดพลาดที่ SQL แบบเรียกซ้ําระดับ 1\nORA-01289: ไม่สามารถเพิ่มไฟล์บันทึกที่ซ้ํากัน +DBSV6162_ARCHIVE_OBIA/CPOBIACH/ARCHIVELOG/2026_03_03/thread_1_seq_138823.582.1226964749\nORA-06512: ที่ \"SYS DBMS_LOGMNR\" บรรทัดที่ 82\nORA-06512: ที่บรรทัดที่ 1\nORA-06512: ที่บรรทัดที่ 1\nORA-06512: ที่ \"SYS DBMS_LOGMNR\" บรรทัดที่ 72\nORA-06512: ที่บรรทัดที่ 1'
  • ORA-65040: ไม่อนุญาตให้ดําเนินการจากภายในฐานข้อมูลแบบเสียบได้

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