Del via


Replikere data fra Microsoft Dynamics 365 (online) til Microsoft Azure SQL Database

 

Udgivet: februar 2017

Gælder for: Dynamics 365 (online), Dynamics CRM Online

Bemærk

Oplysningerne her er til versioner af Dynamics 365, der er tidligere end Dynamics 365 (online), version 9.0. Du kan finde den nyeste dokumentation i Repliker data til Azure SQL Database.

Microsoft Dynamics 365-Dataeksportservice er et tilføjelsesprogram, som stilles til rådighed i Microsoft AppSource, der giver mulighed for at replikere Microsoft Dynamics 365 (online)-data til et Microsoft Azure SQL Database-lager i et kundeejet Microsoft Azure-abonnement. De understøttede måldestinationerne er Microsoft Azure SQL Database og SQL Server på virtuelle Microsoft Azure-maskiner.Dataeksportservice synkroniserer på intelligent vis alle Dynamics 365-dataene først og synkroniserer derefter løbende, når der forekommer ændringer (deltaændringer), i Microsoft Dynamics 365 (online)-systemet. Dette hjælper med at aktivere flere analyse- og rapporteringsscenarier oven på Dynamics 365-data med data- og analysetjenester for Azure og åbner nye muligheder for kunder og partnere for at opbygge tilpassede løsninger.

Bemærk

Du kan bruge Dataeksportservice sammen med:

  • Microsoft Dynamics 365 (online)

  • Opdatering til Microsoft Dynamics CRM Online 2016

Du kan finde oplysninger om programmeringsgrænsefladen til styring af konfiguration og administration af Dataeksportservice under MSDN: Tjenesten Dataeksport.

Dette emne indeholder

Forudsætninger for brug af Dataeksportservice

Påkrævede tjenester, legitimationsoplysninger og rettigheder

Hvad du skal vide, før du bruger Dataeksportservice

Eksportprofil

Oprette en eksportprofil

Ændre en eksisterende eksportprofil

Tabeloplysninger om Azure SQL-destinationsdatabasen

Løse synkroniseringsproblemer

Håndtering og overvågning af fejl

Bedste fremgangsmåder, når du bruger SQL Azure Database med dataeksport

Om ventetid ved datasynkronisering

Sådan konfigureres Azure nøgle Vault

Kendte problemer og begrænsninger

Forudsætninger for brug af Dataeksportservice

Hvis du vil begynde at bruge Dataeksportservice, gælder følgende forudsætninger.

Tjenesten Azure SQL Database

  • Et kundeejet Azure SQL Database-abonnement. Dette abonnement skal tillade den datamængde, der synkroniseres.

  • Firewall-indstillinger. Vi anbefaler, at du slår Tillad adgang til Azure Services fra og angiver de relevante klient-IP-adresser, der er angivet i dette emne. Flere oplysninger: Statiske IP-adresser for Azure SQL-database bruges af Dataeksportservice

    Alternativt kan du slå Tillad adgang til Azure Services til for at give adgang til alle Azure Services.

    For SQL Server på Azure VM skal indstillingen "Oprette forbindelse til SQL Server via internettet" være aktiveret. Yderligere oplysninger: Microsoft Azure: Oprette forbindelse til en virtuel SQL Server-maskine på Azure (klassisk installation)

  • Databasebruger skal have tilladelser til database- og skemaniveauet i overensstemmelse med de følgende tabeller. Databasebrugeren anvendes i forbindelsesstrengen for dataeksport.

    Der kræves tilladelser for databasen.

    Kode for tilladelsestype

    Tilladelsesnavn

    CRTB

    CREATE TABLE (OPRET TABEL)

    CRTY

    CREATE TYPE (OPRET TYPE)

    CRVW

    CREATE VIEW (OPRET VISNING)

    CRPR

    CREATE PROCEDURE (OPRET PROCEDURE)

    ALUS

    ALTER ANY USER (SKIFT ALLE BRUGERE)

    VWDS

    VIEW DATABASE STATE (SE DATABASETILSTAND)

    Der kræves tilladelser for skemaer.

    Kode for tilladelsestype

    Tilladelsesnavn

    AL

    ALTER (SKIFT)

    IN

    INSERT (INDSÆT)

    DL

    DELETE (SLET)

    SL

    SELECT (VÆLG)

    UP

    UPDATE (OPDATER)

    EX

    EXECUTE (UDFØR)

    RF

    REFERENCES (REFERENCER)

Tjenesten Azure Key Vault

  • Kundeejet Azure Key Vault-abonnement, der bruges til at vedligeholde forbindelsesstrengen til databasen på sikker vis.

  • Give PermissionsToSecrets-tilladelse til programmet med id'et "b861dbcc-a7ef-4219-a005-0e4de4ea7dcf". Dette kan udføres ved at køre AzurePowerShell-kommandoen nedenfor og bruges til åbne den Key Vault, der indeholder hemmeligheden for forbindelsesstrengen.Flere oplysninger:Sådan konfigureres Azure nøgle Vault

  • Nøgleboksen skal mærkes med Microsoft Dynamics 365-organisationen (OrgId) og lejer-id'erne (TenantId). Dette kan udføres ved at køre AzurePowerShell-kommandoen nedenfor.Flere oplysninger:Sådan konfigureres Azure nøgle Vault

Microsoft Dynamics 365 (online)

  • En Opdatering til Microsoft Dynamics CRM Online 2016-forekomst eller en forekomst til en nyere version.

  • Dataeksportservice-løsningen skal være installeret. Hent den nu i Microsoft AppSource.

  • De objekter, der skal føjes til Eksportprofil, skal aktiveres med ændringssporing. For at sikre at et standardobjekt eller et brugerdefineret objekt kan synkroniseres, skal du gå til Tilpasning > Tilpas systemet og derefter klikke på objektet. På fanen Generelt skal du kontrollere, at indstillingen Ændringssporing i sektionen Datatjenester er aktiveret.

  • Du skal have sikkerhedsrollen Systemadministrator i Microsoft Dynamics 365 (online)-forekomsten.

