Condividi tramite


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

  1. 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

  1. 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

Guida in linea e informazioni

Assistenza su SQL Server 2005