确定在服务器上部署 SSIS 2008 包的时间

Determining when a SSIS 2008 package was deployed on a server

我想查找在 SQL 服务器实例中 MSDB 下部署 SSIS 2008 程序包的时间。在 table dbo.sysssispackages 中,我可以看到包创建日期,但我在哪里可以找到包的最后 modified/deployed 日期?

此信息未存储,无法从 SQL 服务器检索。

我发现使此信息可用的最佳方法是使用 SSIS 包中的版本相关字段(VersionMajor、VersionMinor、VersionComments)。结合使用源代码管理,您可以看到您的包当前在您的服务器上是哪个版本,并在源代码管理中找到该版本以查找它是哪个版本的代码。

未跟踪 SSIS 包部署到 MSDB 的日期,因此您无法知道包的部署时间、执行此壮举的人员等。

借助 SQL Server 2012+ 和项目部署模型,SSISDB 支持跟踪项目的部署时间和部署人员的能力。

我为您提供的最佳答案与 Tab 刚刚发布的答案大致相同,只是我将我的答案与 VerBuild 相关联,这是一个单调递增的数字,每当您保存包时,VS 都会更新该数字。

如果您拥有这些信息绝对重要,您可以考虑修改 msdb.dbo.sp_ssis_putpackage。这绝对是预订之外的,所以买家要小心,等等,但根据您的风险偏好,您可以通过在此处添加自定义列来扩展 dbo.sysssispackages 或创建一个新的 table dbo.sysssispackages_extended 并在那里记录谁在什么时候做了什么。