2009-07-15 69 views
2

我有一个需要部署到SQL Server代理的SSIS包。SSIS包的文件系统和SQL Server部署之间有什么区别?

它有2间外部的依赖关系(2个组件都安装在GAC)

现在包运行一个文件系统部署

下就好了,但是当我们部署到SQL Server代理失败与“对象引用未设置为需要外部依赖

只是1,让你知道在任务中的对象”的一个实例,这个外部的依赖是一个Interop程序集的权利传真COM API

文件系统部署和SQL Server部署之间的主要区别是什么?我想如果我能更多地理解这一点,那么我可能能够诊断出这个问题。

回答

5

文件系统SSIS部署(我唯一所做的)将SSIS包存储为OS上的文件。 SQL Server部署(如果我拥有它的话)首先加载要存储在“deploymemt-only”文件中的包,稍后用它将它们加载回SQL Server的另一个实例中。 (我不知道它们装入了什么数据库 - 在SQL 7.0和2000中,DTS包被存储在msdb中,所以我会先看看。可能是无证的表sysdtspackages?)

就个人而言,这一切看起来很混乱,很难保持一段时间,我只是坚持使用文件。更弱的安全性,我不确定我错过了什么其他的好处,但是当更新时,我只是复制新的文件,我完成了。

+0

2005和2008将其存储在MSDB中,并且文件系统将它存储在FYI的`%Program Files%\ Microsoft SQL Server \ 90 \ DTS \ Packages`中。 – Eric 2009-07-15 19:37:17

0

可以通过两种方式部署SQL Server Integration Services(SSIS):文件系统部署和SQL Server部署。这里我们将看到这两种方法的区别。

文件系统部署:

•这些包都保存在网络上的硬盘驱动器或任何共享文件夹上的物理位置。

•如果我们想对其进行任何更改,我们可以轻松管理这些软件包。

•包在文件系统上可用,因为服务器不会关闭。

•我们可以轻松地将软件包加载到设计器中。

SQL Server的部署:

•SSIS包将被存储在MSDB数据库,在sysssispackages表(我们可以在系统表发现在MSDB数据库这个表 - msdb.dbo.sysssispackages)。如果需要,我们可以将包保存在不同的文件夹中,这些文件夹是虚拟文件夹。这里SSIS包不会被存储为物理文件,而是存储在MSDB数据库中。

•保存在SQL Server上时,包可以被多个人轻松访问。

•与文件系统相比,它更安全,因为它具有与数据库安全相同的优点。

•我们可以在备份数据库的同时备份软件包。

•我们可以使用sysssispackages表使用SQL Server查询过滤包。

相关问题