如何创建目标数据库

2011-06-16 19:31:25来源: 互联网

在文您将学习创建目标数据库和所有与发起方数据库不存在依赖关系的 Service Broker 目标对象。从与数据库引擎目标实例运行在同一台计算机上的 Management Studio 副本中执行这些步骤。

过程
创建 Service Broker 端点
  1. 复制以下代码并将其粘贴到查询编辑器窗口中。然后,运行代码为此数据库引擎实例创建 Service Broker 端点。Service Broker 端点建立了 Service Broker 消息发送到的网络地址。该端点使用 Service Broker 默认 TCP 端口 4022,建立将使用 Windows 身份验证连接来发送消息的数据库引擎远程实例。

    Windows 身份验证在两台计算机处于相同的域或可信任域中时有效。如果计算机不在可信任的域中,请将证书安全设置用于端点。

    复制代码
    USE master; GO IF EXISTS (SELECT * FROM master.sys.endpoints WHERE name = N'InstTargetEndpoint') DROP ENDPOINT InstTargetEndpoint; GO CREATE ENDPOINT InstTargetEndpoint STATE = STARTED AS TCP ( LISTENER_PORT = 4022 ) FOR SERVICE_BROKER (AUTHENTICATION = WINDOWS ); GO
创建目标数据库、主密钥和用户
  1. 复制以下代码并将其粘贴到查询编辑器窗口中。在 CREATE MASTER KEY 语句中更改密码。然后,运行代码以创建用于本教程的目标数据库。默认情况下,新数据库将 ENABLE_BROKER 选项设置为 ON。该代码还会创建用于支持加密和远程连接的主密钥和用户。

    USE master; GO IF EXISTS (SELECT * FROM sys.databases WHERE name = N'InstTargetDB') DROP DATABASE InstTargetDB; GO CREATE DATABASE InstTargetDB; GO USE InstTargetDB; GO CREATE MASTER KEY ENCRYPTION BY PASSWORD = N''; GO CREATE USER TargetUser WITHOUT LOGIN; GO
创建目标证书
  1. 复制以下代码并将其粘贴到查询编辑器窗口中。更改 BACKUP CERTIFICATE 语句中指定的文件名,以引用系统中的某个文件夹。然后,运行代码来创建用于加密消息的目标证书。您指定的文件夹的权限设置应当只允许您的 Windows 帐户和用于运行数据库引擎实例的 Windows 帐户访问该文件夹,其他帐户一概不能访问。为了进行第 2 课,必须手动将 InstTargetCertificate.cer 文件复制到可从发起方实例访问的文件夹。

    CREATE CERTIFICATE InstTargetCertificate AUTHORIZATION TargetUser WITH SUBJECT = 'Target Certificate', EXPIRY_DATE = N'12/31/2010'; BACKUP CERTIFICATE InstTargetCertificate TO FILE = N'C:\storedcerts\$ampleSSBCerts\InstTargetCertificate.cer'; GO
创建消息类型
  1. 复制以下代码并将其粘贴到查询编辑器窗口,然后运行代码为会话创建消息类型。此处指定的消息类型名称和属性必须与下一课在 InstInitiatorDB 中创建的消息类型名称和属性相同。

    CREATE MESSAGE TYPE [//BothDB/2InstSample/RequestMessage] VALIDATION = WELL_FORMED_XML; CREATE MESSAGE TYPE [//BothDB/2InstSample/ReplyMessage] VALIDATION = WELL_FORMED_XML; GO
创建约定
  1. 复制以下代码并将其粘贴到查询编辑器窗口中。然后,运行代码为会话创建约定。此处指定的约定名称和属性必须与下一课在 InstInitiatorDB 中创建的约定名称和属性相同。

    CREATE CONTRACT [//BothDB/2InstSample/SimpleContract] ([//BothDB/2InstSample/RequestMessage] SENT BY INITIATOR, [//BothDB/2InstSample/ReplyMessage] SENT BY TARGET ); GO
创建目标队列和服务
  1. 复制以下代码并将其粘贴到查询编辑器窗口中。然后,运行代码以创建要用于目标的队列和服务。CREATE SERVICE 语句将该服务与 InstTargetQueue 相关联,以便将所有发送到该服务的消息接收到 InstTargetQueue 中。CREATE SERVICE 还指定只有使用先前创建的 //BothDB/ 2InstSample/SimpleContract 的会话才能将该服务用作目标服务。

    复制代码
    CREATE QUEUE InstTargetQueue; CREATE SERVICE [//TgtDB/2InstSample/TargetService] AUTHORIZATION TargetUser ON QUEUE InstTargetQueue ([//BothDB/2InstSample/SimpleContract]); GO

您已经成功创建了将要用于本教程的数据库。接下来,将创建 InstInitiatorDB 并使用支持 Service Broker 会话发起方端点所需的对象来配置它。

关键字:目标  数据库

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2011/0616/article_10089.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
目标
数据库

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved