Teil IV – Bereitstellung von Project Server Datenbanken in einer SQL Server 2012 Availibility Group (Read Only Routing)

Ein neues Feature innerhalb des SQL Server 2012 ist die Option “Read Only Routing”. Dadurch können Abfragen eines Clients durch einen speziellen Connection String, direkt an einen Secondary-Server weitergeleitet werden.  Das hier gezeigte Bespiel baut auf den Artikel I – III auf.

Wie funktioniert nun das Ganze? Als Erstes stellt der Client durch einen bestimmten Connectionstring (ApplicationIntent=ReadOnly) Option eine Anfrage auf den Primary-Server.

image

Dieser kann dann zur Entlastung die Abfrage an den gewünschten Active Primary-Server weiterleiten.

image

Zum konfigurieren gehen Sie wie folgt vor. Öffnen Sie als erstes das SQL Server Management Studio 2012 auf Ihrem Primary Server. Als erstes müssen wir den READ_ONLY_ROUTING_URL-Wert konfigurieren. Öffnen Sie eine neue Abfrage innerhalb des SSMS. Geben Sie nun den folgenden TSQL-Befehl ein:

ALTER AVAILABILITY GROUP pwa MODIFY REPLICA ON N'BL-SQL2012-01'

WITH (SECONDARY_ROLE(READ_ONLY_ROUTING_URL=N'tcp://BL-SQL2012-01:1433'))

Führen Sie diesen Befehl für jeden Knoten in Ihrer Umgebung durch. Als nächstes können wir das Routing einrichten. Hierzu gehen Sie wie folgt vor. Geben Sie nun für jeden Knoten Ihre Konfiguration ein.

ALTER Availability GROUP pwa

MODIFY REPLICA ON 'BL-SQL2012-01' WITH(

    PRIMARY_ROLE
    (
    --Erlaube Verbindungen = READ_WRITE
    READ_ONLY_ROUTING_LIST=('BL-SQL2012-04', 'BL-SQL2012-03', 'BL-SQL2012-01')
    )
)

Mit dieser Konfiguration lege ich fest, dass wenn der Knoten BL-SQL2012-01 aktiv ist, sollen die Abfragen zuerst an BL-SQL2012-04, dann an BL-SQL2012-03 und zum Schluss an BL-SQL2012-04 weitergeleitet werden.

Nun möchte ich weiterhin konfigurieren, dass – wenn Knoten BL-SQL2012-02 aktiv ist, die Read Only Abfragen  zuerst an den BL-SQL2012-03, dann an BL-SQL2012-04 und zum Schluss an BL-SQL2012-01 gesendet werden.

ALTER Availability GROUP pwa MODIFY REPLICA ON 'BL-SQL2012-02' WITH    (
        
        PRIMARY_ROLE
        (
        --Erlaube Verbindungen = READ_WRITE
        READ_ONLY_ROUTING_LIST=('BL-SQL2012-03', 'BL-SQL2012-04', 'BL-SQL2012-01')
        )
)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.