Delen via


Problemen met gespiegelde Fabric-databases oplossen vanuit Azure SQL Managed Instance

Dit artikel behandelt de stappen voor probleemoplossing bij het synchroniseren van Azure SQL Managed Instance.

Wijzigingen in Fabriccapaciteit of -werkruimte

Meer informatie over wijzigingen in de capaciteit.

Let bovendien op het volgende voor Azure SQL Managed Instance:

Oorzaak Resultaat Aanbevolen oplossing
Werkruimte verwijderd Spiegelen stopt automatisch en schakelt de wijzigingenfeed uit in Azure SQL Managed Instance Als de spiegeling nog steeds actief is in het met Azure SQL beheerde exemplaar, voert u de volgende opgeslagen procedure uit op uw Azure SQL Managed Instance: exec sp_change_feed_disable_db;.

T-SQL-query's voor probleemoplossing

Als u problemen ondervindt met spiegelen, voert u de volgende controles op databaseniveau uit met dynamische beheerweergaven (DMV's) en opgeslagen procedures om de configuratie te valideren.

  1. Voer de volgende query uit om te controleren of de wijzigingen correct stromen:

    SELECT * FROM sys.dm_change_feed_log_scan_sessions;
    
  2. Als de sys.dm_change_feed_log_scan_sessions DMV geen voortgang toont bij het verwerken van incrementele wijzigingen, voert u de volgende T-SQL-query uit om te controleren of er problemen zijn gerapporteerd:

    SELECT * FROM sys.dm_change_feed_errors;
    
  3. Als er geen problemen zijn gerapporteerd, voert u de volgende opgeslagen procedure uit om de huidige configuratie van het gespiegelde azure SQL Managed Instance te controleren. Controleer of deze juist is ingeschakeld.

    EXEC sp_help_change_feed;
    

    De belangrijkste kolommen die u hier kunt zoeken, zijn de table_name en state. Elke waarde geeft naast 4 een mogelijk probleem aan. (Tabellen mogen niet te lang in andere statussen staan dan in 4)

  4. Als de replicatie nog steeds niet werkt, controleert u of het juiste SAMI-object machtigingen heeft (zie SAMI-machtigingen).

    1. Selecteer in de Fabric-portal de optie '...' Beletseltekens op het gespiegelde database-item.
    2. Selecteer de optie Machtigingen beheren .
    3. Controleer of de naam van azure SQL Managed Instance wordt weergegeven met lees-, schrijfmachtigingen.
    4. Zorg ervoor dat de AppId die wordt weergegeven overeenkomt met de id van de SAMI van uw Azure SQL Managed Instance.
  5. Neem contact op met de ondersteuning als probleemoplossing is vereist.

Beheerde identiteit

De door het systeem toegewezen beheerde identiteit (SAMI) van het Azure SQL Managed Instance moet zijn ingeschakeld en moet de primaire identiteit zijn.

Als na het inschakelen de SAMI-instellingsstatus is uitgeschakeld of in eerste instantie is ingeschakeld, vervolgens uitgeschakeld en vervolgens weer is ingeschakeld, mislukt het spiegelen van Azure SQL Managed Instance naar Fabric OneLake. SAMI na opnieuw inschakelen is niet dezelfde identiteit als voordat u het uitschakelt. Daarom moet u de nieuwe SAMI-machtigingen verlenen voor toegang tot de Fabric-werkruimte.

De SAMI moet de primaire identiteit zijn. Controleer of de SAMI de primaire identiteit is met de volgende SQL: SELECT * FROM sys.dm_server_managed_identities;

Door de gebruiker toegewezen beheerde identiteit (UAMI) wordt niet ondersteund. Als u een UAMI toevoegt, wordt deze de primaire identiteit, waarbij de SAMI vervangen wordt als primair. Dit zorgt ervoor dat replicatie mislukt. U lost dit als volgt op:

  • Verwijder alle UAMI's. Controleer of de SAMI is ingeschakeld.

SAMI-machtigingen

De door het systeem toegewezen beheerde identiteit (SAMI) van azure SQL Managed Instance moet lees- en schrijfmachtigingen hebben voor het gespiegelde database-item in Microsoft Fabric. Wanneer u de gespiegelde database maakt vanuit de Fabric-portal, wordt de machtiging automatisch verleend. Als er een fout Unable to grant required permission to the source server. User does not have permission to reshare optreedt tijdens de installatie, moet u ervoor zorgen dat u een lid- of beheerdersrol hebt in de werkruimte met voldoende bevoegdheden. Wanneer u API gebruikt om de gespiegelde database te maken, moet u de machtiging expliciet verlenen.

Verwijder SAMI-lees - en schrijfmachtigingen niet voor het gespiegelde database-item van Fabric. Als u per ongeluk de machtigingen verwijdert, werkt het spiegelen van Azure SQL Managed Instance niet zoals verwacht. Er kunnen geen nieuwe gegevens worden gespiegeld vanuit de brondatabase.

Als u SAMI-machtigingen of -machtigingen van Azure SQL Managed Instance verwijdert die niet juist zijn ingesteld, gebruikt u de volgende stappen.

  1. Voeg de SAMI toe als gebruiker door de ... optie ellipsen te selecteren op het gespiegeld beheerde instantie-item.
  2. Selecteer de optie Machtigingen beheren .
  3. Voer het openbare eindpunt van Azure SQL Managed Instance in. Geef lees - en schrijfmachtigingen op.

Logboekgebruik

Het gebruik van de transactielogboekomvang voor een database die is ingeschakeld voor spiegeling, kan blijven groeien en het verkorten van logboeken vertragen. Zodra de maximale gedefinieerde limiet voor het transactielogboek is bereikt, mislukken schrijfbewerkingen naar de database. Om dit te voorkomen, zorgt spiegeling ervoor dat de hele database automatisch opnieuw wordt gesynchroniseerd wanneer de logboekruimte die wordt gebruikt een ingestelde drempel overschrijdt binnen de totale geconfigureerde logboekruimte. Zie Automatische herstelling voor gespiegelde Fabric-databases van Azure SQL Managed Instance voor diagnose en meer informatie over automatisch opnieuw zaaien.

Opnieuw verzenden is automatisch gestart

Fabric Mirroring van Azure SQL Managed Instance kan automatisch opnieuw worden verzonden onder bepaalde voorwaarden, op het niveau van de afzonderlijke tabel of voor de hele database. Voor meer informatie, automatisch herbewerken van gespiegelde Fabric-databases met Azure SQL Managed Instance.