我想知道 SqlServer 作业正在执行的进程是什么,但我只能发现它使用加密字符串调用 DTSRun。
解码字符串后,结果只是作业的名称以及用户和密码。
我怎样才能找到这份工作的真正意义?
编辑:我找到了一个候选人,他们可能在 msdb.sysdtspackages 中,但是同样,无法读取它们,因为 SQLServer 说数据是二进制的。
我怎样才能读懂它们以确认它们是工作?
答案1
DTS 包存储在以下位置:
- SQL Server(如您所见,位于 msdb 数据库中,以二进制形式存在)
- 文件系统
- 存储库
要打开存储在本地 SQL Server 上的包来检查其功能,您可以使用以下任一方式打开它:
a) SQL 企业管理器 (SQL 2000) - 包应列在本地包下的数据转换服务节点下。
b) 在 SQL 2005/2008 中,我认为您可以使用 Management Studio 或 BI Development Studio 处理旧版 DTS 包。包应列在 Management\Legacy\Data Transformation Services 下。我曾看到有人提到它有时会在 2008 上产生错误,而 MS 提供了修复程序。
答案2
DTSRUN 用于运行 DTS 包。
听起来该作业正在调用 DTS 包来完成工作。DTSRUN 命令行中的包名称在 /~N 命令开关后给出。存储包的服务器在 /~S 命令开关后给出。
您的服务器上是否存储了 DTS 包?如果是,请查找与作业同名的包。