配置 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.Path 和 GetInvalidFilenameChars 字段决定。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 服务在启动时加载配置文件。对注册表项进行任何更改都需要重新启动服务。
|