对现有 SSIS 包的更改

Posted

技术标签:

【中文标题】对现有 SSIS 包的更改【英文标题】:Changes to an existing SSIS Package 【发布时间】:2014-05-18 22:35:19 【问题描述】:

我有一个 SSIS 包,它处理每日数据库备份,如果备份超过两天,则删除扩展名为 .bak 的备份。我们有一个新的服务器,所以带来了 SSIS 包,但是我们忘记指定要删除的文件扩展名 .bak,所以备份不会被删除。

我需要更改包以指定文件扩展名,以便删除备份,但我不确定如何执行此操作。如果我打开 SSMS,集成服务目录下没有列出任何内容,但我可以看到运行包的 SQL Server 代理作业。当我登录到 SSMS 中的集成服务时,我可以在存储包 > msdb 中看到包。当连接到 SSMS 中的集成服务时,我可以右键单击存储包 > msdb 中的包,单击导出并保存 .dtsx 文件。我可以打开它并在 VS shell 2010 中进行更改。我是否重新保存具有相同名称的包,然后将其导入 SSMS 的集成服务中并让它覆盖现有的包?这里的部署还有其他问题吗?

干杯,

【问题讨论】:

【参考方案1】:

你已经掌握了基础知识,我会确保你有备份。 但是您可以使用Maintenance Plans 轻松完成您所做的事情,他们只是在幕后创建 SSIS 包,但具有用于备份、备份清理、索引重组等的任务驱动向导,并与 SQL 代理绑定以安排它们。

【讨论】:

【参考方案2】:

当您要删除 .BAK 文件时,我们可以使用“Foreach 循环任务”来扫描文件位置。

我认为您可以使用 for-each 任务中的文件系统任务来删除文件。

【讨论】:

以上是关于对现有 SSIS 包的更改的主要内容,如果未能解决你的问题,请参考以下文章

更改 SSIS 中数据类型的大小默认值

以编程方式更改 SSIS 上备份数据库任务的备份文件路径

更改 SQL 列的数据类型时更新 SSIS 包

什么是 SSIS 包部署和更改跟踪最佳实践?

包的现有状态已被丢弃

SSIS - 列名作为变量/以编程方式更改