Webbrowser

Aktivér pop op-vinduer for domænet https://discovery.crmreplication.azure.net/ i din webbrowser. Dette er påkrævet for logge automatisk på, når du går til Indstillinger > Dataeksport.

Påkrævede tjenester, legitimationsoplysninger og rettigheder

For at kunne bruge Dataeksportservice-funktionen skal du have følgende tjenester, legitimationsoplysninger og rettigheder.

  • Et Microsoft Dynamics 365 (online)-abonnement. Kun brugere, der er tildelt sikkerhedsrollen Systemadministrator i Microsoft Dynamics 365, kan oprette eller ændre en Eksportprofil.

  • Microsoft Azure-abonnement, der omfatter følgende tjenester.

    • Azure SQL Database eller AzureSQL Server på Azure virtuelle maskiner.

    • Azure Key Vault.

Vigtigt

For at kunne bruge Dataeksportservice skal tjenesterne Microsoft Dynamics 365 (online) og Azure Key Vault køre under samme lejer og i samme Microsoft Azure Active Directory.Flere oplysninger:Integration af Azure med Office 365

Azure SQL Database-tjenesten og Microsoft Dynamics 365 (online)-tjenesten kan have samme eller forskellige lejere.

Hvad du skal vide, før du bruger Dataeksportservice

  • Eksportprofiler skal slettes og derefter oprettes igen, hver gang du udfører en af følgende handlinger på en Microsoft Dynamics 365 (online)-forekomst.

    • Gendanne en forekomst.

    • Kopiere (fuld eller minimal) en forekomst.

    • Nulstille en forekomst.

    • Flytte en forekomst at et andet land eller område.

    Du kan gøre dette ved at slette Eksportprofil i visningen eksportprofiler og derefter slette tabellerne og stored procedures og oprette en ny profil.Flere oplysninger:Sådan slettes tabeller og lagrede procedurer for alle dataeksportprofiler

  • Dataeksportservice fungerer ikke for Microsoft Dynamics 365 (online)-sandkasseforekomster, der er konfigureret med Aktivér administrationstilstand aktiveret.Flere oplysninger:Administrationstilstand

  • Dataeksportservice sletter ikke de tilknyttede tabeller, kolonner eller stored procedure-objekter i destinationen Azure SQL Database, når følgende handlinger udføres.

    • Et objekt slettes i Microsoft Dynamics 365 (online).

    • Et felt slettes i Microsoft Dynamics 365 (online).

    • Et objekt fjernes fra en Eksportprofil.

    Disse elementer skal fjernes manuelt.Sådan slettes tabeller og stored procedures for dataeksportprofiler for et bestemt objekt

    Metadatasletningsmeddelelser logføres i mappen unprocessablemessages.Håndtering og overvågning af fejl

Eksportprofil

For at eksportere data fra Microsoft Dynamics 365 (online), opretter Microsoft Dynamics 365 (online)-administratoren en Eksportprofil. Der kan oprettes og aktiveres flere profiler for at synkronisere data til en anden destinationsdatabase på samme tid.

Eksportprofil er det centrale begreb i Dataeksportservice.Eksportprofil indsamler opsætnings- og konfigurationsoplysninger for at synkronisere data med destinationsdatabasen. Som en del af Eksportprofil, leverer administratoren en liste over objekter, der skal eksporteres til destinationsdatabasen. Når Eksportprofil er aktiveret, startes den automatiske synkronisering af data. I første omgang eksporteres alle data, der svarer til de enkelte valgte objekter. Derefter synkroniseres kun ændringer af data. Det foregår løbende ved hjælp af en overførselsmekanisme, næsten i realtid og i takt med, at ændringerne forekommer i objektposter eller metadata i Microsoft Dynamics 365 (online). Derfor behøver du ikke at oprette en tidsplan for hentning af data fra Microsoft Dynamics 365 (online).

Kun objekter, hvor registrering af ændringer er aktiveret, kan føjes til Eksportprofil. Bemærk, at for de fleste Microsoft Dynamics 365-standardobjekter, som registrerer data, er registrering af ændringer aktiveret. For brugerdefinerede objekter skal ændringsregistrering aktiveres direkte, før du kan føje dem til en Eksportprofil.Flere oplysninger:Aktivér Skift sporing for at styre datasynkronisering

Dataeksportservice foretager synkronisering af både metadata og data. Hvert objekt oversættes til én tabel, og hvert felt oversættes til en kolonne i destinationsdatabasetabellen. Tabel- og kolonnenavne benytter skemanavnet for Microsoft Dynamics 365-metadataene.

Når Eksportprofil er aktiveret, indsamler den statistik for datasynkroniseringen, som giver et bedre driftsmæssigt overblik og hjælper diagnosticeringen eksporterede data.

Datasynkronisering med en eksportprofil

Kategori

Funktion

Understøttede datatyper

Første synkronisering

Metadata – Grundlæggende datatyper

Datatyperne Heltal, Flydende tal, Decimaltal, Enkelt tekstlinje, Flere linjers tekst, Dato og Klokkeslæt.

Første synkronisering

Metadata – Avancerede datatyper

Valuta, PartyList, Grupperet indstilling, Status, Statusårsag, Opslag (herunder typerne Kunde og Angående). PartyList er kun tilgængelig for eksportversion 8.1 og derover.

Første synkronisering

Data – Grundlæggende typer

Alle grundlæggende datatyper.

Første synkronisering

Data – Avancerede typer

Alle avancerede datatyper.

Delta-synkronisering

Ændre skema – Grundlæggende typer

Tilføj eller rediger feltændring, alle grundlæggende datatyper.

Delta-synkronisering

Ændre skema – Avancerede typer

Tilføj eller rediger feltændring, alle avancerede datatyper.

