Verschieben von Service Broker-Anwendungen

Die übliche Methode zum Verschieben einer Service Broker-Anwendung besteht im Verschieben der Datenbank, die die Anwendung enthält, zu einer anderen Instanz. Viele Aspekte der Service Broker-Anwendung werden zusammen mit der Datenbank verschoben. Einige Aspekte der Anwendung müssen erneut erstellt oder am neuen Speicherort neu konfiguriert werden.

Die Datenbank enthält die Service Broker-Objekte, gespeicherte Prozeduren, Zertifikate, Benutzer und ausgehende Routen für die Anwendung. Diese werden zusammen mit der Datenbank verschoben:

  • Sie müssen Anmeldungen für beliebige Benutzer mit Anmeldungen konfigurieren, die von der Anwendung verwendet werden.
  • Da Zertifikate in der Datenbank enthalten sind, in der sie erstellt wurden, werden sie beibehalten, wenn Sie eine Datenbank verschieben.
  • Die meisten Service Broker-Datenbanken weisen Datenbank-Hauptschlüssel auf. Sie müssen das Kennwort für den Hauptschlüssel beim Anfügen der Datenbank am neuen Speicherort verwenden.

Sie müssen auch die Dienste aktualisieren, die Konversationen mit dem Dienst initiieren, den Sie verschieben. Ändern Sie in jeder Datenbank, die eine Route für den verschobenen Dienst enthält, die Route, damit die neue Netzwerkadresse verwendet wird.

Der CREATE DATABASE-Befehl und der ALTER DATABASE-Befehl enthalten Optionen, um die Service Broker-Nachrichtenübermittlung in der wiederhergestellten Datenbank zu aktivieren und einen anderen Brokerinstanzbezeichner festzulegen. Ein Brokerinstanzbezeichner darf jeweils nur von einer Datenbank im Netzwerk verwendet werden. Im Allgemeinen ändern Sie den Instanzbezeichner nicht, wenn Sie eine Sicherung wiederherstellen, die mit der ursprünglichen Datenbank identisch sein soll. Beispielsweise ändern Sie den Brokerinstanzbezeichner nicht, wenn Sie eine Datenbank für folgende Zwecke anfügen:

  • Zur Wiederherstellung.
  • Zum Erstellen eines gespiegelten Paares.
  • Zum Konfigurieren des Protokollversands für einen Standbyserver.

Wenn Sie eine Kopie der Datenbank erstellen, ändern Sie den Brokerinstanzbezeichner oder stellen sicher, dass die Service Broker-Nachrichtenübermittlung inaktiv ist. Weitere Informationen zu den Optionen für das Anfügen von Datenbanken finden Sie unter CREATE DATABASE (Transact-SQL) und ALTER DATABASE (Transact-SQL). Anweisungen zum Aktivieren der Service Broker-Nachrichtenübermittlung in einer Datenbank finden Sie unter Vorgehensweise: Aktivieren von Service Broker-Nachrichtenübermittlung in Datenbanken (Transact-SQL).

Routen für eingehende Nachrichten sind in der Datenbank, die den Dienst enthält, nicht eingeschlossen. Wenn Ihr Dienst eine expliziten Route in der Datenbank msdb verwendet, um eingehende Nachrichten an den Dienst weiterzuleiten, müssen Sie diese Route erneut erstellen, wenn Sie eine Datenbank in einer anderen Instanz anfügen.

Service Broker-Endpunkte und -Transportsicherheit gelten für die gesamte Instanz und nicht nur für eine bestimmte Datenbank. Das Anfügen einer Datenbank an eine neue Instanz hat keine Auswirkungen auf die Endpunkte oder die Transportsicherheit für die betreffende Instanz. Wenn Ihr Dienst Nachrichten im Netzwerk sendet oder empfängt, müssen Sie sicherstellen, dass die neue Instanz einen Service Broker-Endpunkt aufweist und dass die Transportsicherheit für die Instanz den Anforderungen Ihrer Anwendung entsprechend konfiguriert ist.

Siehe auch

Aufgaben

Vorgehensweise: Aktivieren von Service Broker-Nachrichtenübermittlung in Datenbanken (Transact-SQL)

Konzepte

Routen
Service Broker-Routing

Andere Ressourcen

ALTER DATABASE (Transact-SQL)
ALTER ROUTE (Transact-SQL)
CREATE DATABASE (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
Kopieren von Datenbanken auf andere Server

Hilfe und Informationen

Informationsquellen für SQL Server 2005