SQL Server 2008 R2 DAC部署

日期: 2010-04-27 作者:蒋建平 来源:TechTarget中国 英文

  输入Users,点击“Add”,创建Users.Table.Sql,重复步骤1,添加Products.Table.Sql,输入创建用户表(Users)和产品表(Products)的脚本,完成后可以在Schema Objects|Schemas|tables下增加了两个文件Users.Table.Sql和Products.Table.Sql,这样我们创建表的工作已经完成了。

  我们可以直接写SQL 脚本来创建数据表,不仅如此,在DAC项目中,还可以创建的内容有:

  在项目属性里设置项目版本、默认Schema、

  数据层应用属性,如DAC的名称、版本、描述

  Schema 对象,如Assembly、Trigger、安全、服务、存储、表、视图、函数

  所有数据库引擎实例级别的对象,例如错误信息、连接的服务器

  其他辅助文档和一些脚本,如部署前准备脚本及部署后清理脚本等等

  (2)创建表完成后,需要设置项目的属性,右击解决方案“SqlDacDemo”,选择属性,弹出的属性页里选择项目设置,如图7所示:

  

  图7 项目属性设置

  如图7所示,在项目属性页里,可以项目版本、数据模型、默认的Schema,数据层应用属性,这里的重点是数据层应用属性,其可设置属性有名称、版本号、描述。

  选择Build页,设置数据集合、编译输出文件路径、编译输出文件名称,设置完成后,点击保存。

  (3)编译工程文件,选择菜单Build| Build Solution,可以看到:

  SqlDacDemo -> E:DemoSqlDacDemoSqlDacDemosqldebugSqlDacDemo.dacpac

  Build: 1 succeeded or up-to-date, 0 failed, 0 skipped

  这说明我们的编译已经成功,右击我的电脑|打开-> E:DemoSqlDacDemoSqlDacDemosqldebug,看到打好的DAC包文件SqlDacDemo.dacpac。

  3.部署DAC应用

  创建DAC包成功后,需要把DAC包部署到数据库服务器上去,如果是开发人员测试部署,可以使用VS 2010自带的部署DAC包的功能,如果是DBA部署,可以使用SSMS来部署DAC包。

  案例&应用

  在VS 2010中部署DAC包SqlDacDemo.dacpac

  在步骤2中,我们创建并打包好了DAC包文件SqlDacDemo.dacpac,接下来就要把这个包部署到数据库服务器上去,可以使用VS 2010来部署DAC包,也可以使用SSMS来部署DAC包。首先我们演示使用VS 2010来部署DAC包。

  (1) 可以选择菜单Build | Deploy SqlDacDemo部署,也可以右击解决方案名称“SqlDacDemo”,选择Deploy部署,部署结果如下:

  

  图8 部署DAC包

  (2)解决部署错误

  由图8我们可以看到失败的原因是没有连接到数据库,解决方法如下:右击解决方案SqlDacDemo,选择属性,打开项目属性设置,选择部署(Deploy)页,设置要连接的数据和数据库实例名称,本例中设置为SqlDacDemo,保存后再次部署,我们可以看到编译器输出如下代码:

  Post-Deploy: Finished script execution.

  Build: 1 succeeded or up-to-date, 0 failed, 0 skipped

  Deploy: 1 succeeded, 0 failed, 0 skipped

  VS 2010已经提示我们部署成功,使用SSMS打开数据库,我们可以清楚的看到SQL Server已经添加了数据库SqlDacDemo。

  除了使用VS 2010 来部署DAC包,我们也可以使用SQL Server 2008 R2所带的实用工具管理器来部署DAC包。实用工具管理器部署DAC包主要实现两个主要步骤:创建并连接UCP、使用部署向导部署DAC包。

  (1)打开查看|使用工具资源管理器,打开配置SQL Server实体的操作的界面如图9所示:

  

  在此界面下,创建并连接到UCP,完成后就可以部署DAC包了。

  (2)部署DAC

  在已有DAC包的情况下,可以使用SSMS来部署DAC包,使用SQL Server 自带工具部署DAC包的界面如图10所示:

  

  图10 部署DAC

  如果我们把刚才使用VS 2010编译的SqlDacDemo.dacdpc包直接拿来部署,SQL Server会提示我们已经存在同名的DAC实例,这也为我们以后更新DAC包留下了一条后路。

  点击“部署应用层程序”后,会弹出向导,根据向导选择要部署的DAC包,更新配置,部署DAC,部署DAC是最后一步,同时也是部署DAC最关键的一步,包括准备元数据、准备部署脚本、创建数据库、在MSDB中注册,都提示成功后就可以把DAC包部署到SQL Server 服务器上。刷新数据库,就可以看到已经创建了新的数据库,切换到实用工具资源管理器,可以看到如图11所示的界面:

  

  图11 已部署的数据层应用程序

  在这里我们可以看到已经部署的DAC包SqlDacDemo。

  总结语

  数据应用层程序(Data-Tier Application Component, DAC)提供了全新的方法来管理数据库,对DBA来说,可以通过SQL Server 2008 R2来创建、配置、更新、删除和管理DAC;对VS开发人员来说,可以通过Visual Studio 2010 来创建和部署DAC。有了这样简单而又强大的工具后,DBA对数据的管理会更加高效。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐

  • SQL Server 数据仓库迅速扩张市场

    微软SQL Server有健壮的产品和较低的成本,该产品已经把自己定位为中端市场数据仓库业务的重要竞争者,并日益向整个数据仓库市场扩张。

  • SQL Server主数据服务:创新还是回流?

    主数据服务(MDS)与SQL Server 2008 R2企业版同时发布,是微软主数据功能的主打产品。与其他MDM产品一样,目的MDS是确保战略级业务决策所需关键信息的准确性。

  • 微软MDS让DBA远离数据困扰

    MDS的目的是帮助维护一份单一的、经过验证的、来自各个源头的权威数据,以防止所有的困扰。你的公司将决定哪些数据由MDS管理。

  • 微软主数据服务将在BI舞台中扮演重要角色

    拿微软的话来说,MDS是涉及用来帮助企业发布并维护一个所谓的“单一版本的事实”。那么这样的特性是如何应用到商业智能场景之中的呢?