Veelvoorkomende problemen in Azure Data Share
In dit artikel wordt uitgelegd hoe u veelvoorkomende problemen in Azure Data Share.
Azure Data Share uitnodigingen verzenden
Wanneer nieuwe gebruikers In sommige gevallen Uitnodiging accepteren selecteren in een e-mailuitnodiging, zien ze mogelijk een lege lijst met uitnodigingen. Dit probleem kan een van de volgende oorzaken hebben:
De Azure Data Share-service is niet geregistreerd als een resourceprovider van een Azure-abonnement in de Azure-tenant. Dit probleem t gebeurt wanneer uw Azure-tenant geen resource Data Share maken.
Wanneer u een Azure Data Share-resource maakt, wordt de resourceprovider automatisch geregistreerd in uw Azure-abonnement. U kunt de service handmatig Data Share registreren met behulp van de volgende stappen. Als u deze stappen wilt uitvoeren, hebt u de rol Inzender nodig voor het Azure-abonnement.
- Ga in de Azure-portal naar Abonnementen.
- Selecteer het abonnement dat u wilt gebruiken om de resource Azure Data Share maken.
- Selecteer Resourceproviders.
- Zoek naar Microsoft.DataShare.
- Selecteer Registreren.
De uitnodiging wordt verzonden naar uw e-mailalias in plaats van uw e-mailadres voor aanmelden bij Azure. Als u de Azure Data Share-service al hebt geregistreerd of een Data Share-resource hebt gemaakt in de Azure-tenant, maar u de uitnodiging nog steeds niet kunt zien, wordt uw e-mailalias mogelijk vermeld als ontvanger. Neem contact op met uw gegevensprovider en zorg ervoor dat de uitnodiging wordt verzonden naar uw e-mailadres voor aanmelden bij Azure en niet uw e-mailalias.
De uitnodiging is al geaccepteerd. Via de koppeling in het e-mailbericht gaat u naar Data Share pagina Uitnodigingen in de Azure Portal. Op deze pagina worden alleen uitnodigingen weergegeven die in behandeling zijn. Geaccepteerde uitnodigingen worden niet weergegeven op de pagina. Als u ontvangen shares wilt weergeven en uw doel-Azure Data Explorer configureren, gaat u naar de resource Data Share u hebt gebruikt om de uitnodiging te accepteren.
U bent gastgebruiker van de tenant. Als u een gastgebruiker van de tenant bent, moet u uw e-mailadres voor de tenant controleren voordat u de uitnodiging bekijkt. Na verificatie is deze 12 maanden geldig.
Shares maken en ontvangen
De volgende fouten kunnen optreden wanneer u een nieuwe share maakt, gegevenssets toevoegt of gegevenssets toekent:
- Kan geen gegevenssets toevoegen.
- Kan gegevenssets niet in kaart brengen.
- Kan de Data Share resource x geen toegang verlenen tot y.
- U hebt niet de juiste machtigingen voor x.
- We kunnen geen schrijfmachtigingen voor het Azure Data Share toevoegen aan een of meer van uw geselecteerde resources.
Mogelijk ziet u een van deze fouten als u onvoldoende machtigingen hebt voor het Azure-gegevensopslag. Zie Rollen en vereisten voor meer informatie.
U hebt de schrijfmachtiging nodig om gegevens te delen of te ontvangen uit een Azure-gegevensopslag. Deze machtiging maakt doorgaans deel uit van de rol Inzender.
Als u gegevens deelt of voor het eerst gegevens ontvangt uit het Azure-gegevensopslag, hebt u ook de machtiging Microsoft.Authorization/role assignments/write nodig. Deze machtiging maakt doorgaans deel uit van de rol Eigenaar. Zelfs als u de Azure-gegevensopslagresource hebt gemaakt, bent u niet noodzakelijkerwijs de eigenaar van de resource.
Wanneer u de juiste machtigingen hebt, Azure Data Share de beheerde identiteit van de data share-resource automatisch toegang tot het gegevensopslag. Dit proces kan enkele minuten duren. Als er een fout is vanwege deze vertraging, probeert u het na een paar minuten opnieuw.
SQL op basis van delen zijn extra machtigingen vereist. Zie Delen vanuit SQL bronnen voor meer informatie over vereisten.
Momentopnamen
Een momentopname kan om verschillende redenen mislukken. Open een gedetailleerd foutbericht door de begintijd van de momentopname en vervolgens de status van elke gegevensset te selecteren.
Momentopnamen mislukken vaak om de volgende redenen:
- Data Share geen machtiging om te lezen uit het brongegevensopslag of om naar het doelgegevensopslag te schrijven. Zie Rollen en vereisten voor meer informatie. Als u voor de eerste keer een momentopname maakt, kan Data Share enkele minuten nodig hebben om toegang te krijgen tot de Azure-gegevensopslag. Probeer het na een paar minuten opnieuw.
- De Data Share verbinding met het brongegevensopslag of doelgegevensopslag wordt geblokkeerd door een firewall.
- Een gedeelde gegevensset, brongegevensopslag of doelgegevensopslag is verwijderd.
Voor opslagaccounts kan een momentopname mislukken omdat een bestand bij de bron wordt bijgewerkt terwijl de momentopname zich voordeed. Als gevolg hiervan kan een bestand van 0 byte worden weergegeven op het doel. Na de update bij de bron moeten momentopnamen slagen.
Voor SQL bronnen kan een momentopname om de volgende redenen mislukken:
Het bronscript SQL doelscript SQL script dat Data Share machtiging verleent, is niet uitgevoerd. Of voor Azure SQL Database of Azure Synapse Analytics (voorheen Azure SQL Data Warehouse) wordt het script uitgevoerd met behulp van SQL in plaats van Azure Active Directory verificatie. U kunt de onderstaande query uitvoeren om te controleren of Data Share account de juiste machtiging heeft voor de SQL database. Voor de SQL database moet het queryresultaat Data Share account een db_datareader heeft. Voor de doeldatabase SQL moet het queryresultaat Data Share account db_datareader, db_datawriter en db_dlladmin bevat.
SELECT DP1.name AS DatabaseRoleName, isnull (DP2.name, 'No members') AS DatabaseUserName FROM sys.database_role_members AS DRM RIGHT OUTER JOIN sys.database_principals AS DP1 ON DRM.role_principal_id = DP1.principal_id LEFT OUTER JOIN sys.database_principals AS DP2 ON DRM.member_principal_id = DP2.principal_id WHERE DP1.type = 'R' ORDER BY DP1.name;Het brongegevensopslag- of doel-SQL gegevensopslag wordt onderbroken.
Het momentopnameproces of doelgegevensopslag biedt geen ondersteuning voor SQL gegevenstypen. Zie Delen vanuit SQL bronnen voor meer informatie.
Het brongegevensopslag- of SQL gegevensopslag wordt vergrendeld door andere processen. Azure Data Share vergrendelt deze gegevensopslag niet. Maar bestaande vergrendelingen voor deze gegevensopslag kunnen ervoor zorgen dat een momentopname mislukt.
Er wordt SQL naar de doeltabel verwezen door een beperking voor een refereerde sleutel. Als een doeltabel tijdens een momentopname dezelfde naam heeft als een tabel in de brongegevens, Azure Data Share de tabel en wordt er een nieuwe tabel gemaakt. Als naar de SQL wordt verwezen door een beperking voor referent sleutel, kan de tabel niet worden uitgevallen.
Er wordt een doel-CSV-bestand gegenereerd, maar de gegevens kunnen niet worden gelezen in Excel. Dit probleem kan zich mogelijk voor doen wanneer de SQL bevat gegevens die niet-Engelse tekens bevatten. Selecteer Excel tabblad Gegevens downloaden en kies het CSV-bestand. Selecteer het bestand origin 65001: Unicode (UTF-8) en laad de gegevens.
Schema voor momentopnamen bijwerken
Nadat de gegevensprovider het schema voor momentopnamen voor de verzonden share heeft bijgewerkt, moet de gegevens consumer het vorige schema voor momentopnamen uitschakelen en vervolgens het bijgewerkte schema voor momentopnamen inschakelen voor de ontvangen share. Het schema voor momentopnamen wordt opgeslagen in UTC en wordt in de gebruikersinterface weergegeven als de lokale tijd van de computer. Deze wordt niet automatisch aangepast voor zomer- en wintertijd.
In-place delen
Toewijzing van gegevenssets kan Azure Data Explorer om de volgende redenen:
- De gebruiker heeft geen schrijfmachtiging voor het Azure Data Explorer cluster. Deze machtiging maakt doorgaans deel uit van de rol Inzender.
- Het bron- of doelcluster Azure Data Explorer onderbroken.
- Het Azure Data Explorer broncluster is EngineV2 en het doel is EngineV3, of vice versa. Delen tussen Azure Data Explorer clusters van verschillende engineversies wordt niet ondersteund.
Volgende stappen
Als u wilt weten hoe u gegevens kunt delen, gaat u verder met de zelfstudie Gegevens delen.
Als u wilt weten hoe u gegevens ontvangt, gaat u verder met de zelfstudie Gegevens accepteren en ontvangen.