Vész-helyreállítás beállítása SQL ServerhozSet up disaster recovery for SQL Server

Ez a cikk azt ismerteti, hogyan lehet védelemmel ellátni az alkalmazások SQL Server hátterét.This article describes how to help protect the SQL Server back end of an application. Ezt a SQL Server üzletmenet-folytonossági és vész-helyreállítási (BCDR) technológiák és a Azure site Recoveryegyüttes használatával teheti meg.You do so by using a combination of SQL Server business continuity and disaster recovery (BCDR) technologies and Azure Site Recovery.

Mielőtt elkezdené, győződjön meg róla, hogy megértette SQL Server vész-helyreállítási képességeit.Before you start, make sure you understand SQL Server disaster recovery capabilities. Ilyen képességek:These capabilities include:

  • Feladatátvételi fürtszolgáltatásFailover clustering
  • Always On rendelkezésre állási csoportokAlways On availability groups
  • Adatbázis-tükrözésDatabase mirroring
  • NaplóküldésLog shipping
  • Aktív georeplikációActive geo-replication
  • Automatikus feladatátvételi csoportokAuto-failover groups

BCDR-technológiák kombinálása a Site RecoveryCombining BCDR technologies with Site Recovery

A SQL Server példányok helyreállításához választott BCDR-technológiának a helyreállítási idő célkitűzésének (RTO) és a helyreállítási pont célkitűzésének (RPO) a következő táblázatban leírtaknak megfelelően kell alapulnia.Your choice of a BCDR technology to recover SQL Server instances should be based on your recovery time objective (RTO) and recovery point objective (RPO) needs as described in the following table. A Site Recovery és a választott technológia feladatátvételi műveletével egyesítheti a teljes alkalmazás helyreállítását.Combine Site Recovery with the failover operation of your chosen technology to orchestrate recovery of your entire application.

