Lektion 3: Abschließen der Zielkonversationsobjekte
Neu: 15. September 2007
In dieser Lektion lernen Sie, die Verbindungsserver und Routen aus der Zielinstanz von Datenbankmodul für die Initiatorinstanz zu erstellen. Führen Sie diese Schritte mit einer Kopie von Management Studio, die auf dem gleichen Computer wie die Zielinstanz ausgeführt wird.
Vorgehensweisen
Erstellen von Verweisen auf Initiatorobjekte
Kopieren Sie den folgenden Code, und fügen Sie ihn in ein Abfrage-Editorfenster ein. Ändern Sie die FROM FILE-Klausel so, dass der Ordner referenziert wird, in den Sie in Schritt 4 von Lektion 2 die InstInitiatorCertficate.cer-Datei kopiert haben. Führen Sie dann den Code aus, um einen Initiatorbenutzer zu erstellen und das Initiatorzertifikat aufzurufen.
USE InstTargetDB GO CREATE USER InitiatorUser WITHOUT LOGIN; CREATE CERTIFICATE InstInitiatorCertificate AUTHORIZATION InitiatorUser FROM FILE = N'C:\storedcerts\$ampleSSBCerts\InstInitiatorCertificate.cer'; GO
Erstellen von Routen
Kopieren Sie den folgenden Code, und fügen Sie ihn in ein Abfrage-Editorfenster ein. Ändern Sie die Zeichenfolge MyInitiatorComputer auf den Namen des Computers, der die Initiatorinstanz ausführt. Führen Sie dann den Code aus, um Routen zum Zieldienst und Initiatordienst und eine Remotedienstbindung zu erstellen, die den InitiatorUser mit der Route des Initiatordiensts verknüpft.
Die folgenden CREATE ROUTE-Anweisungen gehen davon aus, dass es in der Zielinstanz keine Dienstnamen doppelt gibt. Wenn mehrere Datenbanken in der Zielinstanz Dienste mit dem gleichen Namen enthalten, geben Sie mithilfe der BROKER_INSTANCE-Klausel die Datenbank an, in der Sie eine Konversation öffnen möchten.
DECLARE @Cmd NVARCHAR(4000); SET @Cmd = N'USE InstTargetDB; CREATE ROUTE InstInitiatorRoute WITH SERVICE_NAME = N''//InstDB/2InstSample/InitiatorService'', ADDRESS = N''TCP:// MyInitiatorComputer:4022'';'; EXEC (@Cmd); SET @Cmd = N'USE msdb CREATE ROUTE InstTargetRoute WITH SERVICE_NAME = N''//TgtDB/2InstSample/TargetService'', ADDRESS = N''LOCAL'''; EXEC (@Cmd); GO GRANT SEND ON SERVICE::[//TgtDB/2InstSample/TargetService] TO InitiatorUser; GO CREATE REMOTE SERVICE BINDING InitiatorBinding TO SERVICE N'//InstDB/2InstSample/InitiatorService' WITH USER = InitiatorUser; GO
Nächste Schritte
Sie haben die Konfiguration der Zieldatenbank zur Unterstützung einer Service Broker-Konversation zur Initiatordatenbank erfolgreich abgeschlossen. Danach beginnen Sie in der Initiatordatenbank eine Konversation und senden eine Anforderungsnachricht an den Zieldienst. Siehe Lektion 4: Starten der Konversation.
Siehe auch
Andere Ressourcen
CREATE REMOTE SERVICE BINDING (Transact-SQL)
CREATE ROUTE (Transact-SQL)
CREATE USER (Transact-SQL)
EXECUTE (Transact-SQL)
sp_addlinkedserver (Transact-SQL)
Service Broker-Routing und -Netzwerk
Netzwerk- und Remotesicherheit