Delta-synkronisering

Ændre data – Grundlæggende typer

Alle grundlæggende datatyper.

Delta-synkronisering

Ændre data – Avancerede typer

Alle avancerede datatyper, f.eks. PartyList.

Oprette en eksportprofil

Kontrollér, at følgende krav er opfyldt, før du opretter en Eksportprofil.

  • Dataeksportservice-løsningen er installeret i din Microsoft Dynamics 365 (online)-forekomst.

  • Vedligehold SQL-database-forbindelsesstrengen i Key Vault, og kopier URL-adressen for Key Vault for at levere i Eksportprofil. Yderligere oplysninger: Microsoft Azure: Introduktion til Azure Key Vault

  • Ændringssporing af aktiveret for de objekter, der skal føjes til Eksportprofil.Flere oplysninger:Aktivér Skift sporing for at styre datasynkronisering

  • Din SQL-database-tjeneste har tilstrækkelig plads til lagre Microsoft Dynamics 365-dataene.

  • Du er systemadministrator i Microsoft Dynamics 365 (online)-forekomsten.

  1. Gå til Indstillinger > Dataeksport i Microsoft Dynamics 365 (online).

  2. Gennemse meddelelsen, og klik på Fortsæt eller Annuller, hvis du ikke ønsker at eksportere data.

  3. Klik på Ny for at oprette en ny Eksportprofil.

  4. I trinnet Egenskaber skal du angive følgende oplysninger og derefter klikke på Næste for at fortsætte uden at oprette forbindelse til Key Vault. Når du klikker på Valider, bruges den angivne URL-adresse for Key Vault til at oprette forbindelse til Key Vault.

    • Navn. Entydigt navn på profilen. Dette felt er obligatorisk.

    • URL-adresse for Key Vault-forbindelse. URL-adressen for Key Vault peger på den forbindelsesstreng, der er gemt med de legitimationsoplysninger, der blev brugt til at oprette forbindelse til destinationsdatabasen. Dette felt er obligatorisk.Flere oplysninger:Sådan konfigureres Azure nøgle Vault

      Vigtigt

      Der skelnes mellem store og små bogstaver i URL-adressen for Key Vault-forbindelsen. Angiv URL-adressen for Key Vault-forbindelsen nøjagtigt, som den vises, når du har kørt Windows PowerShell-kommandoerne i dette emne.

    • Skema. Navnet på et alternativt databaseskema. Kun alfanumeriske tegn er gyldige. Dette felt er valgfrit. Dbo er som standard det skema, der bruges som destination for SQL-database.

    • Præfiks. Det præfiks, der skal bruges til de tabelnavne, der er oprettet i destinationsdatabasen. Derved kan du nemmere identificere de tabeller, der er oprettet for Eksportprofil i destinationsdatabasen. Når det er angivet, skal du kontrollere, at præfikset indeholder mindre end 15 tegn. Dette felt er valgfrit, og kun alfanumeriske tegn er tilladte.

    • Antal nye forsøg. Det antal gange, som en post blev forsøgt, i tilfælde af fejl i indsættelsen eller opdateringen i destinationstabellen. Dette felt er obligatorisk. Gyldige værdier er 0-20, og standardværdien er 12.

    • Interval mellem nye forsøg. Det antal sekunder, der skal gå, før et nyt forsøg i tilfælde af en fejl. Dette felt er obligatorisk. Gyldige værdier er 0-3600, og standardværdien er 5.

    • Skriv slettelog. Valgfri indstilling til logføring af slettede poster.

    Fanen Egenskaber i dialogboksen Opret eksportprofil

  5. I trinnet Vælg objekter skal du vælge de objekter, du vil eksportere til destinationen SQL-database og derefter klikke på Næste.

    Vælg fanen Egenskaber i dialogboksen Opret eksportprofil

  6. I trinnet Vælg relationer kan du synkronisere forholdet M:N (mange til mange), som findes for de objekter, du valgte i det forrige trin. Klik på Næste.

    Opret eksportprofil - Administrer relationer - Vælg relationer

  7. I trinnet Oversigt skal du klikke på Opret og aktivér for at oprette profilposten og oprette forbindelse til Key Vault, som starter synkroniseringsprocessen. Ellers skal du klikke på Opret for at gemme Eksportprofil og aktivere den senere.

    Fanen Oversigt i dialogboksen Opret eksportprofil

Ændre en eksisterende eksportprofil

Du kan tilføje eller fjerne objekter og relationer i en eksisterende Eksportprofil, som du vil replikere.

  1. Gå til Indstillinger > Dataeksport i Microsoft Dynamics 365 (online).

  2. Vælg den ønskede Eksportprofil i visningen Alle dataeksportprofiler.

    Vælge en eksportprofil

  3. Klik på Administrer objekter på værktøjslinjen Handlinger for at tilføje eller fjerne objekter til dataeksport. Hvis du vil tilføje eller fjerne objektrelationer, skal du klikke på Administrer relationer.

    Administrere objekter eller objektrelationer

  4. Vælg de objekter eller objektrelationer, du vil tilføje eller fjerne.

    Vælg de objekter eller objektrelationer, der skal tilføjes eller fjernes

  5. Klik på Opdater for at sende ændringerne til Eksportprofil.

Vigtigt

Når du fjerner et objekt eller en objektrelation fra en Eksportprofil, slippes den tilsvarende tabel ikke i destinationsdatabasen. Før du kan tilføje et objekt, der er blevet fjernet, igen, skal du slippe den tilsvarende tabel i destinationsdatabasen. Du kan se, hvordan du fjerner en objekttabel, under Sådan slettes tabeller og stored procedures for dataeksportprofiler for et bestemt objekt.

Tabeloplysninger om Azure SQL-destinationsdatabasen

Dataeksportservice opretter tabeller for både data og metadata. En tabel oprettes for hvert objekt og det M:N-forhold, der er synkroniseret.

