Odzwierciedlenie ograniczeń Oracle w Microsoft Fabric

W tym artykule opisano bieżące limity podczas dublowania baz danych Oracle w Microsoft Fabric. Te limity mogą ulec zmianie w miarę dalszego ulepszania usługi.

Uwaga / Notatka

Obecnie obsługujemy mirroring dla Oracle dla lokalnej bramy danych (OPDG). Skorzystaj z wersji 3000.282.5 lub nowszej.

Limity skalowania

Oto, czego można oczekiwać na skalę bazy danych:

  • Obecnie dublowana baza danych obsługuje maksymalnie 1000 tabel

Obsługiwane środowiska

Obsługujemy następujące środowiska programu Oracle Server:

  • Oracle w wersji 10 lub nowszej z włączoną usługą LogMiner
  • Lokalnie działające maszyny wirtualne Oracle (maszyna wirtualna, maszyna wirtualna Azure)
  • Oracle Cloud Infrastructure (OCI)
  • Oracle Database@Azure
  • Oracle Exadata

Mirroring dla Oracle obsługuje wyłącznie bazy danych w trybie zapisu. LogMiner nie działa w bazach danych w trybie tylko do odczytu.

Uwaga / Notatka

  • Narzędzie LogMiner musi być włączone na serwerze Oracle. To narzędzie ułatwia śledzenie zmian w bazie danych Oracle na potrzeby lustrzanego odbicia w czasie rzeczywistym.

Wymagania wstępne dotyczące mirroringu

Oto, czego potrzebujesz do konfiguracji bazy danych:

Obsługa typów danych i schematów

Obsługiwane są następujące typy danych Oracle:

  • VARCHAR2
  • NVARCHAR2
  • NUMER
  • FLOAT
  • DATE
  • BINARNY_FLOAT
  • BINARY_DOUBLE
  • RAW
  • ROWID
  • CHAR
  • NCHAR
  • SYGNATURA CZASOWA W LOKALNEJ STREFIE CZASOWEJ
  • INTERWAŁ OD DNIA DO SEKUNDY
  • INTERWAŁ OD ROKU DO MIESIĄCA

W przypadku zmian schematu (DDL) obecnie obsługujemy:

  • Zmiany kolumn (częściowe wsparcie):
    • Dodawanie kolumn
    • Usuwanie kolumn
    • Zmienianie nazw kolumn

Uwaga / Notatka

Aktualizacje typu danych kolumny nie są obsługiwane

Obsługujemy również dublowanie tabel, które mają partycjonowanie — jeśli tabele źródłowe są partycjonowane, możemy dublować te tabele.

Obsługiwane są tabele, które nie mają klucza podstawowego (PK) — jeśli masz unikatowy indeks w tabelach, możemy obsługiwać dublowanie tych tabel. Jeśli tabele nie mają klucza podstawowego (PK) ani indeksu unikatowego, nie będziemy obsługiwać dublowania tych tabel.

Nie można obsługiwać nazw tabel o długości większej lub równej 30.

Duże tabele i ponowne indeksowanie

Dołączanie lub ponowne dołączanie wielu dużych tabel w tym samym czasie powoduje gwałtowne skoki pamięci. Jeśli rozkładasz w czasie operacje na dużych tabelach i unikasz zbiorczych restartów, które wyzwalają jednocześnie wiele resetowań, okaże się, że to dobrze działa.

Wymagane uprawnienia

Użytkownik synchronizacji musi mieć następujące uprawnienia:

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;

Wymagania dotyczące konfiguracji

Archiwizowanie ustawień dziennika

Baza danych wymaga następujących ustawień dziennika archiwum:

  • Włączony tryb ARCHIVELOG
  • Zachowaj tryb logu archiwalnego podczas replikacji
  • Archiwizacja pliku dziennika redo włączona przez administratora bazy danych

Agresywne przeczyszczanie dzienników archiwum Oracle podczas początkowego obciążenia lub intensywnego działania CDC może wymusić ponawianie prób i zwiększyć wykorzystanie pamięci. Wskazówki dotyczące stabilności sugerują unikanie czyszczenia podczas początkowego obciążenia i dużego obciążenia CDC. Jeśli okna przestojów nie są wyraźnie określone, zachowaj co najmniej około 24 godziny dzienników.

Jeśli wystąpi ten błąd — "Nie znaleziono kompletnego słownika logminera lub ORA-01291: brak pliku dziennika\nORA-06512: w folderze \"SYS". DBMS_LOGMNR\.", postępuj zgodnie z powyższymi wskazówkami dotyczącymi przechowywania plików dziennika.

Konfiguracja rejestrowania

