Udostępnij za pośrednictwem


Lekcja 3: Kończenie konwersacji obiekty domiejsce doceloweowe

W tej lekcji dowiesz się podczas tworzenia serwer połączony i tras z miejsce docelowe Database Engine Wystąpienie inicjatora. Uruchom te czynności z kopii Management Studio na którym jest uruchomiony na tym samym komputerze jako miejsce docelowe wystąpienie.

Procedury

Tworzenie odwołania do obiektów inicjatora

  • Skopiuj i wklej następujący kod w oknie Edytor kwerend.Zmienianie klauzula FROM FILE, aby odwołać się w folderze, do której skopiowane InstInitiatorCertficate.cer pliku z kroku 4 Lekcja 2.Następnie należy uruchomić kod, który chcesz utworzyć użytkownikiem inicjatora i ściągać w certyfikacie inicjatora.

    USE InstTargetDB
    GO
    CREATE USER InitiatorUser WITHOUT LOGIN;
    
    CREATE CERTIFICATE InstInitiatorCertificate
       AUTHORIZATION InitiatorUser
       FROM FILE = 
    N'C:\storedcerts\$ampleSSBCerts\InstInitiatorCertificate.cer';
    GO
    

Tworzenie marszruty

  • Skopiuj i wklej następujący kod w oknie Edytor kwerend.Zmień ciąg MyInitiatorComputer na nazwę komputera, na którym jest uruchomiony na wystąpienie inicjatora.Następnie należy uruchomić kod, który chcesz utworzyć trasy do usługa miejsce docelowe usługa inicjatora i wiązanie usługi zdalnej, który kojarzy InitiatorUser trasa usługa inicjatora.

    Poniższe instrukcje CREATE trasa zakłada się, że w obiekcie docelowym są żadnych nazw zduplikowanych usługa wystąpienie.Jeśli wiele baz danych na obiekt miejsce docelowe zawiera usługi, które mają taką samą nazwę, należy użyć klauzula BROKER_INSTANCE określić bazę danych, na którym chcesz otworzyć konwersacji.

    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
    

Następne kroki

Pomyślnie zakończono konfigurowanie miejsce docelowe bazy danych do obsługi Service Broker Konwersacja w bazie danych inicjatora. Następnie można będzie rozpocząć konwersację w bazie danych inicjatora i wysłać komunikatu żądania do usługa miejsce docelowe.Zobacz Lekcja 4: Począwszy od konwersacji.