Når en Eksportprofil er aktiveret, oprettes disse tabeller i destinationsdatabasen. Disse er systemtabeller og indeholder ikke felterne SinkCreatedTime og SinkModifiedTime.

Tabelnavn

Oprettet den

<Præfiks>_GlobalOptionsetMetadata

Ved aktivering af Eksportprofil.

<Præfiks>_OptionsetMetadata

Ved aktivering af Eksportprofil.

<Præfiks>_StateMetadata

Ved aktivering af Eksportprofil.

<Præfiks>_StatusMetadata

Ved aktivering af Eksportprofil.

<Præfiks>_TargetMetadata

Ved aktivering af Eksportprofil.

<Præfiks>_AttributeMetadata

Ved aktivering af Eksportprofil.

<Præfiks>_DeleteLog

Ved aktivering af Eksportprofil, når indstillingen Slet log er aktiveret.

Løse synkroniseringsproblemer

Selv efter flere forsøg kan der opstå fejl i synkronisering af poster på grund af begrænsninger i databaselageret eller tabellåsning som følge af forespørgsler, der kører i lang tid. Du kan løse disse fejl ved at gennemtvinge en gensynkronisering af kun fejlbehæftede poster eller en gensynkronisering af alle poster.

  1. Åbn dine eksportprofiler for at søge efter dem, hvor der er fejl på synkronisering af poster. Dette gør du ved at vise dataprofilerne i synkroniseringsområdet eller ved at åbne en Eksportprofil som f.eks. denne profil, hvor der er en synkroniseringsfejl i kontaktobjektposten.

    DataExport_failed_records_exist

  2. Undersøg først kilden til synkroniseringsfejlen, og løs problemet.Flere oplysninger:Håndtering og overvågning af fejl

  3. Når problemet er løst, kan du synkronisere de fejlbehæftede poster.

    Bemærk

    Synkronisering af mislykkede poster er en funktion i prøveversionen.

    • En eksempelvisningsfunktion er en funktion, der ikke er fuldført, men gøres tilgængelig, før den officielt frigives, så kunderne kan få tidlig adgang og give feedback. Eksempelvisningsfunktionerne er ikke beregnet til produktionsformål og kan have begrænset funktionalitet.

    • Vi forventer ændringer af denne funktion, så du bør ikke bruge den til produktionsformål. Den bør kun bruges i test- og udviklingsmiljøer.

    • Microsoft yder ikke support til denne eksempelvisningsfunktion. Microsoft Dynamics 365 Teknisk support kan ikke hjælpe dig med problemer eller spørgsmål. Eksempelvisningsfunktionerne er ikke beregnet til brug i produktionen, og de er underlagt særlige supplerende vilkår for anvendelse.

    1. Log på din Microsoft Dynamics 365 (online)-forekomst, og gå til Indstillinger > Dataeksport.

    2. Åbn den Eksportprofil, der indeholder fejl ved synkroniseringen af poster.

    3. Klik på Synkroniser mislykkede poster igen på værktøjslinjen Eksportprofil.

    4. Klik på Ok, når de fejlbehæftede poster igen er synkroniseret, i bekræftelsesdialogboksen.

      Meddelelse om vellykket gensynkronisering

    5. Kontroller, at Eksportprofil ikke indeholder meddelelser om fejlbehæftede poster ved at åbne dataeksportprofilen og tjekke tælleren Mislykkede meddelelser under fanen Egenskaber og oversigt, som skal være 0. Klik på Opdater på værktøjslinjen Eksportprofil for at sikre, at værdien i Mislykkede meddelelser er den aktuelle værdi.

      Indikation for ingen mislykkedes poster

  4. Hvis der stadig er fejl i synkronisering af poster, når du har prøvet at synkronisere igen ved at følge ovenstående trin, skal du slippe tabeller, typer og stored procedures fra destinationsdatabasen og derefter fjerne objekterne fra Eksportprofil og tilføje dem igen.

    1. Slet de tilknyttede databaseobjekter i destinations-Azure SQL Database. Hvis du f.eks. oplever vedvarende problemer med synkronisering af kundeemneobjekter, kan du fjerne kundeemnetabeller, -typer og stored procedures i destinations-Azure SQL Database.Flere oplysninger:Sådan slettes tabeller og stored procedures for dataeksportprofiler for et bestemt objekt

    2. Fjern objektet, som f.eks. kundeemneobjektet, fra Eksportprofil.Flere oplysninger:Ændre en eksisterende eksportprofil

    3. Føj igen objektet, f.eks. kundeemneobjektet, til Eksportprofil, og aktiver derefter profilen.

Håndtering og overvågning af fejl

Hvis du vil have vist synkroniseringsstatus for en Eksportprofil, skal du gå til Indstillinger > Dataeksport og åbne Eksportprofil. På fanen OBJEKTER vises synkroniseringsstatussen, herunder kolonnen Mislykkedes poster for poster, der ikke kunne synkroniseres. For alle mislykkede poster kan der hentes en liste over disse poster, herunder statusårsager, ved at klikke på MISLYKKEDES POSTER på kommandolinjen.

Kommandolinjen Eksportprofil - knappen Mislykkede poster

I Eksportprofil kan du klikke på EGENSKABER OG OVERSIGT for at vise egenskaberne for profilen. Klik på RELATIONER for at vise synkroniseringsstatus for relationer.

Sådan får du vist detaljerede oplysninger om de poster, der ikke kunne synkroniseres