Jeśli użytkownik Oracle nie ma bezpośrednich uprawnień ALTER DATABASE i ALTER TABLE, poproś administratora bazy danych o uruchomienie następujących poleceń:

  1. Włącz rejestrowanie uzupełniające dla bazy danych:

    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY, UNIQUE) COLUMNS;
    
  2. Włącz rejestrowanie uzupełniające dla każdej tabeli, którą chcesz zdublować:

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

Nieprawidłowa precyzja dziesiętna lub skala kolumn Oracle NUMBER

Problematyka

Jeśli kolumna Oracle jest zdefiniowana jako NUMBER bez precyzji i skali (to znaczy bez określenia (p,s)), tworzenie kopii lustrzanej w usłudze Fabric może zakończyć się niepowodzeniem i wyświetleniem następującego błędu: Invalid Decimal Precision or Scale. Precyzja: 38 Skalowanie: 127

Przyczyna

Ten problem może wystąpić z powodu nieaktualnego klienta Oracle lub sterownika ODP używanego przez lokalną bramę danych, który nie interpretuje prawidłowo typów NUMBER w Oracle bez jawnie określonej precyzji i skali.

Resolution

Uaktualnij narzędzia klienckie Oracle używane przez bramę i uruchom ponownie proces dublowania, wykonując następujące kroki:

  1. Zatrzymaj dublowanie dla bazy danych, której dotyczy problem
    • Jeśli zatrzymanie dublowania ma wpływ na odbiorców podrzędnych, alternatywnie zatrzymaj lokalną bramę danych.
  2. Aktualizowanie narzędzi klienckich Oracle
  3. Uruchom ponownie usługi bramy
    • Otwórz plik services.msc
    • Uruchom ponownie usługę lokalnej bramy danych
  4. Ponowne uruchamianie dublowania
    • Wróć do portalu Fabric
    • Uruchom ponownie kopię lustrzaną

Konfigurowanie bramy

Obecnie obsługujemy tylko nawiązywanie połączenia z bazą danych Oracle przy użyciu lokalnej bramy danych (OPDG). Należy zainstalować i skonfigurować bramę na maszynie, która może łączyć się z serwerem Oracle.

Aby uzyskać wymagania dotyczące maszyny i instrukcje dotyczące instalacji i rejestrowania bramy, zobacz przewodnik instalacji lokalnej bramy danych.

Uwaga / Notatka

W przypadku konfiguracji wyższej współbieżności użycie pamięci wzrasta wraz z upływem czasu, gdy każdy potok odzwierciedlania uruchamia własny proces. Lepszą stabilność można uzyskać za pomocą -

  • Korzystanie z mniejszej liczby potężniejszych maszyn wirtualnych bram z wystarczającym zapasem zasobów i
  • Przydzielanie maszyn wirtualnych wyłącznie lokalnej bramie danych — nie ma innych obciążeń Fabric ani obciążeń wsadowych

Jeśli wystąpi ten błąd — "Nie można nawiązać połączenia z serwerem zdalnym...", próba połączenia nie powiodła się, ponieważ połączona strona nie odpowiedziała prawidłowo po upływie określonego czasu lub nawiązane połączenie nie powiodło się, ponieważ połączony host nie odpowiedział. Usługa Oracle Mirror Publisher działa w lokalnej bramie danych i musi mieć autorytatywne wymagania dotyczące łączności wychodzącej bramy. Zapoznaj się z artykułem Dostosowywanie ustawień komunikacji dla lokalnej bramy danych i postępuj zgodnie ze wskazówkami wymienionymi tam.

Zagadnienia poza mirroringiem w Oracle

Jeśli wystąpi którykolwiek z następujących błędów:

  • ORA-00604: wystąpił błąd na poziomie rekurencyjnym SQL 1\nORA-01289: nie można dodać zduplikowanego pliku dziennika +DBSV6162_ARCHIVE_OBIA/CPOBIACH/ARCHIVELOG/2026_03_03/thread_1_seq_138823.582.1226964749\nORA-06512: w "SYS.DBMS_LOGMNR", wiersz 82\nORA-06512: w wierszu 1\nORA-06512: w wierszu 1\nORA-06512: w "SYS.DBMS_LOGMNR", wiersz 72\nORA-06512: w wierszu 1
  • ORA-65040: operacja nie jest dozwolona z poziomu podłączalnej bazy danych.

Musisz skontaktować się z zespołem wsparcia technicznego Oracle lub otworzyć zgłoszenie serwisowe w Oracle. Nie kontaktuj się z Microsoftem. Poinformuj zespół pomocy technicznej Oracle, że baza danych Oracle używana do mirroringu wymaga aktualizacji do najnowszej poprawki.