首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在部署期间更改SSIS包版本的SSMS 2017

在部署期间更改SSIS包版本的SSMS 2017
EN

Database Administration用户
提问于 2018-04-12 15:40:22
回答 1查看 2.4K关注 0票数 3

已采取的步骤可转载如下:

  • 在SSDT 2012项目部署模型中开发SSIS软件包。
  • 将项目部署到server 2012服务器A。包版本internal.packages是6。
  • 将项目从服务器A部署到服务器B,server 2012。服务器B上的包版本internal.packages是8。

如果我从SSDT 2012直接部署到这两台服务器,那么没有问题,但从SSMS 2017部署则会影响版本号。

有没有办法阻止在2017年SSMS项目部署期间发生这种情况?还有其他人遇到过这个吗?

EN

回答 1

Database Administration用户

回答已采纳

发布于 2018-04-12 20:30:08

我并不惊讶,但还没有亲自测试过。

项目部署模型包是使用ISDeploymentWizard.exe部署的,每个版本的Server都有一个相关版本(以及位编辑)。例如,这里有一台笔记本电脑安装了VS 2013/2015,2012/2014/2016年度安装了SSDT。如果我寻找那个可执行文件,我会看到

  • C:\程序文件(x86)\Microsoft Server\130\DTS\Binn\ISDeploymentWizard.exe
  • C:\程序文件(x86)\Microsoft Server\120\DTS\Binn\ISDeploymentWizard.exe
  • C:\程序文件(x86)\Microsoft Server\140\DTS\Binn\ISDeploymentWizard.exe
  • C:\Program \Microsoft Server\120\DTS\Binn\ISDeploymentWizard.exe

我的新机器只有2017年的部分,看起来

  • C:\程序文件(x86)\Microsoft Server\140\DTS\Binn\ISDeploymentWizard.exe
  • C:\Program \Microsoft Server\140\DTS\Binn\ISDeploymentWizard.exe

考虑到这一切的另一件事是,使用SSIS工具的更新版本(ISDeploymentWizard、dtexec、dtutil)将很高兴地将您的版本前滚以与其版本相匹配。作为一名顾问,这对升级东西很有帮助,但当您想要使用新工具对抗旧代码时,这就成了麻烦。

我的猜测是,SSMS默认为不在120文件夹中的ISDeploymentWizard。不幸的是,我在部署向导中没有看到一个参数来处理版本。

代码语言:javascript
运行
复制
/Silent[+|-]                  Default value:'-' (short form /S)
/SourceType:{File|Server}     Default value:'File' (short form /ST)
/ModelType:{Project|Package}  Default value:'Project' (short form /MT)
/SourcePath:<string>          (short form /SP)
/SourceServer:<string>        (short form /SS)
/Packages:<string>            (short form /PK)
/ProjectPassword:<string>     (short form /PP)
/DestinationServer:<string>   (short form /DS)
/DestinationPath:<string>     (short form /DP)
/SkipSource[+|-]              Default value:'-'
@<file>                       Read response file for more options

你最好的,但又讨厌的,下注是

  • 为SQL server 2012保存一份SSMS副本以供部署
  • 从2012年SSDT部署
  • 从命令行显式定义源exe部署。

最后一个选择其实是那么糟糕。使用GUI单击整个部署,但在此屏幕上,停止

突出显示的框是可选择的/可复制的。那就做吧。命令行部署已经为您构建(不包括显示“命令行:”的部分)

这样你就会有这样的

代码语言:javascript
运行
复制
"C:\...\1XX\DTS\BINN\ISDeploymentWizard.exe" /SILENT /SourcePath:"C:\MyProject.ispac" /DestinationServer:"localhost" /DestinationPath:"/SSISDB/Folder/Project/MyProject"
票数 3
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/203775

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档