Problemen met gespiegelde Fabric-databases oplossen vanuit SQL Server

In dit artikel worden stappen voor probleemoplossing beschreven voor het spiegelen van een database in een SQL Server-exemplaar.

Wijzigingen in Fabriccapaciteit of -werkruimte

Meer informatie over wijzigingen in de capaciteit.

Let bovendien op de volgende oorzaken voor SQL Server:

Oorzaak Resultaat Aanbevolen oplossing
Werkruimte verwijderd Spiegelen stopt automatisch en schakelt de wijzigingenfeed in SQL Server uit Als spiegeling nog steeds actief is op de SQL Server, voert u de volgende opgeslagen procedure uit op uw SQL Server: exec sp_change_feed_disable_db;.
Andere mogelijke bronfouten Spiegelen is uitgeschakeld Om ervoor te zorgen dat uw rekenresources niet worden beïnvloed en om de impact op de SQL Server te minimaliseren, wordt spiegeling uitgeschakeld op permanente resourcefouten.
De instelling 'Gebruikers kunnen toegang krijgen tot gegevens die zijn opgeslagen in OneLake met apps buiten Fabric' is uitgeschakeld. "Replicator - Tabellen kunnen de replicatiestatus niet bereiken" Schakel de tenantinstelling in Gebruikers hebben toegang tot gegevens die zijn opgeslagen in OneLake met apps buiten Fabric.

Probleemoplossing van query's en algemene oplossingen

De stappen voor probleemoplossing en diagnostische query's kunnen verschillen in SQL Server 2025 en versies vóór SQL Server 2025.

Problemen met Fabric Mirroring in SQL Server 2025 oplossen

Query's voor probleemoplossing in SQL Server 2025

Als u problemen ondervindt met spiegelen in SQL Server 2025, voert u de volgende controles op databaseniveau uit met behulp van DMV's (Dynamic Management Views) 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 de gespiegelde SQL Server 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.

  4. Bekijk hoe je problemen met gespiegelde Fabric-databases kunt oplossen.

  5. Neem contact op met de ondersteuning als probleemoplossing is vereist.

Uitgebreide gebeurtenissensessie

De volgende uitgebreide gebeurtenissessie kan worden gebruikt om problemen met Fabric Mirroring op uw SQL Server 2025-exemplaar op te lossen. Het wordt alleen aanbevolen om deze sessie te maken voor probleemoplossing of ondersteuningsdoeleinden.

CREATE EVENT SESSION [sqlmirroringxesession] ON SERVER  
ADD EVENT sqlserver.synapse_link_addfilesnapshotendentry,  
ADD EVENT sqlserver.synapse_link_db_enable,  
ADD EVENT sqlserver.synapse_link_end_data_snapshot,  
ADD EVENT sqlserver.synapse_link_error,  
ADD EVENT sqlserver.synapse_link_info,  
ADD EVENT sqlserver.synapse_link_library,  
ADD EVENT sqlserver.synapse_link_perf,  
ADD EVENT sqlserver.synapse_link_scheduler,  
ADD EVENT sqlserver.synapse_link_start_data_snapshot,  
ADD EVENT sqlserver.synapse_link_totalsnapshotcount,  
ADD EVENT sqlserver.synapse_link_trace  
WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=ON)  
GO
 
ALTER EVENT SESSION [sqlmirroringxesession] ON SERVER
STATE = start;
GO

Het transactielog is vol vanwege een wachttijd voor het hergebruik van het replicatielog.

Als het transactielogboek van de SQL Server-database van de infrastructuurspiegelingsbron vol is vanwege het opnieuw gebruiken van het REPLICATION logboek, kunt u overwegen om de functionaliteit voor automatisch beheer in te schakelen.

Invloed op de prestaties van de gespiegelde brondatabase in SQL Server

In SQL Server 2025 kunt u een resource governor-pool maken om de workload van fabric-mirroring op uw SQL Server te beheren en te limiteren. U kunt resource governor gebruiken om het resourceverbruik van database-engine te beheren en beleidsregels af te dwingen voor gebruikersworkloads. Met Resource Governor kunt u verschillende serverresources reserveren of beperken, waaronder de hoeveelheid CPU, geheugen en fysieke I/O die gebruikersqueryworkloads kunnen gebruiken. Op deze manier kunt u uw primaire bedrijfsworkloads beschermen tegen de druk van de dataverzameling van de wijzigingsfeed van Fabric Mirroring.

Kan de vereiste machtiging niet verlenen aan de bronserver

Bij het maken van een nieuwe gespiegelde database SQL Server kan het maken mislukken met de volgende fout:

Unable to grant required permission to the source server. PowerBI user with prefix undefined not found.

Foutmelding: Schermopname van de PowerBI-gebruiker met een niet-gedefinieerd voorvoegsel kan niet worden gevonden.

De oplossing:

  1. In de Fabric-portal annuleert u het dialoogvenster en verwijdert u het gespiegelde database-item in de werkruimte.

  2. Open het Azure-portaal.

    1. Navigeer naar Azure Arc (klassiek) en SQL-servers. Selecteer vervolgens uw SQL Server-exemplaar met Arc en selecteer het tabblad Microsoft Entra-id .
    2. Schakel het selectievakje Een primaire beheerde identiteit gebruiken uit en selecteer Opslaan.
  3. Voer de volgende query herhaaldelijk uit in uw SQL Server-exemplaar totdat er geen rijen worden geretourneerd:

    SELECT * FROM sys.dm_server_managed_identities
    
  4. Ga terug naar de Azure-portal. Ga naar uw SQL Server-exemplaar met Arc en selecteer het tabblad Microsoft Entra-id .

  5. Schakel De primaire beheerde identiteit gebruiken in en selecteer Opslaan.

    Schermopname van de optie Een primaire beheerde identiteit gebruiken in het SQL Server-exemplaar.

  6. Voer de volgende query (hetzelfde als eerder) uit totdat deze exact één rij retourneert.

    SELECT * FROM sys.dm_server_managed_identities
    
  7. Stel in de Fabric-portal SQL Server Mirroring in op Fabric, wat nu zonder de fout moet slagen.