【问题标题】:SSIS operational configuration of server instance, database, and schema?服务器实例、数据库和模式的 SSIS 操作配置?
【发布时间】:2019-05-15 20:05:34
【问题描述】:

为了能够对在 SSIS 中开发的数据集成流程进行操作管理,我希望能够进行外部配置:

  1. 服务器(数据源)
  2. 数据库(目录)
  3. 架构

据我所知,所有这些通常都通过连接管理器和 SQL 语句硬编码到 SSIS 包中。这种硬编码限制了 DBA 以不同方式分配资源的能力,并且在发生变化时,如果正在使用包部署,则需要修改每个包。

项目部署似乎会在一定程度上减少这种情况,但不会消除它。

目标环境是 SQL Server 2016 和 VS 2017。

如何将服务器、数据库和模式从包中外部化?

【问题讨论】:

    标签: sql-server ssis sql-server-2016 sql-server-data-tools ssis-2016


    【解决方案1】:

    SSIS 有一个强大的工具来配置每个环境的包。您可以在外部配置包中的任何属性。这可以在 SQL 代理中完成,甚至可以在运行时从命令行完成。配置可以存储在配置文件、系统环境变量、SQL 表等中。但是,配置包的现代方式是通过项目部署模型。

    以下是它的工作原理:

    • 在包或项目级别添加参数
    • 在配置您要设置的属性的表达式中引用该参数,即服务器名称或初始目录
    • 将项目部署到 SSIS 实例
    • 在 SSIS 中,添加环境并配置变量。这甚至可以是安全存储的密码
    • 从项目中添加对该环境的引用,最后引用您要在运行时使用的环境。

    下面的第一个链接显示了一个为使用参数配置连接管理器而创建的对话框。请注意,包将存储默认值,但是当您创建如上所述的环境时,这允许您在运行时轻松设置它。

    至于配置模式,这也是可能的,通过使用参数,但您需要为 SQL 查询使用表达式并设置目标。我会避免跨环境使模式变量。这将带来大量的努力和复杂性,但所提供的灵活性却很小。请阅读这些链接,祝你好运!

    【讨论】:

    • 非常感谢。我会仔细看看的。不幸的是,该组织目前处于包部署模式。我听说他们由于某种原因无法进行项目部署。但是,就像卡萨布兰卡的瑞克一样,原因还不是很清楚。
    • 在这种情况下,请查看这篇展示如何使用间接配置的帖子。这使用了 sql 表和环境变量的组合。我发现在表 radacad.com/sql-server-indirect-configuration-ssis 中维护配置更容易
    猜你喜欢
    • 2012-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-14
    • 1970-01-01
    • 2014-03-24
    • 2021-06-03
    相关资源
    最近更新 更多