Központi telepítés típusaDeployment type BCDR technológiaBCDR technology SQL Server várt RTOExpected RTO for SQL Server SQL Server várt RPOExpected RPO for SQL Server
SQL Server egy Azure-beli infrastruktúra-(IaaS-) virtuális gépen (VM) vagy a helyszínen.SQL Server on an Azure infrastructure as a service (IaaS) virtual machine (VM) or at on-premises. Always On rendelkezésre állási csoportAlways On availability group A másodlagos replika elsődlegesként való elvégzéséhez szükséges idő.The time taken to make the secondary replica as primary. Mivel a másodlagos replikára történő replikáció aszinkron, némi adatvesztés történik.Because replication to the secondary replica is asynchronous, there's some data loss.
SQL Server egy Azure IaaS virtuális gépen vagy a helyszínen.SQL Server on an Azure IaaS VM or at on-premises. Feladatátvételi fürtszolgáltatás (always on ()Failover clustering (Always On FCI) A csomópontok közötti feladatátvételhez szükséges idő.The time taken to fail over between the nodes. Mivel a always on a megosztott tárolót használ, a tárolási példány ugyanazon nézete elérhető a feladatátvételben.Because Always On FCI uses shared storage, the same view of the storage instance is available on failover.
SQL Server egy Azure IaaS virtuális gépen vagy a helyszínen.SQL Server on an Azure IaaS VM or at on-premises. Adatbázis-tükrözés (nagy teljesítményű mód)Database mirroring (high-performance mode) A szolgáltatás kényszerítéséhez szükséges idő, amely a tükrözött kiszolgálót használja meleg készenléti kiszolgálóként.The time taken to force the service, which uses the mirror server as a warm standby server. A replikálás aszinkron módon történik.Replication is asynchronous. Előfordulhat, hogy a tükrözési adatbázis némileg elmarad az elsődleges adatbázis mögött.The mirror database might lag somewhat behind the principal database. A késés általában kicsi.The lag is typically small. Azonban akkor is nagy lehet, ha a rendszerbiztonsági tag vagy a tükrözött kiszolgáló rendszere nagy terhelés alatt áll.But it can become large if the principal or mirror server's system is under a heavy load.

A napló szállítása az adatbázis-tükrözés kiegészítéseként lehet.Log shipping can be a supplement to database mirroring. Ez az aszinkron adatbázis-tükrözés számára kedvező alternatíva.It's a favorable alternative to asynchronous database mirroring.
Az SQL as platform szolgáltatásként (Péter) az Azure-ban.SQL as platform as a service (PaaS) on Azure.

Ez a központi telepítési típus önálló adatbázisokat és rugalmas készleteket tartalmaz.This deployment type includes single databases and elastic pools.
Aktív georeplikációActive geo-replication a feladatátvétel elindítása után 30 másodperc.30 seconds after failover is triggered.

Ha a feladatátvétel aktiválva van valamelyik másodlagos adatbázis esetében, az összes többi formátumú másodlagos zónák automatikusan az új elsődlegeshez lesz kapcsolva.When failover is activated for one of the secondary databases, all other secondaries are automatically linked to the new primary.
RPO öt másodperc.RPO of five seconds.

Az aktív geo-replikáció a SQL Server mindig technológiáját használja.Active geo-replication uses the Always On technology of SQL Server. Aszinkron módon replikálja a véglegesített tranzakciókat az elsődleges adatbázison egy másodlagos adatbázisba a pillanatkép-elkülönítés használatával.It asynchronously replicates committed transactions on the primary database to a secondary database by using snapshot isolation.

A másodlagos adatmennyiség garantáltan soha nem rendelkezhet részleges tranzakciókkal.The secondary data is guaranteed to never have partial transactions.
Az SQL as Pásti aktív geo-replikációval van konfigurálva az Azure-ban.SQL as PaaS configured with active geo-replication on Azure.

Ez a központi telepítési típus felügyelt példányokat, rugalmas készleteket és önálló adatbázisokat tartalmaz.This deployment type includes a managed instances, elastic pools, and single databases.
Automatikus feladatátvételi csoportokAuto-failover groups RTO egy óra.RTO of one hour. RPO öt másodperc.RPO of five seconds.

Az automatikus feladatátvételi csoportok az aktív geo-replikáción alapuló csoportos szemantikai feladatokat biztosítják.Auto-failover groups provide the group semantics on top of active geo-replication. Azonban ugyanazt az aszinkron replikációs mechanizmust használja a rendszer.But the same asynchronous replication mechanism is used.
SQL Server egy Azure IaaS virtuális gépen vagy a helyszínen.SQL Server on an Azure IaaS VM or at on-premises. Replikálás Azure Site RecoveryReplication with Azure Site Recovery A RTO jellemzően 15 percnél rövidebb.RTO is typically less than 15 minutes. További információért olvassa el a site Recovery által biztosított RTO SLA-t.To learn more, read the RTO SLA provided by Site Recovery. Egy óra az alkalmazás konzisztenciája érdekében, és öt perc összeomlási konzisztencia esetén.One hour for application consistency and five minutes for crash consistency. Ha alacsonyabb RPO keres, használjon más BCDR-technológiákat.If you are looking for lower RPO, use other BCDR technologies.

Megjegyzés

Néhány fontos szempontot figyelembe kell venni, ha az SQL-munkaterheléseket a Site Recovery segítségével kívánja védetté tenni:A few important considerations when you're helping to protect SQL workloads with Site Recovery:

  • Site Recovery az alkalmazás agnosztikus.Site Recovery is application agnostic. A Site Recovery a támogatott operációs rendszereken telepített SQL Server bármely verziójának védelmére képes.Site Recovery can help protect any version of SQL Server that is deployed on a supported operating system. További információ: a replikált gépek helyreállításának támogatási mátrixa .To learn more, see the support matrix for recovery of replicated machines.
  • Az Azure-ban, a Hyper-V-ben, a VMware-ben vagy a fizikai infrastruktúrában üzemelő üzembe helyezéshez Site Recovery is használhat.You can choose to use Site Recovery for any deployment at Azure, Hyper-V, VMware, or physical infrastructure. A jelen cikk végén található útmutatást követve megtudhatja, hogyan biztosítható SQL Server-fürt site Recoveryokkal való védelméhez.Please follow the guidance at the end of this article on how to help protect a SQL Server cluster with Site Recovery.
  • Győződjön meg arról, hogy a gépen megfigyelt adatváltozási arány site Recovery korlátonbelül van.Ensure that the data change rate observed on the machine is within Site Recovery limits. A változási arányt írási bájt/másodpercben mérjük.The change rate is measured in write bytes per second. A Windows rendszert futtató gépek esetében a változási arányt a Feladatkezelő teljesítmény lapjára kattintva tekintheti meg.For machines running Windows, you can view this change rate by selecting the Performance tab in Task Manager. Figyelje meg az egyes lemezek írási sebességét.Observe the write speed for each disk.
  • Site Recovery támogatja a feladatátvevő fürtök példányainak replikálását Közvetlen tárolóhelyekon.Site Recovery supports replication of Failover Cluster Instances on Storage Spaces Direct. További információ: közvetlen tárolóhelyek replikáció engedélyezése.To learn more, see how to enable Storage Spaces Direct replication.

Ha az SQL-munkaterhelést az Azure-ba telepíti át, javasoljuk, hogy alkalmazza az azure Virtual Machines SQL Server teljesítményre vonatkozó irányelveit.When you migrate your SQL Workload to Azure, it is recommended to apply the Performance guidelines for SQL Server on Azure Virtual Machines.

Alkalmazás vész-helyreállításaDisaster recovery of an application

Site Recovery összehangolja a feladatátvételi tesztet és a teljes alkalmazás feladatátvételét a helyreállítási tervek segítségével.Site Recovery orchestrates the test failover and the failover of your entire application with the help of recovery plans.

Néhány előfeltétel, hogy a helyreállítási terv teljes mértékben testre szabható legyen, igény szerint.There are some prerequisites to ensure your recovery plan is fully customized according to your need. A SQL Server üzembe helyezésének általában Active Directory központi telepítésre van szüksége.Any SQL Server deployment typically needs an Active Directory deployment. Emellett kapcsolódnia kell az alkalmazási szintjéhez.It also needs connectivity for your application tier.

1. lépés: a Active Directory beállításaStep 1: Set up Active Directory

Állítsa be a Active Directory a másodlagos helyreállítási helyen, hogy a SQL Server megfelelően fusson.Set up Active Directory in the secondary recovery site for SQL Server to run properly.

  • Kisvállalat: kis mennyiségű alkalmazással és egyetlen tartományvezérlővel rendelkezik a helyszíni helyhez.Small enterprise: You have a small number of applications and a single domain controller for the on-premises site. Ha a teljes helyet szeretné felvenni, használja a Site Recovery replikálást.If you want to fail over the entire site, use Site Recovery replication. Ez a szolgáltatás replikálja a tartományvezérlőt a másodlagos adatközpontba vagy az Azure-ba.This service replicates the domain controller to the secondary datacenter or to Azure.
  • Közepes – nagy vállalat: lehetséges, hogy további tartományvezérlőket kell beállítania.Medium to large enterprise: You might need to set up additional domain controllers.
    • Ha nagy számú alkalmazással rendelkezik, Active Directory erdőben kell lennie, és az alkalmazás vagy a munkaterhelés feladatátvételt szeretne végezni, állítson be egy másik tartományvezérlőt a másodlagos adatközpontban vagy az Azure-ban.If you have a large number of applications, have an Active Directory forest, and want to fail over by application or workload, set up another domain controller in the secondary datacenter or in Azure.
    • Ha always on rendelkezésre állási csoportokat használ egy távoli helyre történő helyreállításhoz, állítson be egy másik tartományvezérlőt a másodlagos helyen vagy az Azure-ban.If you're using Always On availability groups to recover to a remote site, set up another domain controller on the secondary site or in Azure. Ez a tartományvezérlő a helyreállított SQL Server példányhoz használatos.This domain controller is used for the recovered SQL Server instance.

A cikkben szereplő utasítások feltételezik, hogy a tartományvezérlő elérhető a másodlagos helyen.The instructions in this article assume that a domain controller is available in the secondary location. További információkért tekintse meg a Active Directory és site Recovery elleni védelem segítéséreszolgáló eljárásokat.To learn more, see the procedures for helping to protect Active Directory with Site Recovery.

2. lépés: a más rétegek kapcsolatának biztosításaStep 2: Ensure connectivity with other tiers

Miután az adatbázis-szintet futtatta a cél Azure-régióban, ellenőrizze, hogy van-e kapcsolat az alkalmazással és a webes rétegekkel.After the database tier is running in the target Azure region, ensure that you have connectivity with the application and web tiers. Végezze el a szükséges lépéseket a feladatátvételi teszttel való kapcsolat ellenőrzéséhez.Take the necessary steps in advance to validate connectivity with test failover.

A következő példákban megismerheti, hogyan tervezhet meg alkalmazásokat a kapcsolódási megfontolásokhoz:To understand how you can design applications for connectivity considerations, see these examples:

3. lépés: az Always on, az aktív geo-replikáció és az automatikus feladatátvételi csoportok együttműködéseStep 3: Interoperate with Always On, active geo-replication, and auto-failover groups

A BCDR Technologies always on, Active geo-Replication és automatikus feladatátvételi csoportok másodlagos replikái SQL Server futnak a cél Azure-régióban.BCDR technologies Always On, active geo-replication, and auto-failover groups have secondary replicas of SQL Server running in the target Azure region. Az alkalmazás feladatátvételének első lépéseként meg kell adnia a replikát elsődlegesként.The first step for your application failover is to specify this replica as primary. Ez a lépés azt feltételezi, hogy már rendelkezik tartományvezérlővel a másodlagosban.This step assumes you already have a domain controller in the secondary. Előfordulhat, hogy a lépés nem szükséges, ha automatikus feladatátvételt hajt végre.The step may not be necessary if you choose to do an auto-failover. A webes és az alkalmazási rétegek feladatátvétele csak az adatbázis-feladatátvétel befejeződése után végezhető el.Fail over your web and application tiers only after the database failover is completed.

Megjegyzés

Ha az SQL-gépeket a Site Recovery segítségével kívánja védelemmel ellátni, csak létre kell hoznia egy helyreállítási csoportot a gépekről, és hozzá kell adnia a feladatátvételt a helyreállítási tervben.If you have helped to protect the SQL machines with Site Recovery, you just need to create a recovery group of these machines and add their failover in the recovery plan.

Helyreállítási terv létrehozása alkalmazás-és webes szintű virtuális gépekkel.Create a recovery plan with application and web tier virtual machines. Az alábbi lépések bemutatják, hogyan adhat hozzá feladatátvételt az adatbázis szintjéhez:The following steps show how to add failover of the database tier:

  1. Importálja a parancsfájlokat az SQL rendelkezésre állási csoport feladatátvételére egy Resource Manager-alapú virtuális gépen és egy klasszikus virtuális gépen.Import the scripts to fail over SQL Availability Group in both a Resource Manager virtual machine and a classic virtual machine. Importálja a parancsfájlokat a Azure Automation-fiókjába.Import the scripts into your Azure Automation account.

    "Üzembe helyezés az Azure-ban" embléma képeImage of a "Deploy to Azure" logo

  2. Adja hozzá az ASR-SQL-FailoverAG parancsfájlt a helyreállítási terv első csoportjának előzetes műveletéhez.Add the ASR-SQL-FailoverAG script as a pre-action of the first group of the recovery plan.

  3. Az Automation-változó létrehozásához kövesse a parancsfájlban található utasításokat.Follow the instructions available in the script to create an automation variable. Ez a változó a rendelkezésre állási csoportok nevét adja meg.This variable provides the name of the availability groups.

4. lépés: feladatátvételi teszt végrehajtásaStep 4: Conduct a test failover

Bizonyos BCDR-technológiák, például az SQL always on nem támogatják natív módon a feladatátvételi tesztet.Some BCDR technologies such as SQL Always On don’t natively support test failover. A következő módszert csak akkor javasoljuk, ha ilyen technológiákat használ.We recommend the following approach only when using such technologies.

  1. Azure Backup beállítása azon a virtuális gépen, amelyen a rendelkezésre állási csoport replikája fut az Azure-ban.Set up Azure Backup on the VM that hosts the availability group replica in Azure.

  2. Mielőtt elindítja a helyreállítási terv feladatátvételi tesztjét, állítsa helyre a virtuális gépet az előző lépésben végrehajtott biztonsági másolatból.Before triggering test failover of the recovery plan, recover the VM from the backup taken in the previous step.

    A konfiguráció visszaállítására szolgáló ablak képernyőképe Azure Backup

  3. Olyan kvórumot kell kényszeríteni a virtuális gépen, amelyet biztonsági másolatból állítottak vissza.Force a quorum in the VM that was restored from backup.

  4. Frissítse a figyelő IP-címét, hogy a teszt feladatátvételi hálózaton elérhető Cím legyen.Update the IP address of the listener to be an address available in the test failover network.

    Képernyőfelvétel a szabályok ablak és az IP-cím tulajdonságai párbeszédpanelről

  5. A figyelő online állapotba helyezése.Bring the listener online.

    A kiszolgálók neveit és állapotát megjelenítő Content_AG ablak képernyőképe

  6. Győződjön meg arról, hogy a terheléselosztó a feladatátvételi hálózaton egyetlen IP-címmel rendelkezik, az előtéri IP-címkészletet, amely az egyes rendelkezésre állási csoportok figyelője, valamint a háttérbeli készlet SQL Server VM.Ensure that the load balancer in the failover network has one IP address, from the front-end IP address pool that corresponding to each availability group listener, and with the SQL Server VM in the back-end pool.

    Az "SQL-AlwaysOn-LB-frontend IP-címkészlet" nevű ablak képernyőképe

    Az "SQL-AlwaysOn-LB-backend IP-készlet" nevű ablak képernyőképe

  7. A későbbi helyreállítási csoportokban adja hozzá az alkalmazási rétegek feladatátvételét, majd a helyreállítási tervhez tartozó webes szintet.In later recovery groups, add failover of your application tier followed by your web tier for this recovery plan.

  8. Végezzen feladatátvételi tesztet a helyreállítási tervből az alkalmazás végpontok közötti feladatátvételének teszteléséhez.Do a test failover of the recovery plan to test end-to-end failover of your application.

A feladatátvétel lépéseiSteps to do a failover

Miután hozzáadta a szkriptet a 3. lépésben, és érvényesíti azt a 4. lépésben, elvégezheti a 3. lépésben létrehozott helyreállítási terv feladatátvételét.After you add the script in Step 3 and validate it in Step 4, you can do a failover of the recovery plan created in Step 3.

Az alkalmazás és a webes rétegek feladatátvételi lépéseinek azonosnak kell lenniük a teszt feladatátvételi és feladatátvételi helyreállítási tervekben.The failover steps for application and web tiers should be the same in both test failover and failover recovery plans.

SQL Server-fürt védelmének segítéseHow to help protect a SQL Server cluster

SQL Server Standard Edition vagy SQL Server 2008 R2 rendszerű fürtök esetében javasoljuk, hogy a SQL Server védelméhez Site Recovery replikációt használjon.For a cluster running SQL Server Standard edition or SQL Server 2008 R2, we recommend you use Site Recovery replication to help protect SQL Server.

Azure-ról Azure-ra és a helyszínen az Azure-baAzure to Azure and On-premises to Azure

A Site Recovery nem biztosítja a vendég fürt támogatását az Azure-régióba való replikáláskor.Site Recovery doesn't provide guest cluster support when replicating to an Azure region. A SQL Server Standard Edition szintén nem biztosít alacsony költséghatékonyságú vész-helyreállítási megoldást.SQL Server Standard edition also doesn't provide a low-cost disaster recovery solution. Ebben az esetben javasoljuk, hogy az SQL Server-fürtöt az elsődleges helyen található önálló SQL Server példányra, majd a másodlagos helyre állítsa helyre.In this scenario, we recommend you protect the SQL Server cluster to a standalone SQL Server instance in the primary location and recover it in the secondary.

  1. Konfiguráljon egy további önálló SQL Server példányt az elsődleges Azure-régióban vagy a helyszíni helyen.Configure an additional standalone SQL Server instance on the primary Azure region or at on-premises site.

  2. Konfigurálja úgy a példányt, hogy tükrözze a védelemmel ellátni kívánt adatbázisok tükrözését.Configure the instance to serve as a mirror for the databases you want to help protect. A tükrözés konfigurálása magas biztonságú módban.Configure mirroring in high-safety mode.

  3. Site Recovery konfigurálása az elsődleges helyen Azure-, Hyper-V-vagy VMware-alapú virtuális gépekhez és fizikai kiszolgálókhoz.Configure Site Recovery on the primary site for Azure, Hyper-V, or VMware VMs and physical servers.

  4. Site Recovery replikáció használatával replikálhatja az új SQL Server példányt a másodlagos helyre.Use Site Recovery replication to replicate the new SQL Server instance to the secondary site. Mivel ez egy magas biztonsági tükrözés, a rendszer szinkronizálja az elsődleges fürttel, de replikálja Site Recovery replikáció használatával.As it's a high-safety mirror copy, it will be synchronized with the primary cluster but replicated using Site Recovery replication.

    Az elsődleges hely, a Site Recovery és az Azure közötti kapcsolatot és folyamatot ábrázoló szabványos fürt képe

Feladat-visszavétel szempontjaiFailback considerations

SQL Server Standard fürtök esetén a feladat-visszavétel nem tervezett feladatátvétel után SQL Server biztonsági mentést és visszaállítást igényel.For SQL Server Standard clusters, failback after an unplanned failover requires a SQL Server backup and restore. Ez a művelet a tükrözési példányról az eredeti fürtre történik a tükrözés újbóli létrehozásával.This operation is done from the mirror instance to the original cluster with re-establishment of the mirror.

Gyakori kérdésekFrequently asked questions

Hogyan történik a SQL Server licenc beszerzése a Site Recovery használatakor?How does SQL Server get licensed when used with Site Recovery?

SQL Server Site Recovery replikációját a frissítési garancia vész-helyreállítási juttatása szabályozza.Site Recovery replication for SQL Server is covered under the Software Assurance disaster recovery benefit. Ez a lefedettség az összes Site Recovery-forgatókönyvre vonatkozik: a helyszíni és az Azure-beli vész-helyreállításra, valamint az Azure-beli IaaS vész-helyreállításra.This coverage applies to all Site Recovery scenarios: on-premises to Azure disaster recovery and cross-region Azure IaaS disaster recovery. További információ: Azure site Recovery díjszabása .See Azure Site Recovery pricing for more.

Támogatni fogja Site Recovery a SQL Server verziót?Will Site Recovery support my SQL Server version?

Site Recovery az alkalmazás agnosztikus.Site Recovery is application agnostic. A Site Recovery a támogatott operációs rendszereken telepített SQL Server bármely verziójának védelmére képes.Site Recovery can help protect any version of SQL Server that is deployed on a supported operating system. További információ: a replikált gépek helyreállításának támogatási mátrixa .For more, see the support matrix for recovery of replicated machines.

További lépésekNext steps