Visning af mislykkede postlogfiler kan hjælpe dig med at finde årsagen til fejl i synkroniseringen. Du kan få vist mislykkede poster i Azure-destinationsdatabasen ved at bruge Microsoft Azure Storage Explorer, en gratis enkeltstående app, så du let kan arbejde med Azure Storage-data. Yderligere oplysninger: Microsoft Azure Storage Explorer.

  1. Gå til Indstillinger > Dataeksport i Dynamics 365.

  2. Vælg den Eksportprofil, der har meddelelser om mislykkede poster, i visningen Alle dataeksportprofiler.

    Mislykkede meddelelser

  3. Klik på Mislykkede poster på værktøjslinjen Handlinger.

    Værktøjslinjeknappen Mislykkede poster

  4. I dialogboksen Download mislykkedes poster skal du klikke på Kopiér Blob URL og derefter klikke på Ok.

    Dialogboksen Download mislykkede poster

    Bemærk

    Blob URL-adressen er gyldig i op til 24 timer. Hvis URL-adressen overstiger 24-timers perioden, skal du gentage trinene beskrevet tidligere for at oprette en ny blob URL-adresse.

  5. Start Microsoft Azure Storage Explorer.

  6. Klik i Microsoft Azure Storage Explorer på Opret forbindelse til Azure Storage.

  7. Indsæt URL-adressen fra Udklipsholder i feltet Opret forbindelse til Azure Storage, og klik derefter på Næste.

    URL-adresse til lager

  8. Klik på Opret forbindelse på forbindelsesoversigtssiden.

  9. Azure Storage Explorer opretter forbindelse til destinationsdatabasen. Hvis der findes fejlbehæftede poster for Eksportprofil, viser Azure Storage Explorer mapper for synkronisering af mislykkede poster.

Kunne ikke registrere mappestruktur for synkronisering af mislykkede poster og logfiler

URL-adressen til Azure Blob Storage for mislykkedes poster peger på en placering, der har følgende mappestruktur:

  • data. Denne mappe indeholder meddelelser om mislykkede data og den tilknyttede JSON for postdata.

  • metadata. Denne mappe indeholder meddelelser om mislykkede metadata og den tilknyttede JSON for metadata.

  • failurelog. Denne mappe indeholder logfiler med oplysninger om synkroniseringsfejlen og årsagen til fejlen.

  • forcerefreshfailurelog. Denne mappe indeholder fejl fra den seneste kørsel af Dataeksportservice-kommandoen Mislykkede poster, der bruges til at synkronisere mislykkede poster igen.

  • unprocessablemessages. Denne mappe indeholder meddelelser om data, der ikke blev behandlet som følge af sletning af data eller metadata og tilknyttede JSON.

Mapperne failurelog og forcerefreshfailurelog har strukturen år\måned\dag\klokkeslæt, så du hurtigt kan finde de seneste fejl. Alle fejlposter, der er ældre end 30 dage, slettes.

Her er en eksempellogfil, der indikerer en synkroniseringsfejl i en kontaktobjektpost.

Objekt: kontakt, RecordId: 459d1d3e-7cc8-e611-80f7-5065f38bf1c1, NotificationTime: 28/12/2016 12:32:39, ChangeType: opdatering, FailureReason: Databasen 'tempdb' har nået sin størrelseskvote. Partitionér eller slet data, slet indekser, eller søg i dokumentationen efter mulige løsninger. Sætningen er blevet afsluttet.

Almindelige årsager til fejl ved synkronisering af poster

Her er nogle årsager til, at der kan opstå fejl ved synkronisering af poster.

  • Tilstrækkelig storage til destinationsdatabasen. Før du forsøger at synkronisere de mislykkede poster, kan du forøge eller frigøre Azure SQL Database storage efter behov. Når problemet opstår, registreres en meddelelse tilsvarende denne i fejlloggen.

    Databasen 'databasenavn' har nået sin størrelseskvote. Partitionér eller slet data, slet indekser, eller søg i dokumentationen efter mulige løsninger.

  • Timeout for synkronisering med Azure SQL Database. Dette kan ske under den indledende synkronisering af en dataeksportprofil, når store mængder data behandles på én gang. Når dette problem opstår, kan du synkronisere de fejlbehæftede poster igen.Løse synkroniseringsproblemer

Bedste fremgangsmåder, når du bruger SQL Azure Database med dataeksport

  • For at undgå synkroniseringsfejl, der skyldes ressourcebegrænsning, anbefaler vi, at du har en Azure SQL Database Premium P1-plan eller en bedre plan, når du bruger Dataeksportservice.Flere oplysninger:Azure SQL Database-ressourcebegrænsninger og SQL Database prissætning

  • Indstil Azure SQL Database til at bruge RCSI (Read Committed Snapshot Isolation) for arbejdsbelastninger, der kører samtidigt på den destinationsdatabase, der udfører længerevarende læsningsforespørgsler som f.eks. rapportering og ETL job. Dette reducerer forekomsten af timeout-fejl, der kan opstå i forbindelse med Dataeksportservice på grund af læse\skrive-konflikter.

Om ventetid ved datasynkronisering

Dataeksportservice er udviklet til at synkronisere dataændringer i destinationsdatabasen ved hjælp af en overførselsmekanisme ved at overvåge ændringer, efterhånden som de foretages i Dynamics 365. Tjenesten forsøger at overføre data inden for få minutter, men der er en række faktorer, der kan påvirke ventetiden for synkronisering fra slutpunkt til slutpunkt.

Følgende faktorer har indflydelse på varigheden af synkroniseringen:

  • Den aktuelle arbejdsbelastning på Dynamics 365.

  • Hastigheden for ændring af dataene i Dynamics 365.

  • Antallet af objekter, der føjes til de enkelte eksportprofiler og deres attributter.

  • SQL Server-ydeevne. Eksempel:

    • Tid for oprettelse af SQL-forbindelse.

    • Udførelsestid for SQL-sætning.

