配置 Integration Services 服务

Integration Services 服务使用某个配置文件中的设置。默认情况下,此配置文件位于文件夹 %ProgramFiles%\Microsoft SQL Server\100\DTS\Binn 中,文件名为 MsDtsSrvr.ini.xml。

通常,您不必对此配置文件进行任何更改,也不必更改文件的默认位置。但是,如果包存储在数据库引擎的某个命名实例或远程实例中,或存储在数据库引擎的多个实例中,则必须修改该配置文件。此外,如果您将配置文件移到默认位置之外的位置,则必须修改指定该文件位置的注册表项。

配置文件所包含的内容

安装 Integration Services 时,安装过程会创建并安装 Integration Services 服务的配置文件。此配置文件包含以下设置:

  • 服务停止时将向包发送停止命令。

  • 在 SQL Server Management Studio 的对象资源管理器中为 Integration Services 显示的根文件夹是 MSDB 和“文件系统”文件夹。

  • Integration Services 服务所管理的文件系统中的包位于 %ProgramFiles%\Microsoft SQL Server\100\DTS\Packages 中。

此配置文件还指定哪个 msdb 数据库包含将由 Integration Services 服务管理的包。默认情况下,Integration Services 服务配置为管理数据库引擎实例的 msdb 数据库中的包,该实例与 Integration Services 同时安装。如果未同时安装数据库引擎实例,则 Integration Services 服务可配置为管理本地默认数据库引擎实例的 msdb 数据库中的包。

默认配置文件示例

下面的示例显示了指定以下设置的默认配置文件:

  • 当 Integration Services 服务停止时包停止运行。

  • 包存储的根文件夹在 Integration Services 中为 MSDB 和“文件系统”。

  • 该服务管理存储在本地默认 SQL Server 实例的 msdb 数据库中的包。

  • 该服务管理存储在文件系统的“包”文件夹中的包。

默认配置文件示例

<?xml version="1.0" encoding="utf-8"?>
<DtsServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <StopExecutingPackagesOnShutdown>true</StopExecutingPackagesOnShutdown>
  <TopLevelFolders>
    <Folder xsi:type="SqlServerFolder">
      <Name>MSDB</Name>
      <ServerName>.</ServerName>
    </Folder>
    <Folder xsi:type="FileSystemFolder">
      <Name>File System</Name>
      <StorePath>..\Packages</StorePath>
    </Folder>
  </TopLevelFolders>  
</DtsServiceConfiguration>

修改配置文件的内容

可以通过修改配置文件来达到以下目的:允许包在服务停止时继续运行;在对象资源管理器中显示其他根文件夹;或者指定文件系统中的一个不同文件夹或其他文件夹由 Integration Services 服务进行管理。例如,可以创建 SqlServerFolder 类型的其他根文件夹来管理其他数据库引擎实例的 msdb 数据库中的包。

注意注意

某些字符在文件夹名称中无效。文件夹名称的有效字符由 .NET Framework 类 System.IO.PathGetInvalidFilenameChars 字段决定。GetInvalidFilenameChars 字段提供了不能在传递给 Path 类成员的路径字符串参数中指定的特定于平台的字符数组。无效的字符集会因文件系统的不同而不同。通常,无效字符为引号 (")、小于号 (<) 字符和竖线 (|) 字符。

但是,您必须修改配置文件,才能管理存储在数据库引擎的某个命名实例或远程实例中的包。如果不更新配置文件,则无法在 SQL Server Management Studio 中使用对象资源管理器来查看存储在该命名实例或远程实例的 msdb 数据库中的包。如果尝试使用对象资源管理器查看这些包,将收到以下错误消息:

无法为此请求检索数据。(Microsoft.SqlServer.SmoEnum)

Integration Services 服务配置中指定的 SQL Server 不存在或不可用。计算机上没有 SQL Server 的默认实例时可能发生这种情况。有关详细信息,请参阅 SQL Server 2008 联机丛书中的“配置 Integration Services 服务”主题。

登录超时时间已到

建立与服务器的连接时出错。连接到 SQL Server 2008 时,在默认的设置下 SQL Server 不允许进行远程连接,这可能会导致此失败。

命名管道提供程序: 无法打开到 SQL Server [2] 的连接。(MsDtsSvr)。

若要修改 Integration Services 服务的配置文件,可使用文本编辑器。

重要说明重要提示

修改了服务配置文件后,必须重新启动该服务才能使用更新后的服务配置。

经过修改的配置文件示例

下面的示例显示了经过修改的 Integration Services 配置文件。此文件用于 SQL Server 命名实例 InstanceName,该实例在 ServerName 服务器上。

经过修改的 SQL Server 命名实例配置文件的示例

<?xml version="1.0" encoding="utf-8"?>
<DtsServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <StopExecutingPackagesOnShutdown>true</StopExecutingPackagesOnShutdown>
  <TopLevelFolders>
    <Folder xsi:type="SqlServerFolder">
      <Name>MSDB</Name>
      <ServerName>ServerName\InstanceName</ServerName>
    </Folder>
    <Folder xsi:type="FileSystemFolder">
      <Name>File System</Name>
      <StorePath>..\Packages</StorePath>
    </Folder>
  </TopLevelFolders>  
</DtsServiceConfiguration>

修改配置文件的位置

注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile 指定了 Integration Services 服务使用的配置文件的位置和名称。该注册表项的默认值是 C:\Program Files\Microsoft SQL Server\100\DTS\Binn\ MsDtsSrvr.ini.xml。可以更新该注册表项的值,以使配置文件使用其他名称和位置。

注意事项注意

如果注册表编辑不当,可能会导致严重问题并需要重新安装操作系统。Microsoft 不能保证可以解决因注册表编辑不当而导致的问题。编辑注册表之前,请备份所有重要数据。有关如何备份、恢复和编辑注册表的信息,请参阅 Microsoft 知识库文章 Microsoft Windows 注册表说明

Integration Services 服务在启动时加载配置文件。对注册表项进行任何更改都需要重新启动服务。

Integration Services 图标(小) 使 Integration Services 保持最新

若要从 Microsoft 获得最新的下载内容、文章、示例和视频,以及从社区获得所选解决方案,请访问 MSDN 或 TechNet 上的 Integration Services 页:

若要获得有关这些更新的自动通知,请订阅该页上提供的 RSS 源。

请参阅

概念