Share via


Funkciók együttműködése az SQL Server FCI> DNN-vel

A következőre vonatkozik:SQL Server azure-beli virtuális gépen

Tipp.

Egy rendelkezésre állási csoport üzembe helyezésének számos módja van. Egyszerűsítse az üzembe helyezést, és szükségtelenné teszi az Azure Load Balancer vagy az elosztott hálózatnév (DNN) használatát az Always On rendelkezésre állási csoport számára azáltal, hogy sql serveres virtuális gépeket (VM-eket) hoz létre több alhálózatban ugyanazon az Azure-beli virtuális hálózaton belül. Ha már létrehozta a rendelkezésre állási csoportot egyetlen alhálózatban, migrálhatja azt egy több alhálózatos környezetbe.

Vannak bizonyos SQL Server-funkciók, amelyek egy rögzített virtuális hálózatnévre (VNN) támaszkodnak. Ezért ha az elosztott hálózati név (DNN) erőforrást a feladatátvevő fürtpéldányával és az Azure-beli virtuális gépeken futó SQL Serverrel használja, további szempontokat is figyelembe kell vennie.

Ebből a cikkből megtudhatja, hogyan konfigurálhatja a hálózati aliast a DNN-erőforrás használatakor, valamint azt, hogy mely SQL Server-funkciók igényelnek további szempontokat.

Hálózati alias létrehozása (FCI)

Egyes kiszolgálóoldali összetevők egy nehezen kódolt VNN-értékre támaszkodnak, és olyan hálózati aliast igényelnek, amely megfelelteti a VNN-t a DNN DNS-nevének megfelelően. A kiszolgálói alias létrehozása lépésekkel hozzon létre egy olyan aliast, amely leképozza a VNN-t a DNN DNS-ének nevére.

Egy alapértelmezett példány esetében a VNN-t közvetlenül a DNN DNS-hez rendelheti, így a VNN = DNN DNS-név. Ha például a VNN neve FCI1, akkor a MSSQLSERVERpéldány neve, és a DNN FCI1DNN (az ügyfelek korábban csatlakoztak FCIhozzá, és most csatlakoznak) FCI1DNNlesznek, majd képezze le a VNN-t FCI1 a DNN-hez FCI1DNN.

Egy elnevezett példány esetében a teljes példányhoz el kell végezni a hálózati aliasleképezést, például.VNN\Instance = DNN\Instance Ha például a VNN neve FCI1, akkor a instApéldány neve, és a DNN FCI1DNN (az ügyfelek korábban csatlakoztak FCI1\instAhozzá, és most csatlakoznak) FCI1DNN\instaAlesznek, majd képezze le a VNN-t FCI1\instaA a DNN-hez FCI1DNN\instaA.

Ügyfélillesztők

ODBC, OLEDB, ADO.NET, JDBC, PHP és Node.js illesztőprogramok esetén a felhasználóknak explicit módon meg kell adniuk a DNN DNS-nevet a kiszolgáló neveként a kapcsolati sztring. Ha a feladatátvételkor gyors kapcsolatot szeretne biztosítani, adja hozzá MultiSubnetFailover=True a kapcsolati sztring, ha az SQL-ügyfél támogatja.

Tools

Az SQL Server Management Studio, az sqlcmd, az Azure Data Studio és az SQL Server Data Tools felhasználóinak explicit módon meg kell adniuk a DNN DNS-nevet a kiszolgáló neveként a kapcsolati sztring.

Rendelkezésre állási csoportok és FCI

Az Always On rendelkezésre állási csoportot úgy konfigurálhatja, hogy egy feladatátvevő fürtpéldányt használ a replikák egyikeként. Ebben a konfigurációban az FCI-replikához tartozó tükrözési végpont URL-címének az FCI DNN-t kell használnia. Hasonlóképpen, ha az FCI-t írásvédett replikaként használják, az FCI-replikához való írásvédett útválasztásnak az FCI DNN-t kell használnia.

A tükrözési végpont formátuma: ENDPOINT_URL = 'TCP://<DNN DNS name>:<mirroring endpoint port>'.

Ha például a DNN DNS-neve dnnlsnr, és 5022 az FCI tükrözési végpontjának portja, a Végpont URL-címének létrehozásához a Transact-SQL (T-SQL) kódrészlet a következőképpen néz ki:

ENDPOINT_URL = 'TCP://dnnlsnr:5022'

Hasonlóképpen az írásvédett útválasztási URL formátuma a következő: TCP://<DNN DNS name>:<SQL Server instance port>.

Ha például a DNN DNS-neve dnnlsnr, és 1444 az írásvédett cél SQL Server FCI által használt port, a csak olvasható útválasztási URL-cím létrehozásához használt T-SQL-kódrészlet a következőképpen néz ki:

READ_ONLY_ROUTING_URL = 'TCP://dnnlsnr:1444'

Ha ez az alapértelmezett 1433-at adja meg, kihagyhatja a portot az URL-címből. Névvel ellátott példány esetén konfiguráljon egy statikus portot az elnevezett példányhoz, és adja meg az írásvédett útválasztási URL-címben.

Replikáció

A replikáció három összetevőből áll: Publisher, Distributor, Subscriber. Ezen összetevők bármelyike lehet feladatátvevő fürtpéldány. Mivel az FCI VNN-t nagy mértékben használják a replikációs konfigurációban, explicit módon és implicit módon is, a replikáció működéséhez szükség lehet egy hálózati aliasra, amely leképezi a VNN-t a DNN-hez.

A replikáció konfigurálása előtt használja a VNN-nevet FCI-névként, de a replikáció konfigurálása előtt hozzon létre egy hálózati aliast a következő távoli helyzetekben:

Replikációs összetevő (FCI DNN-vel) Távoli összetevő Hálózati aliastérkép Kiszolgáló hálózati térképpel
Publisher Terjesztő Publisher VNN–Publisher DNN Terjesztő
Terjesztő Előfizető TerjesztőI VNN–forgalmazóI DNN Előfizető
Terjesztő Publisher TerjesztőI VNN–forgalmazóI DNN Publisher
Előfizető Terjesztő Előfizetői VNN az előfizetőI DNN-nek Terjesztő

Tegyük fel például, hogy van egy olyan Közzétevője, amely FCI-ként van konfigurálva egy replikációs topológiában DNN használatával, és a terjesztő távoli. Ebben az esetben hozzon létre egy hálózati aliast a Forgalmazó kiszolgálón a Publisher VNN-nek a Publisher DNN-hez való leképezéséhez:

Configure the DNN DNS name as the network alias using SQL Server Configuration Manager.

Használja a teljes példánynevet egy elnevezett példányhoz, például az alábbi példaképhez:

Use the full instance name when configuring a network alias for a named instance.

Database mirroring

Az adatbázis-tükrözést az FCI-vel is konfigurálhatja adatbázistükrözési partnerként. Konfigurálja a Transact-SQL (T-SQL) használatával az SQL Server Management Studio grafikus felhasználói felülete helyett. A T-SQL használatával biztosítható, hogy az adatbázis-tükrözési végpont a VNN helyett a DNN használatával legyen létrehozva.

Ha például a DNN DNS-neve dnnlsnr, és az adatbázis tükrözési végpontja 7022, az alábbi T-SQL-kódrészlet konfigurálja az adatbázis-tükrözési partnert:

ALTER DATABASE AdventureWorks
    SET PARTNER =
    'TCP://dnnlsnr:7022'
GO 

Ügyfélhozzáférés esetén a Feladatátvevő partner tulajdonság képes kezelni az adatbázis-tükrözés feladatátvételét, az FCI-feladatátvételt azonban nem.

MSDTC

Az FCI részt vehet a Microsoft Distributed Transaction Coordinator (MSDTC) által koordinált elosztott tranzakciókban. A fürtözött MSDTC és a helyi MSDTC az FCI DNN-vel támogatott. Az Azure-ban egy Azure Load Balancer szükséges egy fürtözött MSDTC-üzembe helyezéshez.

Tipp.

Az FCI-ben definiált DNN nem helyettesíti a fürtözött MSDTC Azure Load Balancer-követelményét.

FileStream

Bár a FileStream egy FCI-ben lévő adatbázis esetében támogatott, a FileStream vagy a FileTable elérése fájlrendszer API-k és DNN használatával nem támogatott.

Társított kiszolgálók

A csatolt kiszolgáló használata FCI DNN-vel támogatott. Használja közvetlenül a DNN-t egy csatolt kiszolgáló konfigurálásához, vagy használjon hálózati aliast a VNN-nek a DNN-hez való leképezéséhez.

Ha például egy névvel ellátott példányhoz insta1DNN DNS-névvel dnnlsnr rendelkező csatolt kiszolgálót szeretne létrehozni, használja a következő Transact-SQL (T-SQL) parancsot:

USE [master]   
GO   

EXEC master.dbo.sp_addlinkedserver    
    @server = N'dnnlsnr\inst1',    
    @srvproduct=N'SQL Server' ;   
GO 

Alternatív megoldásként létrehozhatja a csatolt kiszolgálót a virtuális hálózat neve (VNN) használatával, de ezután meg kell határoznia egy hálózati aliast a VNN-nek a DNN-hez való leképezéséhez.

Például a példány neve insta1, a VNN neve vnnnameés a DNN neve dnnlsnra következő Transact-SQL (T-SQL) paranccsal hozhat létre csatolt kiszolgálót a VNN használatával:

USE [master]
GO   

EXEC master.dbo.sp_addlinkedserver   
    @server = N'vnnname\inst1',    
    @srvproduct=N'SQL Server' ;   
GO 

Ezután hozzon létre egy hálózati aliast a leképezéshez vnnname\insta1dnnlsnr\insta1.

Gyakori kérdések

  • Melyik SQL Server-verzió támogatja a DNN-t?

    SQL Server 2019 CU2 és újabb.

  • Mi a DNN használata esetén várható feladatátvételi idő?

    A DNN esetében a feladatátvételi idő csak az FCI feladatátvételi ideje lesz, idő hozzáadása nélkül (például mintavételi idő az Azure Load Balancer használatakor).

  • Van verziókövetelmény az SQL-ügyfelek számára a DNN OLEDB-vel és ODBC-vel való támogatásához?

    Javasoljuk MultiSubnetFailover=True kapcsolati sztring DNN támogatását. Az SQL Server 2012 -től (11.x) érhető el.

  • Szükség van az SQL Server konfigurációs módosításaira a DNN használatához?

    Az SQL Server nem igényel konfigurációmódosítást a DNN használatához, de egyes SQL Server-funkciók további megfontolást igényelhetnek.

  • Támogatja a DNN a több alhálózati fürtöket?

    Igen. A fürt a DNS-ben lévő DNN-t az alhálózattól függetlenül a fürt összes csomópontjának fizikai IP-címével köti össze. Az SQL-ügyfél az alhálózattól függetlenül megpróbálja a DNS-név összes IP-címét.

További lépések

To learn more, see: