尝试使用项目部署模型 运行 dtexec 时出现 sqldumper 错误

sqldumper error when trying to run dtexec with project deployment model

我有一个包含多个使用项目部署模型的包的 SSIS 项目,这意味着存在项目级参数和连接。

由于这个原因,要使用 dtexec 执行包,必须使用两个参数来指定项目、从中获取连接和参数以及包。

为此,首先您必须构建项目以获取 .ispac 文件,该文件将提供给 /project 参数。

然后您必须像这样调用 dtexec

dtexec.exe /project ".ispac file name" /package ".dtsx file name"

问题是当我这样调用 dtexec 时:

"c:\Program Files (x86)\Microsoft SQL Server0\DTS\Binn\DTExec.exe"
/Package "d:\MyProjectPath\MyPackage.dtsx"
/Project "d:\MyProject\ProjectName.ispac"

我收到一个丑陋的 sqldumper 错误,如下所示:

(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, AdjustTokenPrivileges () completed with status (00000514)
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Input parameters: 4 supplied
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,   Parameter 1: 11176
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,   Parameter 2: 0
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,   Parameter 3: 0:0
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,   Parameter 4: 002FC778
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Parsed parameters:
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     ProcessID = 11176
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     ThreadId = 0
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     Flags = 0x0
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     MiniDumpFlags = 0x0
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     SqlInfoPtr = 0x002FC778
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     DumpDir = <NULL>
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     ExceptionRecordPtr = 0x00000000
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     ContextPtr = 0x00000000
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     ExtraFile = <NULL>
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     PatternForExtraFiles = <NULL>
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     InstanceName = <NULL>
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE,     ServiceName = <NULL>
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Callback type 11 not used
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Callback type 15 not used
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Callback type 7 not used
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, MiniDump completed: C:\Program Files (x86)\Microsoft SQL Server0\Shared\ErrorDumps\SQLDmpr0035.mdmp
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Total Buffer pool data pages filtered out: 0 KB
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Location of module 'dbghelp.dll' : 'C:\Program Files (x86)\Microsoft SQL Server0\Shared\dbghelp.dll'
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, File version of module 'C:\Program Files (x86)\Microsoft SQL Server0\Shared\dbghelp.dll' : '6.12:2.633'
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Product version of module 'C:\Program Files (x86)\Microsoft SQL Server0\Shared\dbghelp.dll' : '6.12:2.633'
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Location of module 'sqldumper.exe' : 'C:\Program Files (x86)\Microsoft SQL Server0\Shared\SQLDUMPER.EXE'
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, File version of module 'C:\Program Files (x86)\Microsoft SQL Server0\Shared\SQLDUMPER.EXE' : '2014.120:2000.8'
(3240:2660) 12/15/16 16:45:09, ACTION, SQLDUMPER_UNKNOWN_APP.EXE, Product version of module 'C:\Program Files (x86)\Microsoft SQL Server0\Shared\SQLDUMPER.EXE' : '12.0:2000.8'
(3240:2660) 12/15/16 16:45:09, ACTION,                sysfer.dll, Watson Invoke: No

我怎样才能 运行 包裹而不出现那个错误?

问题很容易解决:在/package参数中,不用像d:\MyProjectPath\MyPackage.dtsx那样指定包路径,你只需要指定包名,像这样MyPackage.dtsx

我认为解释是在部署的 .ispac 文件中搜索包,因此,如果您不指定包名称,则会出现奇怪的错误。