Baseret på overvågning af tjenesten, er det konstateret, at igangværende deltasynkronisering oftest afsluttes på 15 minutter, når tjenesten arbejder under følgende betingelser:

  • Den synkronisering, der foretages, er en deltasynkronisering og ikke den indledende synkronisering. Deltasynkronisering udføres kun på handlinger til ændring af data, som omfatter postoprettelses-, -opdaterings- og -sletningstransaktioner. Bemærk, at deltasynkronisering begynder, når den indledende synkronisering er afsluttet.

  • Den maksimale hastighed for ændringen af data i Dynamics 365 for alle objekter i eksportprofilen er mindre end 3000 poster pr. time. Ved pludselige forøgelser af hastigheden for ændringen af data på grund af massesletning af poster, der overstiger den maksimale ændringshastighed, resulterer i yderligere ventetid.

  • Hvert objekt, der føjes til en eksportprofil, indeholder færre end 150 attributter.

  • Databaseforbindelse eller udførelse af SQL-sætning færdiggøres på mindre end 10 sekunder. Hvis denne grænse overskrides, medfører det yderligere ventetid.

  • Der opstår ingen destinationsdatabaseforbindelse- eller SQL-eksekveringsfejl under synkronisering.

Når disse betingelser er opfyldt, er 15 minutter en typisk synkroniseringsventetid.Microsoft leverer ingen serviceaftale (SLA) for Dataeksportservice og stiller ingen garantier og påtager sig ingen forpligtelser med hensyn til synkroniseringsventetider.

Sådan konfigureres Azure nøgle Vault

Kør Windows PowerShell-scriptet, der er beskrevet her, som en Azure-kontoadministrator for at give tilladelse til funktionen Dataeksportservice, så den kan få adgang til din Azure Key Vault. Dette script viser den URL-adresse for nøgleoksen, som kræves for at oprette den Eksportprofil, der bruges til at få adgang til forbindelsesstrengen.

Før du kører scriptet, skal du erstatte pladsholderne for følgende variabler.

  • $subscriptionId. Abonnements-id for Azure. Abonnementets-id'et vises, når du kører kommandoen Login-AzureRmAccount.

  • $keyvaultName. Vælg et navn til en eksisterende eller ny Key Vault. Navnet bruges til at henvise til Key Vault. I dette eksempel bruges ContosoKeyVault. Du skal bruge dette navn til andre cmdlets for Key Vault.

  • $secretName. Angiv det navn, der bruges til den softwarebeskyttede nøgle til Key Vault. Hvis der ikke findes en beskyttet nøgle, oprettes den ved hjælp af det angivne hemmelige navn. I dette eksempel bruges ContosoDataExportSecret.

  • $resourceGroupName. Angiv navnet på den Azure-ressourcegruppe, du vil bruge. Hvis der ikke allerede findes en ressourcegruppe, oprettes en ny med det navn, du angiver. I dette eksempel bruges ContosoResourceGroup1.

  • $location. Angiv den placering, hvor ressourcegruppen er eller skal være placeret, f.eks. Det vestlige USA.

  • $connectionString. Forbindelsesstrengen til Microsoft Azure SQL Database. Du kan bruge ADO.NET-forbindelsesstrengen, sådan som den vises på dit Azure-dashboard.

  • $organizationIdList = kommasepareret liste over tilladte Microsoft Dynamics 365-organisationer, der er sorteret efter organisations-id (organizationId), for at aktivere for Dataeksportservice. Hvis du vil finde en organisations id, skal du gå til Indstillinger > Tilpasninger > Udviklerressourcer i Microsoft Dynamics 365. Organisations-id'et er under Referenceoplysninger om forekomst.

  • $tenantId. Angiver det Azure Active Directory-lejer-id, som Microsoft Dynamics 365-forekomsterne er tilknyttet. Flere oplysninger: Find Azure Active Directory-lejer-id'et for forekomster af Dynamics 365

# -------------------------------------------------------------------------------- #
    #  Provide the value for the following parameters before executing the script
$subscriptionId = 'ContosoSubscriptionId'   
$keyvaultName = 'ContosoKeyVault'
    $secretName = 'ContosoDataExportSecret'
    $resourceGroupName = 'ContosoResourceGroup1'
    $location = 'West US'
    $connectionString = 'AzureSQLconnectionString'
$organizationIdList = 'ContosoSalesOrg1_id, ContosoSalesOrg2_id'
$tenantId = 'tenantId'
    # -------------------------------------------------------------------------------- #

# Login to Azure account, select subscription and tenant Id
Login-AzureRmAccount
Set-AzureRmContext -TenantId $tenantId -SubscriptionId $subscriptionId

# Create new resource group if not exists.
$rgAvail = Get-AzureRmResourceGroup -Name $resourceGroupName -Location $location -ErrorAction SilentlyContinue
if(!$rgAvail){
    New-AzureRmResourceGroup -Name $resourceGroupName -Location $location
}

# Create new key vault if not exists.
$kvAvail = Get-AzureRmKeyVault -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -ErrorAction SilentlyContinue
if(!$kvAvail){
    New-AzureRmKeyVault -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -Location $location
    # Wait few seconds for DNS entry to propagate
    Start-Sleep -Seconds 15
}

# Create tags to store allowed set of Organizations.
$secretTags = @{}
foreach ($orgId in $organizationIdList.Split(',')) {
    $secretTags.Add($orgId.Trim(), $tenantId)
}

# Add or update a secret to key vault.
$secretVaule = ConvertTo-SecureString $connectionString -AsPlainText -Force
$secret = Set-AzureKeyVaultSecret -VaultName $keyvaultName -Name $secretName -SecretValue $secretVaule -Tags $secretTags

# Authorize application to access key vault.
$servicePrincipal = 'b861dbcc-a7ef-4219-a005-0e4de4ea7dcf'
Set-AzureRmKeyVaultAccessPolicy -VaultName $keyvaultName -ServicePrincipalName $servicePrincipal -PermissionsToSecrets get

# Display secret url.
Write-Host "Connection key vault URL is "$secret.id.TrimEnd($secret.Version)"" 

Sådan slettes tabeller og lagrede procedurer for alle dataeksportprofiler

Vigtigt

  • Kontroller, at du har oprettet @prefix og @schema-værdierne i sætningen korrekt, før du kører denne SQL-sætning.

  • Eksportprofil skal oprettes igen, når du kører denne SQL-sætning.

