Sql server 通过SQL Server 2016中的SSMS识别SSIS中的数据源

Sql server 通过SQL Server 2016中的SSMS识别SSIS中的数据源,sql-server,ssis,Sql Server,Ssis,作为一家公司,我们已经发展壮大,现在正在将两个SQL Server 2016数据库转移到一个新的服务器上。我们有SSIS包,这些包运行在从服务器1移动到服务器2的数据库上 是否有一种方法可以使用SSM轻松识别哪些SSI包使用我们正在移动的当前服务器和数据库?一些旧的SSIS包没有文档,因此我们试图避免实际打开所有SSIS包。我们希望确定受影响的SSIS包 谢谢大家! 这是我头脑中的解决方案。无论如何,我都不是专家,所以如果有人提出更好的建议,请不要感到惊讶 在SSMS中,您可以查看用户正在使用的

作为一家公司,我们已经发展壮大,现在正在将两个SQL Server 2016数据库转移到一个新的服务器上。我们有SSIS包,这些包运行在从服务器1移动到服务器2的数据库上

是否有一种方法可以使用SSM轻松识别哪些SSI包使用我们正在移动的当前服务器和数据库?一些旧的SSIS包没有文档,因此我们试图避免实际打开所有SSIS包。我们希望确定受影响的SSIS包


谢谢大家!

这是我头脑中的解决方案。无论如何,我都不是专家,所以如果有人提出更好的建议,请不要感到惊讶

在SSMS中,您可以查看用户正在使用的数据源 包裹由。。。对象资源管理器>SQL Server代理>作业>作业>步骤>编辑…>数据源选项卡

在这里,您可以查看包的数据源。这是 略快于打开所有SSIS包;但是,这不是一个好主意 这也是一个很好的解决方案

相反,请认识到.dtsx文件只是纯文本 文件夹。您可以使用多种方法扫描所有关键字中的关键字 不同的脚本PowerShell、Python、SSIS包和脚本 任务等

您可以使用什么取决于您的组织使用的技术堆栈 支持,但我想象谷歌搜索这样一个程序/脚本会 这并不难

如果在包中使用SQL Server配置 对于每个包,您都可以始终这样做,您可以查询 [SSIS_配置].[dbo].[SSIS配置]

注意:解决方案1和2不考虑配置


希望其中一些解决方案对您有所帮助。我希望能找到一种高效的方法来实现这一点,而不必深入研究脚本。

我不知道有什么好方法可以通过SQL Server找到答案。但是SSIS包的底层基本上是XML。因此,您可以有一个进程来扫描每个包以搜索连接字符串。这是我的建议。另外,假设您的包没有使用任何动态/变量连接字符串。此外,您的SSIS包是否使用任何类型的SSIS配置?如果没有,我建议使用它。如果所有软件包都使用它,它将有助于未来的移动。谢谢!这会让我们渡过难关的。