Självstudie: Konfigurera aktiv geo-replikering och redundans (Azure SQL Database)

Gäller för:Azure SQL Database

Den här artikeln visar hur du konfigurerar aktiv geo-replikering för Azure SQL Database med hjälp av Azure-portalen eller Azure CLI och initierar redundans.

Redundansgrupper finns i Redundansgrupper med Azure SQL Database och redundansgrupper med Azure SQL Managed Instance.

Förutsättningar

Den här självstudien visar hur du konfigurerar en databas för aktiv geo-replikering. Information om hur du skapar en enkel databas med Azure-portalen, Azure CLI, Azure CLI (sql up) eller PowerShell finns i Snabbstart: Skapa en enkel databas – Azure SQL Database.

Lägga till en sekundär databas

Följande steg skapar en ny sekundär databas i en geo-replikeringskoppling.

Om du vill lägga till en sekundär databas måste du vara prenumerationsägare eller medägare.

Den sekundära databasen har samma namn som den primära databasen och har som standard samma tjänstnivå och beräkningsstorlek. Den sekundära databasen kan vara en enskild databas eller en pooldatabas. Mer information finns i DTU-baserad inköpsmodell och köpmodell baserad på virtuell kärna. När den sekundära har skapats och hämtats börjar data replikeras från den primära databasen till den nya sekundära databasen.

Om din sekundära replik endast används för haveriberedskap (DR) och inte har några läs- eller skrivarbetsbelastningar kan du spara på licenskostnaderna genom att ange databasen för vänteläge när du konfigurerar en ny aktiv geo-replikeringsrelation. Läs mer i den licensfria väntelägesrepliken .

Kommentar

Om partnerdatabasen redan finns (till exempel på grund av att en tidigare geo-replikeringsrelation avslutas) misslyckas kommandot.

  1. I Azure-portalen bläddrar du till den databas som du vill konfigurera för geo-replikering.

  2. På sidan SQL Database väljer du din databas, bläddrar till Datahantering, väljer Repliker och sedan Skapa replik.

    Screenshot that shows the Configure geo-replication option.

  3. Välj eller skapa servern för den sekundära databasen och konfigurera alternativen För beräkning + lagring om det behövs. Du kan välja valfri region för den sekundära servern, men vi rekommenderar den kopplade regionen.

    Screenshot that shows the Create and configure replica screen.

    Du kan också lägga till en sekundär databas i en elastisk pool. Om du vill skapa den sekundära databasen i en pool väljer du Ja bredvid Vill du använda elastisk SQL-pool? Och väljer en pool på målservern. En pool måste redan finnas på målservern. Det här arbetsflödet skapar ingen pool.

  4. Klicka på Granska + skapa, granska informationen och klicka sedan på Skapa.

  5. Den sekundära databasen skapas och distributionsprocessen börjar.

    Screenshot that shows the deployment status of the secondary database.

  6. När distributionen är klar visar den sekundära databasen dess status.

    Screenshot that shows the secondary database status after deployment.

  7. Gå tillbaka till den primära databassidan och välj sedan Repliker. Den sekundära databasen visas under Geo-repliker.

    Screenshot that shows the SQL database primary and geo replicas.

Initiera en redundansväxling

Den sekundära databasen kan växlas till att bli den primära.

  1. I Azure-portalen bläddrar du till den primära databasen i geo-replikeringskopplingen.

  2. Bläddra till Datahantering och välj sedan Repliker.

  3. I listan Geo-repliker väljer du den databas som du vill bli den nya primära, väljer ellipsen och väljer sedan Tvingad redundans.

    Screenshot that shows selecting forced failover from the drop-down.

  4. Välj Ja när du vill starta redundansväxlingen.


Kommandot växlar omedelbart den sekundära databasen till den primära rollen. Den här processen bör normalt slutföras inom 30 sekunder eller mindre.

Det finns en kort period under vilken båda databaserna inte är tillgängliga, i storleksordningen 0 till 25 sekunder, medan rollerna växlas. Om den primära databasen har flera sekundära databaser konfigurerar kommandot automatiskt om de andra sekundärfilerna för att ansluta till den nya primära databasen. Hela åtgärden bör ta mindre än en minut att slutföra under normala omständigheter.

Ta bort sekundär databas

Den här åtgärden stoppar replikeringen permanent till den sekundära databasen och ändrar rollen för den sekundära till en vanlig skrivskyddad databas. Om anslutningen till den sekundära databasen är bruten lyckas kommandot, men den sekundära blir inte skrivskyddad förrän anslutningen har återställts.

  1. I Azure-portalen bläddrar du till den primära databasen i geo-replikeringskopplingen.
  2. Välj Repliker.
  3. I listan Geo-repliker väljer du den databas som du vill ta bort från geo-replikeringskopplingen, väljer ellipsen och väljer sedan Stoppa replikering.
  4. Ett bekräftelsefönster öppnas. Klicka på Ja för att ta bort databasen från geo-replikeringskopplingen. (Ställ in den på en skrivskyddad databas som inte ingår i någon replikering.)

Geo-replikering mellan prenumerationer

Använd Transact-SQL (T-SQL) skapa en geo-sekundär i en prenumeration som skiljer sig från prenumerationen för den primära (oavsett om det är under samma klientorganisation för Microsoft Entra ID (tidigare Azure Active Directory) eller inte), följ stegen i det här avsnittet.

  1. Lägg till IP-adressen för klientdatorn som kör T-SQL-kommandona i det här exemplet i serverbrandväggarna för både de primära och sekundära servrarna. Du kan bekräfta ip-adressen genom att köra följande fråga när du är ansluten till den primära servern från samma klientdator.

    select client_net_address from sys.dm_exec_connections where session_id = @@SPID;
    

    Mer information finns i Konfigurera brandvägg.

  2. I databasen master på den primära servern skapar du en SQL-autentiseringsinloggning som är dedikerad till aktiv geo-replikeringskonfiguration. Justera inloggningsnamn och lösenord efter behov.

    create login geodrsetup with password = 'ComplexPassword01';
    
  3. I samma databas skapar du en användare för inloggningen och lägger till den i dbmanager rollen:

    create user geodrsetup for login geodrsetup;
    alter role dbmanager add member geodrsetup;
    
  4. Anteckna SID-värdet för den nya inloggningen. Hämta SID-värdet med hjälp av följande fråga.

    select sid from sys.sql_logins where name = 'geodrsetup';
    
  5. Anslut till den primära databasen (inte master databasen) och skapa en användare för samma inloggning.

    create user geodrsetup for login geodrsetup;
    
  6. Lägg till användaren db_owner i rollen i samma databas.

    alter role db_owner add member geodrsetup;
    
  7. I databasen master på den sekundära servern skapar du samma inloggning som på den primära servern med samma namn, lösenord och SID. Ersätt hexadecimal SID-värdet i exempelkommandot nedan med det som hämtades i steg 4.

    create login geodrsetup with password = 'ComplexPassword01', sid=0x010600000000006400000000000000001C98F52B95D9C84BBBA8578FACE37C3E;
    
  8. I samma databas skapar du en användare för inloggningen och lägger till den i dbmanager rollen.

    create user geodrsetup for login geodrsetup;
    alter role dbmanager add member geodrsetup;
    
  9. Anslut till master databasen på den primära servern med den nya geodrsetup inloggningen och initiera geo-sekundär skapande på den sekundära servern. Justera databasnamn och sekundärt servernamn efter behov. När kommandot har körts kan du övervaka geo-sekundär skapande genom att fråga sys.dm_geo_replication_link_status-vyn i den primära databasen och den sys.dm_operation_status vyn i master databasen på den primära servern. Den tid som krävs för att skapa en geo-sekundär beror på den primära databasstorleken.

    alter database [dbrep] add secondary on server [servername];
    
  10. När den geo-sekundära har skapats kan användare, inloggningar och brandväggsregler som skapats med den här proceduren tas bort.

Kommentar

Geo-replikeringsåtgärder mellan prenumerationer, inklusive installation och geo-redundans stöds endast med hjälp av REST API- och T-SQL-kommandon.

Det går inte att lägga till en geo-sekundär med T-SQL när du ansluter till den primära servern via en privat slutpunkt. Om en privat slutpunkt är konfigurerad men åtkomst till offentligt nätverk tillåts, stöds tillägg av en geo-sekundär när den är ansluten till den primära servern från en offentlig IP-adress. När en geo-sekundär har lagts till kan åtkomst till det offentliga nätverket nekas.

Det går inte att skapa en geo-sekundär på en logisk server i en annan Microsoft Entra-klientorganisation när Endast Microsoft Entra-autentisering är aktiverat på den primära eller sekundära logiska servern.

Nästa steg