2012-03-27 14 views
0

ich eine SQL umzusetzen versuchen Mirroring eine ASP.NET-Site zu helfen, geschieht zum Server auf Backup-Server, falls etwas zu verlassen, ich habe bereits damit verbundenen durch einige der Fragen gegangen zu diesem Thema und die meisten waren Antworten auf spezifische Fragen oder Probleme, die sie haben.Wie ASP.NET-Site und SQL Mirroring

Folge zusammenfassen, was ich versuche, mich zu tun und bitte helfen Sie mir/Führer, wenn ich in richtigen Weg bin.

  1. Wir haben ein Besetzt Server eine ASP.NET WebApplication
  2. Web Application verwendet zwei Datenbank ASP.NET FORMS DB und benutzerdefinierte Datenbank zum Speichern von benutzerdefinierten Daten ausgeführt wird.
  3. Jetzt planen wir, einen neuen Server einzurichten, der als Backup dient, falls der Hauptfehler auftritt
  4. Vorgeschlagene Lösung, über die ich nachdenke, ist wie folgt.
  5. Zwei beiden Server werden ASP.NET WebApplication Host, hat Sowohl SQL Server, die die Datenbank bereitgestellt hat (mit dem neuesten
  6. nun einem Server als primärer handeln und Änderungen Drücken auf anderen SQL-Server.

nun sind die Fragen:

  1. ist mein Ansatz richtig
  2. Im Fall, wenn Hauptserver ausfällt und andere Datenbank antritt, später einmal die wichtigsten Server kommt nicht auf die Änderungen von Secondary Server Haupt synchronisiert dienen? r?
  3. Kann ich einen Load Balancer konfigurieren, so dass bei hoher Auslastung die Lasten zwischen diesen beiden Servern ausgeglichen sind? wird die Datenbank synchronisiert?

Alle Zeiger? Danke im Voraus.

Antwort

0

Ich denke, die Antwort für Ihre erste Frage: Nein, Sie benötigen einen ASP.Net Web-Server mit appropriate connections string to principal and mirror database, aber Ihre Spiegelung muss im automatischen Failover-Modus sein.

Wenn Sie die mirroring verwenden, haben Sie zwei Server (wir werden nicht über Zeugenserver der Einfachheit halber sprechen). Die erste hat die Datenbank, die funktioniert und für die Benutzer zugänglich ist (Principal), die zweite hat die Mirror-Datenbank. Auf diese Datenbank kann nicht gelesen oder geschrieben werden (eine Ausnahme: Sie können den SNAPSHOT aus dieser Datenbank erstellen, dies ist jedoch nicht der Fall). Diese Datenbank befindet sich im Wiederherstellungsstatus, da dieser Server die Transaktionen vom Principal anwendet.

so, Antwort für Ihre dritte Frage ist - nein, Sie nicht den zweiten Server für Load-Balancing verwenden können.

Wenn die Zeuge-Server (wenn Sie die automatischen Failover verwenden) überprüft, ob Haupt Datenbank nicht erreichbar ist, gibt er den Befehl, die Spiegeldatenbank zur Genesung. Auf diese Datenbank kann jetzt zugegriffen werden, und wenn Sie die Verbindungszeichenfolge verwenden, um die Spiegelung zu verwenden (siehe die Beispiele here), verbinden sich die Clients mit diesem Server und nicht mit dem fehlgeschlagenen Prinzipalserver. Wenn Sie die Spiegelung ohne automatisches Failover verwenden, müssen Sie die gespiegelte Datenbank wiederherstellen und die Verbindungen von Ihren Händen umleiten. Danach wird die Synchronisation verloren gehen. In diesem Fall müssen Sie die Spiegelung bei Bedarf erneut einrichten.

Verwandte Themen