共用方式為


第 3 課:完成目標交談物件

新增: 2007 年 9 月 15 日

在本課程中,您將學習建立從 Database Engine 的目標執行個體至起始端執行個體的連結伺服器及路由。您要從正在同一部電腦上當做目標執行個體執行的 Management Studio 副本中執行這些步驟。

程序

建立起始端物件的參考

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上。變更 FROM FILE 子句,改以參考您要從第 2 課步驟 4 將 InstInitiatorCertficate.cer 檔案複製到的資料夾。然後,執行此程式碼,即可在起始端憑證中建立起始端使用者和提取。

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

建立路由

  1. 複製下列程式碼並在 [查詢編輯器] 視窗中貼上。將字串 MyInitiatorComputer 變更為正在執行起始端執行個體的電腦名稱。然後,執行此程式碼,即可建立指向目標服務和起始端服務的路由,以及建立可將 InitiatorUser 與起始端服務路由產生關聯的遠端服務繫結。

    下列 CREATE ROUTE 陳述式會假設目標執行個體中沒有重複的服務名稱。如果目標執行個體上的多個資料庫中包含相同名稱的服務,請使用 BROKER_INSTANCE 子句來指定您要開啟交談所在的資料庫。

    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
    

後續的步驟

您已成功完成設定,讓目標資料庫支援 Service Broker 與起始端資料庫的交談。接下來,您將會在起始端資料庫中開始交談,並傳送要求訊息至目標服務。請參閱<第 4 課:開始交談>。

請參閱

其他資源

CREATE REMOTE SERVICE BINDING (Transact-SQL)
CREATE ROUTE (Transact-SQL)
CREATE USER (Transact-SQL)
EXECUTE (Transact-SQL)
sp_addlinkedserver (Transact-SQL)
Service Broker 路由和網路
網路和遠端安全性

說明及資訊

取得 SQL Server 2005 協助