-----------------------------------------------------------------
-- Provide the value for the following parameters
DECLARE @prefix nvarchar(32) =''
DECLARE @schema nvarchar(32) ='dbo'
-----------------------------------------------------------------

DECLARE @sql nvarchar(max) = '';

SELECT @sql += 'DROP TABLE ' + QUOTENAME([TABLE_SCHEMA]) + '.' + QUOTENAME([TABLE_NAME]) + ';'
FROM [INFORMATION_SCHEMA].[TABLES]
WHERE [TABLE_TYPE] = 'BASE TABLE' AND [TABLE_NAME] like @prefix + '_%' AND [TABLE_SCHEMA]= @schema;

PRINT @sql
EXEC SP_EXECUTESQL @sql;

PRINT 'Finished dropping all tables. Starting to drop all stored procedures now.'

SELECT @sql='';
SELECT @sql += 'DROP PROCEDURE ' + QUOTENAME([ROUTINE_SCHEMA]) + '.' + QUOTENAME([ROUTINE_NAME]) + ';'
FROM [INFORMATION_SCHEMA].[ROUTINES]
WHERE [ROUTINE_TYPE] = 'PROCEDURE' AND [ROUTINE_NAME] like @prefix + '_%' AND [ROUTINE_SCHEMA]= @schema;
PRINT @sql
EXEC SP_EXECUTESQL @sql;

PRINT 'Finished dropping all stored procedures. Starting to drop all types now.'

SELECT @sql=''; 
SELECT @sql += 'DROP TYPE ' + QUOTENAME(SCHEMA_NAME([SCHEMA_ID])) + '.' +  QUOTENAME([NAME]) + ';'
FROM SYS.TYPES
WHERE is_user_defined = 1 AND [NAME] LIKE @prefix + '_%' AND [SCHEMA_ID]=SCHEMA_ID(@schema);

PRINT @sql
EXEC SP_EXECUTESQL @sql;

Sådan slettes tabeller og stored procedures for dataeksportprofiler for et bestemt objekt

Vigtigt

Kontroller, at du har oprettet @prefix, @schema og @entityName -værdierne i sætningen korrekt, før du kører denne SQL-sætning. I dette eksempel er kundeemneobjekttabellen, -typerne og stored procedurer slettet.

-----------------------------------------------------------------
-- Provide the value for the following parameters
DECLARE @prefix nvarchar(32) ='crm'
DECLARE @schema nvarchar(32) ='dbo'
DECLARE @entityName nvarchar(32) ='lead'
-----------------------------------------------------------------
DECLARE @sql nvarchar(max) = '';

IF @prefix != '' 
BEGIN
       SET @prefix = @prefix + '_'
END

SELECT @sql += 'DROP TABLE ' + QUOTENAME([TABLE_SCHEMA]) + '.' + QUOTENAME([TABLE_NAME]) + ';'
FROM [INFORMATION_SCHEMA].[TABLES]
WHERE [TABLE_TYPE] = 'BASE TABLE' AND [TABLE_NAME] like @prefix + @entityName  AND [TABLE_SCHEMA]= @schema;
PRINT @sql
EXEC SP_EXECUTESQL @sql;
PRINT 'Finished dropping the entity. Starting to drop the types associated with the entity'

SELECT @sql='';
SELECT @sql += 'DROP TYPE ' + QUOTENAME(SCHEMA_NAME([SCHEMA_ID])) + '.' + QUOTENAME([NAME]) + ';'
FROM SYS.TYPES
WHERE is_user_defined = 1 AND [NAME] LIKE @prefix + @entityName +'Type' 
OR [NAME] LIKE @prefix + @entityName +'IdType'
AND [SCHEMA_ID]=SCHEMA_ID(@schema);
PRINT @sql
EXEC SP_EXECUTESQL @sql;

Find Azure Active Directory-lejer-id'et for forekomster af Dynamics 365

  1. Log på Azure-portalen.

  2. Gå til Azure Active Directory > Appregistreringer > Slutpunkter.

  3. Lejer-id'et vises i de URL-adresser for slutpunkter, der er angivet med Azure-abonnementet.

Vigtigt

Et Azure-abonnement kan have flere Azure Active Directory-lejer id'er. Sørg for, at du vælger det rette Azure Active Directory-lejer-id, der er knyttet til den forekomst af Microsoft Dynamics 365, du vil bruge til eksport af data.

Statiske IP-adresser for Azure SQL-database bruges af Dataeksportservice

I Azure SQL Database skal du klikke på Angiv serverens firewall, indstille Tillad adgang til Azure Services til Fra, klikke på Tilføj klient-IP og derefter tilføje de IP-adresser, der er relevant for området for din Azure SQL Database.Flere oplysninger:Microsoft Azure: Konfigurere en firewallregel på SQL Azure Database-serverniveau ved hjælp af Azure Portal

Område

IP-adresse

Det vestlige USA

40.112.139.218

Det østlige USA

23.96.92.86

Vesteuropa

40.68.252.224

Det østlige Asien

52.175.24.148

Sydøstasien

52.163.231.218

Centralindien

52.172.191.195

Sydindien

52.172.51.15

Nordeuropa

52.169.117.212

Det vestlige Japan

138.91.22.196

Det østlige Japan

13.73.7.177

Det sydlige Brasilien

191.235.81.249

Det sydøstlige Australien

40.115.78.163

Det østlige Australien

13.73.202.160

Canada centrale

52.228.26.31

Canada øst

40.86.251.81

Det sydlige Storbritannien

51.140.71.166

Det vestlige Storbritannien

51.141.44.218

Kendte problemer og begrænsninger

Slettede poster kan blive genindsat i objekttabellen efter en fejl under synkronisering

