最近碰到了一个众所周知的32bit的 SSIS 包在64bit的SQL Server环境的执行问题. 我看了一些解决方案,比如修改在SSDT里面修改 debug 选项(Run64BitRuntime = false) 或者建立一个job执行的时候强制以32bit方式运行. 不过我发现这些方式并不合适大型的自动化环境. 你可能在测试SSIS包的候会用这些方法 ,但是你部署到SSIS服务器的时候不一定想要这么做. 我想还有一个方法就是建立一个job, 强制包为32bit执行模式.然后建立一个脚本更改job step 来执行特定的SSIS包. 不过在我看来太麻烦,而且不够完美.

我最近还见到一个解决方案,有个客户的数据仓库管理员被要求修改一个环境变量来强制所有的SSIS包执行在32bit模式下 (官方的管理指导手册有说明)

我试过这个方法,根本没用(相信我..我已经尝试所有办法啦,没搞定) .另外你只有一个或者小部分 32bit的包,为什么要把所有的64bit包强制运行在32bit模式下. 这会影响性能.

好了,接下来说说我的处理方法.不过,对我的方法可不要深信不疑了. 看到我这篇文章的朋友们,如果有更好的更方便的方法请告诉我.

如果你用我的方案的过程中碰到任何问题请告诉我. 我们一起处理.

问题: 在64Bit的SQL server使用32Bit的包.

解决方案: 用存储过程执行SSIS包 (32 & 64 bit).

看起来还不错吧?

快速说明:

在更进一步之前,我们先来看下 syssubsystems 里面有什么.

select agent_exe, * from msdb.dbo.syssubsystems where subsystem = 'ssis'

Step 1: 这个存储的参数是@PackageName  , 可以传入服务器里面一个SSIS包名  – line 2

Step 2: 获得 DTExec.exe 的位置 (select * from msdb.dbo.syssubsystems where subsystem = ‘ssis’) – line 16

Step 3: 设置 SSIS 包位置 – line 24

Step 4: 检查SSIS是否是64bit – line 25.

Step 5: 验证包.  – line 27

Step 6: 如果 error message = 0 那么就是 64 bit 包,@cmd 进行64bit的设置 – line 31

Step 7: 如果 error message = 1 那么就是 32 bit 包,@cmd 进行32bit的设置 – line 33

我意识到,可能有其他情况也会导致报错. 这样的话无论包是64bit还是32bit 都会按照32bit 执行 . 不过这个没关系,反正32bit也一样执行.

Step 8: 使用 xp_cmdshell 执行包.

在一些系统执行 powershell (xp_cmdshell) 可能有些问题.我不知道你能不能用. 如果不行可以把之前的存储插入到下面代码中.

下面代码作用是执行存储时候临时开启xp_cmdshell,结束后关闭 :

资源:

脚本点这里

原文: http://www.sqlservercentral.com/articles/Integration+Services+(SSIS)/102544/

[译]在 64bit 环境中执行32 bit的SSIS包的更多相关文章

  1. 如何在交互式环境中执行Python程序

    相信接触过Python的小伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Pyth ...

  2. PHP在Linux下Apache环境中执行exec,system,passthru等服务器命令函数

    更多内容推荐微信公众号,欢迎关注: 若在服务器中使用php test.php运行exec,system,passthru等命令相关的脚本能成功运行,在web页面却没反应, [可能是服务器端,PHP脚本 ...

  3. IDEA中执行MAVEN命令打jar包

    SpringBoot Jar包打包 1.工程POM配置packaging为jar. <packaging>jar</packaging> 2.增加MAVEN运行配置 添加MAV ...

  4. 在生产环境中安全执行更新删除SQL脚本的技巧

    今天在生产环境上解决问题,由于广发银行的管理制度是开发公司是不允许确生产环境的,所以我们只能把要更新的语句发给运营中心,由运营中心的投产人员执行,我们则在旁边看着:在他执行的时候发现了一个很有趣的技巧 ...

  5. Linux中执行shell脚本的4种方法总结

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  6. Linux中执行shell脚本的4种方法

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  7. 每天一个linux命令(62):sh命令 /Linux中执行shell脚本的4种方法总结

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  8. Linux中执行shell脚本命令的4种方法总结

    bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一:切换到shell脚本所在 ...

  9. 【nodejs原理&源码赏析(7)】【译】Node.js中的事件循环,定时器和process.nextTick

    [摘要] 官网博文翻译,nodejs中的定时器 示例代码托管在:http://www.github.com/dashnowords/blogs 原文地址:https://nodejs.org/en/d ...

随机推荐

  1. 【STM32学习笔记1】基于固件库的STM32_MDK工程模版

    文章包含STM32固件库介绍和工程模板搭建两方面内容. 一.STM32固件库介绍 要建立工程模板,首先要对STM32的固件库有所了解.STM32的固件可以从ST官网下载,网址为:http://www. ...

  2. 由Mifare 1卡破解带来的危险以及应对方法

    今年年初以来,一个消息的传出震惊了整个IC卡行业.最近,德国和美国的研究人员成功地破解了NXP的Mifare1芯片的安全算法.Mifare1芯片主要用于门禁系统访问控制卡,以及一些小额支付卡,应用范围 ...

  3. 编程实现Windows系统自动登录

    编程实现Windows系统自动登录 原理: 通过注册表修改实现.Windows内置了自动登录的机制,在登录系统时,winlogon会检查注册表下有没有设置自动登录,如果设置了就上就会读取用户名和密码, ...

  4. iPhone 5s网络钓鱼邮件,和苹果发布会同步亮相

    正如预期的一样,网络犯罪分子会利用Apple最新发表的iPhone 5s消息,几乎在苹果的新产品发表会同时,这个网络钓鱼(Phishing)信件开始流传.此次,趋势科技病毒防治中心 Trend Lab ...

  5. PHP下通过file_get_contents\curl的方法实现获取远程网页内容(别忘了还有PhpRPC)

    [php]PHP中file_get_contents()与file_put_contents()函数细节详解 php函数file_get_contents(一) 案例: 早在2010年时候遇到过这样的 ...

  6. 套接字socket 的地址族和类型、工作原理、创建过程

    注:本分类下文章大多整理自<深入分析linux内核源代码>一书,另有参考其他一些资料如<linux内核完全剖析>.<linux c 编程一站式学习>等,只是为了更好 ...

  7. JS提取URL中的参数

    <!DOCTYPE html><html>    <head>        <meta charset="UTF-8">      ...

  8. bmob云 实现注册和登录的功能

    向大家介绍一款我感觉非常溜的一款后端云服务bmob云 借助bmob云我们可以实现注册和登录页面的功能,下面就让我给大家演示一下借助bmob云服务实现这两个功能吧.  1. 用户是一个应用程序的核心.对 ...

  9. 将Oracle数据库导出为txt格式

    将Oracle数据库导出为txt格式: 方法1: 对于Windows系统,可以采用以下方式: 选择控制面板-->管理工具-->数据源(ODBC),添加一个新的数据源(系统或用户DSN均可) ...

  10. jbpmAPI-4

    Chapter 4. Examples 4.1.介绍基于web的工作台在默认情况下将安装两个样本库,包含各种示例项目,帮助你开始.本节显示了不同的例子可以发现在jbpm-playground库(也可用 ...