Created package on one server, how to use it in another server ?

  • Hi all,

    Maybe this is a trivial question, but I am relatively new to SSIS.

    I created a SSIS package in BIDS, with connection manager pointing to server1. I deployed it to server2. But the connection manager still shows server1. I may not make any changes to package when it is on server2 (server1 and server2 are identical, the former is dev and the latter is QA).

    How can I make connection like "server independant" ? What I mean is whenever I deploy it to a new environment, it will connect to appropriate server. Are there any best practices for this ?

    Thanks.

  • You have numerous configuration management options in SSIS. Personally I like using XML Package Configuration files for this kind of work. When I deploy a package to 'dev' or am working locally I have the 'dev' configuration file in place containing the environment-specific configuration settings relevant to my dev environment. When I push the package to QA I also deploy the 'QA' configuration file with it which has the exact same structure as my 'dev' configuration file but with the values changed for QA. Note that while the data-values within the configuration file are different between dev and QA the XML structure is identical and the physical path to the file must be the same on all machines, e.g. if you point the SSIS package to D:\SSISConfig\MyPackageConfigurationFile.dtsConfig to get the config file in dev then the file must exist there on the QA machine as well.

    Understanding Integration Services Package Configurations

    Package Configurations

    There are no special teachers of virtue, because virtue is taught by the whole community.
    --Plato

  • Thanks, XML config file looks like good idea, I did not start reading the links provided, but first question that I have is : When a XML config file is present, SQL Server just ignores entries in Connection Manager ?

    What I mean is for example I created a package and in its Connection Manager server name is SQL_DEV. I deployed this package to another machine which is QA, and in that machine I have XML file with entry SQL_QA, but the package itself still have SQL_DEV.

    In this case SQL_DEV will just be overriden ?

    Thanks

  • The short answer is yes, the settings in the configuration file will be used instead of the info hardcoded into the Connection Manager object.

    There is an order of precedence on how configuration data is applied at runtime which you can read more about in Books Online. It gets more complicated as you start adding things like setting variables from the DTExec.exe command line and using variables.

    There are no special teachers of virtue, because virtue is taught by the whole community.
    --Plato

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply