Lezione 3: Completamento degli oggetti di conversazione di destinazione
Data creazione: 15 settembre 2007
In questa lezione verranno illustrate le procedure per creare le route e il server collegato dall'istanza di destinazione di Motore di database all'istanza initiator. Eseguire questi passaggi da una copia di Management Studio in esecuzione nello stesso computer dell'istanza di destinazione.
Procedure
Creare riferimenti ad oggetti initiator
Copiare e incollare il codice seguente in una finestra dell'editor di query. Modificare la clausola FROM FILE per fare riferimento alla cartella in cui è stato copiato il file InstInitiatorCertficate.cer nel passaggio 4 della lezione 2. Quindi eseguire il codice per creare un utente e inserire il certificato initiator.
USE InstTargetDB GO CREATE USER InitiatorUser WITHOUT LOGIN; CREATE CERTIFICATE InstInitiatorCertificate AUTHORIZATION InitiatorUser FROM FILE = N'C:\storedcerts\$ampleSSBCerts\InstInitiatorCertificate.cer'; GO
Creare route
Copiare e incollare il codice seguente in una finestra dell'editor di query. Impostare la stringa MyInitiatorComputer sul nome del computer su cui è in esecuzione l'istanza initiator. Quindi eseguire il codice per creare route al servizio di destinazione e al servizio initiator, nonché un'associazione al servizio remoto che associa InitiatorUser con la route del servizio initiator.
Le istruzioni CREATE ROUTE riportate di seguito presuppongono l'assenza di nomi di servizio duplicati nell'istanza di destinazione. In presenza di più database nell'istanza di destinazione contenenti servizi con lo stesso nome, utilizzare la clausola BROKER_INSTANCE per specificare il database nel quale si desidera aprire una conversazione.
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
Passaggi successivi
È stata completata la configurazione del database di destinazione per supportare una conversazione Service Broker al database initiator. Nel passaggio successivo verrà avviata una conversazione nel database initiator e inviato un messaggio di richiesta al servizio di destinazione. Vedere Lezione 4: Avvio della conversazione.
Vedere anche
Altre risorse
CREATE REMOTE SERVICE BINDING (Transact-SQL)
CREATE ROUTE (Transact-SQL)
CREATE USER (Transact-SQL)
EXECUTE (Transact-SQL)
sp_addlinkedserver (Transact-SQL)
Routing e funzionalità di rete di Service Broker
Funzionalità di rete e protezione remota