Jeg har en brukstilfelle der jeg trenger å holde en lokal SQL Server-database synkronisert med min Azure SQL-database.
Er det en måte jeg kan sette opp replikering / synkronisering fra Azure SQL db til den lokale db?
Kommentarer
- Transaksjonell replikering til Azure SQL Database er nå generelt tilgjengelig (Microsoft Azure Blog) er muligens et godt utgangspunkt.
- Takk, jeg så allerede den lenken. Jeg ønsker synkronisering fra Azure SQL til lokal DB. Koblingen du oppga snakker om lokal til Azure SQL.
Svar
Følgende artikkeliste gi tilstrekkelig informasjon for deg å sette sammen en Azure SQL Data Sync :
SQL Data Sync er en tjeneste bygget på Azure SQL Database som lar deg synkronisere dataene du velger toveis i flere SQL-databaser og SQL Server-forekomster.
( Vekt mine)
I denne veiledningen, du lærer hvordan du konfigurerer Azure SQL Data Sync ved å opprette en hybrid synkroniseringsgruppe som inneholder begge Azure SQL Database og SQL Server-forekomster . Den nye synkroniseringsgruppen er fullstendig konfigurert og synkroniserer i henhold til tidsplanen du har angitt.
[…]Legg til en Azure SQL-database
I medlemdatabasedelen kan du eventuelt legge til en Azure SQL-database til synkroniseringsgruppen ved å velge Legg til en Azure-database. Konfigurer Azure Database-siden åpnes.
Gjør følgende på Konfigurer Azure Database-siden:
I feltet Synkroniser medlemsnavn, oppgi et navn for det nye synkroniseringsmedlemmet. Dette navnet er forskjellig fra navnet på selve databasen.
I abonnementsfeltet velger du det tilknyttede Azure-abonnementet for faktureringsformål.
I Azure SQL Server-feltet velger du den eksisterende SQL-databaseserveren.
I Azure SQL Database-feltet velger du den eksisterende SQL-databasen.
I feltet Synkroniser retninger velger du Toveis synkronisering, Til navet eller Fra huben.
I feltene Brukernavn og Passord , skriv inn eksisterende legitimasjon for SQL Database-serveren som medlemsdatabasen er lokalisert på. Ikke skriv inn ny legitimasjon i denne seksjonen.
Velg OK og vent til det nye synkroniseringsmedlemmen blir opprettet og distribuert.
Legg til en lokal SQL Server-database
I delen Database kan du eventuelt legge til en lokal SQL Server i synkroniseringsgruppen ved å velge Legg til en lokal database. Lokale-siden åpnes.
Gjør følgende på Konfigurer lokal-siden:
Velg Velg Sync Agent Gateway. Velg siden Synkroniser agent åpnes .
På siden Velg Sync Agent Gateway-siden velger du om du vil bruke en eksisterende agent eller opprette en ny agent.
Hvis du velger Eksisterende agenter, velg den eksisterende agenten fra listen.
Hvis du velger Opprett en ny agent, gjør du følgende:
a. Last ned programvaren for klientsynkroniseringsagent fra den medfølgende lenken og installer den på datamaskinen der SQL Server er plassert.
Viktig
Du må åpne utgående TCP-port 1433 i brannmuren for å la klientagenten kommunisere med serveren.
b. Skriv inn navnet på agenten.
c. Velg Opprett og generer nøkkel.
d. Kopier agentnøkkelen til utklippstavlen.
e. Velg OK for å lukke siden Select Sync Agent.
f. Finn og kjør Client Sync Agent-appen på SQL Server-datamaskinen.
g. Velg Send agentnøkkel i synkroniseringsappen. Dialogboksen Sync Metadata Database Configuration åpnes.
h. Lim inn agentnøkkelen som er kopiert fra Azure-portalen, i dialogboksen Konfigurasjon av synkroniseringsdatabase. Gi også eksisterende legitimasjon for Azure SQL Database-serveren som metadatadatabasen er lokalisert på. (Hvis du opprettet en ny metadatabase, er denne databasen på samme server som hubdatabasen.) Velg OK og vent til konfigurasjonen er ferdig.
Merk Hvis du får en brannmurfeil på dette tidspunktet, må du opprette en brannmurregel på Azure for å tillate innkommende trafikk fra SQL Server-datamaskinen.Du kan opprette regelen manuelt i portalen, men det kan være lettere å opprette den i SQL Server Management Studio (SSMS). I SSMS kan du prøve å koble til hub-databasen på Azure. Skriv inn navnet som
<hub_database_name>.database.windows.net
. Følg trinnene i dialogboksen for å konfigurere Azure-brannmurregelen. Gå tilbake til appen Client Sync Agent.
i. I Client Sync Agent-appen klikker du Registrer for å registrere en SQL Server-database med agenten. SQL Server Configuration-dialogboksen åpnes. j. I dialogboksen Konfigurasjon av SQL Server velger du om du vil koble til ved hjelp av SQL Server-godkjenning eller Windows-godkjenning. Hvis du valgte SQL Server-godkjenning, skriver du inn eksisterende legitimasjon. Oppgi navnet på SQL Server og navnet på databasen du vil synkronisere. Velg Test tilkobling for å teste innstillingene dine. Velg deretter Lagre. Den registrerte databasen vises i listen.
k. Du kan nå lukke Client Sync Agent-appen.
l. Velg Velg database på portalen på siden Konfigurer lokalt. Siden Velg database åpnes.
m. På siden Velg database, i feltet Synkroniser medlemsnavn, oppgir du et navn for det nye synkroniseringsmedlemmet. Dette navnet skiller seg fra navnet på selve databasen. Velg databasen fra listen. I feltet Synkroniser retninger velger du Toveis synkronisering, Til huben eller Fra huben.
n. Velg OK for å lukke siden Velg database. Velg deretter OK for å lukke siden Konfigurer på stedet, og vent til det nye synkroniseringsmedlet blir opprettet og distribuert. Til slutt klikker du OK for å lukke siden Velg synkroniser medlemmer.
For å koble til SQL Data Sync og den lokale agenten, legg til brukernavnet ditt i rollen DataSync_Executor. Data Sync oppretter denne rollen på SQL Server-forekomsten.
Trinn 3 – Konfigurer synkroniseringsgruppe
Etter at de nye synkroniseringsgruppemedlemmene er opprettet og distribuert, Trinn 3, Konfigurer synkroniseringsgruppe, er uthevet på siden Ny synkroniseringsgruppe.
-
På tabellsiden velger du en database fra listen over synkroniseringsgruppemedlemmer, og deretter velger du Oppdater skjema .
-
Fra listen over tilgjengelige tabeller velger du tabellene du vil synkronisere.
-
Som standard er alle kolonnene i tabellen er valgt. Hvis du ikke vil synkronisere alle kolonnene, deaktiverer du avkrysningsruten for kolonnene du ikke vil synkronisere. Sørg for å la hovednøkkelkolonnen være valgt.
-
Til slutt velger du Lagre.
SQL Data Sync er en tjeneste bygget på Azure SQL Database som lar deg synkronisere dataene du velger toveis i flere SQL-databaser og SQL Server-forekomster.
Data Sync er basert på konseptet med en Sync Group. En synkroniseringsgruppe er en gruppe databaser som du vil synkronisere.
Kommentarer
- Bare anekdotisk, mens denne informasjonen er riktig, har jeg opplevd et betydelig antall problemer med Azure Data Sync til det punktet hvor vi måtte forlate den som en løsning på prosjektet vårt. Det er ikke ‘ t å si at det ikke ville ‘ t fungere for OP, bare at det er tilfeller der du legger til en rekke triggere til databasen for å opprettholde tilstanden mellom to uavhengige servere er ikke ‘ t den beste løsningen.