Når du genopretter efter synkroniseringsfejl, kan poster, der tidligere er blevet slettet, blive genindsat i den oprindelige objekttabel. For at løse dette problem, når der sker fejl i synkroniseringen, skal du følge disse trin.

  1. Opret eksportprofiler, hvor Skriv slettelog er aktiveret. Genopret eksisterende eksportprofiler, som Skriv slettelog ikke er aktiveret for.

  2. Opret og udfør en SQL-forespørgsel for den SQL Azure-destinationsdatabase, der søger efter poster i tabellen DeleteLog. Hvis der findes en eller flere poster, tyder det på, at der er slettede poster.

  3. Hvis en eller flere poster findes i tabellen DeleteLog, skal du oprette og køre en SQL-forespørgsel, der registrerer forekomster, hvor post-id'et for en post, der findes i tabellen DeleteLog, stemmer overens med post-id'et for en post i en EntityName-tabel, og versionNumber i deleteLog er større end versionNumber på posten i tabellen EntityName. Når der bliver fundet et tilsvarende post-id, kan du slette posten fra EntityName-tabellen. For eksempel, hvis et post-id i kolonnen AccountId i tabellen DeleteLog svarer til et post-id i kolonnen AccountId i AccountBase-objekttabellen, og versionNumber i DeleteLog er større end versionNumber i tabellen Account, skal du slette posten fra AccountBase-objekttabellen.

    Vigtigt

    Afhængigt af dine forretningsmæssige behov og krav anbefaler vi, at du udfører SQL-forespørgsler for hyppighed af sletning af poster, men på tidspunkter uden for almindelige drift.

Eksempel på forespørgsel om sletning af objektposter.

DELETE FROM [dbo].[prefix_account] A
WHERE id IN (SELECT CONVERT(uniqueidentifier, recordid) FROM [dbo].[prefix_DeleteLog] DL WHERE DL.entityname ='account'
AND DL.VersionNumber > A.VersionNumber)

Objekter, der ikke understøtter eksport af data

Selvom de objekter, der er angivet her, understøtter ændringssporing, understøttes de ikke til eksport af data ved hjælp af Dataeksportservice.

Objekt

Tabelnavn

Løsning

Aktivitet

ActivityPointerBase

Vælg de specifikke aktivitetsobjekter til eksport, f.eks. Telefonopkald, Aftale, E-mail og Opgave.

Meddelelse om beskyttelse af personlige oplysninger

Ved at bruge Dataeksportservice, når du aktiverer en dataeksportprofil i Microsoft Dynamics 365, sendes dataene i objekterne, der tilføjes til profilen, til Azure. Den indledende synkronisering omfatter alle de data, der er knyttet til de objekter, som tilføjes til eksportprofilen, men derefter omfatter synkroniseringen kun nye ændringer, som kontinuerligt sendes til Dataeksportservice. Data, der sendes til Dataeksportservice, lagres midlertidigt i Azure Service Bus og Azure-lager, behandles i Azure Service Fabric og synkroniseres til sidst (indsættes, opdateres eller slettes) til den destinationsdatabase, der er angivet i dit Azure-abonnement. Når dataene er synkroniseret, slettes de fra Azure Service Bus og Azure.lager. Hvis der sker en fejl under datasynkronisering, lagres en minimal mængde data, svarende til objekttype, post-id og synkroniseringstidsstempel, i Azure-lager for at gøre det muligt at overføre en liste over poster, der ikke blev opdateret.

En administrator kan til enhver tid deaktivere eksportprofilen for at standse datasynkroniseringen. Desuden kan en administrator slette eksportprofilen for at fjerne eventuelle logfiler med fejlbehæftede poster, og vedkommende kan fjerne løsningen Dataeksportservice for at standse brugen af Dataeksportservice.

Datasynkroniseringen sker kontinuerligt mellem Dynamics 365 og Dataeksportservice på en sikker måde. Data krypteres, når de kontinuerligt udveksles mellem Dynamics 365 og Dataeksportservice.

De Azure-komponenter og -tjenester, som indgår i Dataeksportservice, er beskrevet nærmere i nedenstående sektioner.

Bemærk! Du kan finde oplysninger om andre Azure servicetilbud i Microsoft Azure Trust Center.

Azure Service Fabric

Denne funktion leverer API og Azure- beregnings-VM'er til behandling af meddelelser om postsynkronisering, der modtages fra Dynamics 365, og derefter behandles de, så postdata kan indsættes, opdateres eller slettes i destinationsdatabasen. Mikrotjenester, der er installeret på virtuelle maskiner styret af Azure Service Fabric, håndterer kørslen af alle beregningstjenester i forbindelse med datasynkronisering.

Azure Service Bus

Denne funktion leverer den meddelelsesbus, hvor Dynamics 365 indsætter de synkroniseringsmeddelelser, der behandles af beregningsnoder i Azure Service Fabric. Hver meddelelse gemmer oplysninger, f.eks. det org-id og den post, der skal synkroniseres data for. Inaktive data i Azure-tjenestebussen er ikke krypteret men kun tilgængelige for Dataeksporttjeneste.

Azure Blob Storage

Data lagres midlertidigt i Azure Blob Storage i tilfælde af, at dataene i meddelelsen om postsynkronisering er for store til at lagre i en meddelelse, eller der registreres en midlertidig fejl under behandlingen af synkroniseringsmeddelelsen. Disse blob-klynger bliver krypteret ved at udnytte den nyeste funktion i Azure Storage SDK, der både leverer symmetrisk og asymmetrisk krypteringsunderstøttelse samt integration af Azure Key Vault.

Azure SQL

I Azure SQL Database lagres konfigurationen af dataeksportprofilen og metrikværdier for datasynkronisering.

Se også

AppSource: Microsoft Dynamics 365 – Dataeksportservice
Nyheder i Dynamics 365 – Dataeksportservice
Administrere dine data
MSDN: Dataeksporttjeneste
Teamblog: Introduktion til Dynamics 365 – Dataeksportservice

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret