2015-05-11 16 views
7

Wir haben eine georeplizierte Datenbank in SQL Azure (Premium) und fragen uns, ob wir auf die South Central US-Datenbank verweisen, die der Master ist. Wenn dies nicht funktioniert, müssen wir unsere Verbindungszeichenfolgen manuell ändern (C# .Net/Entity Framework 6) um auf die neue Datenbank in Nord-USA zu verweisen? Wir suchen nach einer Möglichkeit, eine einzelne Verbindungszeichenfolge zu haben, und dann führt Azure das unter den Deckeln durch, um jetzt auf die neue Datenbank zu zeigen, wenn der Master jemals untergeht. Ist das möglich?Führt SQL Azure automatisch eine automatische Geo-Replikation durch?

-Update auf angewandte Methode:
so las ich dies, dass wir von Hand in eine Datei web.config auf einem Produktionssystem gehen müssen, wenn eine Region untergeht und die Hauptdatenbank auf einen anderen replizierten Datenbank zu ändern, die funktioniert .

Ich entschied mich dafür, nur Osten, Westen und Süden Regionen in der Web-Konfiguration zu kodieren und Code zu schreiben, um zu wiederholen und zu anderen Regionen fehlzuschlagen, wenn das Haupt nicht erreicht werden konnte. Dies bedeutet, dass es nur lesen, nicht schreiben kann, bis Microsoft oder wir den Master manuell auf einen schreibgeschützten aktiven Slave umschalten. Nicht die beste Erfahrung für mich. Erfordert menschliche Intervention nach unten, es ist zu wissen, dann ist es und benutzerdefinierten Code Flipping

Antwort

2

Diesen Artikel Designing Cloud Solutions for Disaster Recovery Using Active Geo-Replication

Es gibt ein paar Möglichkeiten, wie die Einrichtung Azure für die Verfügbarkeit lesen sollte. Basierend auf Ihren Anforderungen und Ihrer Konfiguration müssen Sie die SQL Connection String ändern. Der Schlüssel in diesem Artikel ist, das "SLA" zu betrachten. Zum Beispiel in Option 2: Aktiv-Aktiv-Rechen mit entkoppelten Failover, ist die SLA:

RTO = SQL connection change + database state change + application verification test 

Hinweis des SQL connection change; Dies bedeutet eine Änderung der Verbindungszeichenfolge.

+4

Vielen Dank, so las ich dies, dass wir von Hand in eine Datei web.config auf einem Produktionssystem gehen müssen, wenn eine Region nach unten und wechseln Sie in einer anderen replizierten Datenbank, die die Hauptdatenbank geht, dass funktioniert. Ich entschied mich dafür, nur essen, Westen und Süden Regionen in der Web-Konfiguration zu programmieren und Code zu schreiben, um zu wiederholen und zu anderen Regionen fehlzuschlagen, wenn das Hauptgebiet nicht erreicht werden konnte. Dies bedeutet, dass es nur lesen, nicht schreiben kann, bis Microsoft oder wir den Master manuell auf einen schreibgeschützten aktiven Slave umschalten. Nicht die beste Erfahrung für mich. Erfordert menschliches Eingreifen, da es weiß, dass es nicht funktioniert, und dann den Code und den benutzerdefinierten Code spiegeln. –

0

Genau wie ein Update für jemand anderen, der vielleicht auf der Suche ist, ist diese Funktionalität jetzt auf SQL Azure verfügbar. Es heißt Auto-Failover-Gruppen und wurde im Mai 2017 angekündigt. Es befindet sich zum Zeitpunkt des Schreibens noch in der Vorschau - die Konfiguration wird derzeit nicht im Portal unterstützt und muss über die API erfolgen.

Weitere Informationen hier: https://azure.microsoft.com/en-us/blog/azure-sql-database-now-supports-transparent-geographic-failover-of-multiple-databases-featuring-automatic-activation/