使用英语阅读

通过


数据库命令

使用 BAM 管理实用工具数据库命令,可以使用 BAM 数据库:

  • setup-databases:创建特定于 BAM 的数据库。

  • migrate-sql:从中迁移 BAM 数据库:

    • Microsoft SQL Server 2000 到 Microsoft SQL Server 2008

    • Microsoft SQL Server 2005 到 Microsoft SQL Server 2008

  • enable-reference:启用对分布式 BAM 主导入数据库的引用。

  • get-references:获取对分布式 BAM 主导入数据库的引用列表。

  • disable-reference:禁用对 BAM 主导入数据库的引用。

备注

可以通过包括 -Trace:on|off 参数开关,对任何 BM 实用工具命令启用跟踪。 使用 Trace 开关将重写配置文件中的跟踪设置。 该开关可与所有标准 BM 命令一起使用。

备注

在支持用户帐户控制 (UAC) 的系统上,可能需要具有管理权限才能运行该工具。

setup-databases 命令

使用情况

bm.exe setup-databases-ConfigFile:<配置文件>[ -NSUser:<notifications 服务用户名> ][ -NSUserPassword:<notifications service 用户密码> ]

参数

参数 说明
ConfigFile:<配置文件> 从中创建数据库的 BAM 配置文件。
NSUser:<notifications 服务用户名> 可选:通知服务具有创建数据库权限的用户的用户 ID。
NSUserPassword 可选:指定通知服务用户的密码。

创建配置文件中描述的数据库, (BAM 主导入、BAM 星型架构、BAM 存档、BAM 分析,以及) 警报(如果尚不存在)。 创建数据库后,命令将创建关联的 BAM 元数据表和存储过程。

如果要设置 BAM 警报,则需要 NSUser 和 NSUserPassword 参数。 如果未在命令行上指定 NSUserPassword,bm.exe 会提示输入密码。

备注

命令完成后,可能会注意到跟踪日志中 AlertModule 的异常:

“指定的帐户是数据库所有者。 数据库所有者始终拥有对视图的访问权限,并且不能添加到视图中或从视图中删除。”

此外,可能会在事件中看到来自 NotificationServices #19001 的警告。

如果在执行命令期间未报告任何错误,则可以安全地忽略这些通知。

重要

如果使用不包含警报部分的 BAM 配置文件执行 setup-database 命令,并且已配置 BAM 警报,bm.exe 将覆盖配置,使警报不再正常运行。

若要设置 BAM 数据库,必须在托管 BAMPrimaryImport、BAMStarSchema 和 BAMArchive 数据库的 Microsoft SQL Server 上具有管理员权限。 若要设置 SQL 通知服务数据库,必须具有管理员权限,并且是本地管理员组的成员,并且是已配置的任何其他管理组(如 BTS 管理员组)的成员。

示例

bm.exe setup-databases -ConfigFile:BamConfiguration.xml  
bm.exe setup-databases -ConfigFile:cfg.xml -NSUser:domain\user1  

migrate-sql 命令

使用情况

bm.exe migrate-sql -From:sql2000 -To:sql2008 [ -NSUser:<notifications service user name> ][ -NSUserPassword:<notifications service user password> ][ -Server:<server> ][ -Database:<database> ]

- 或 -

bm.exe migrate-sql -From:sql2005 -To:sql2008 [ -NSUser:<notifications service 用户名> ][ -NSUserPassword:<notifications service user password> ][ -Server:<server> ][ -Database:<database> ]

参数

参数 说明
发件人:sql2000 指定要从 Microsoft SQL Server 2000 数据库进行转换。
To:sql2008 指定要转换为 Microsoft SQL Server 2008 数据库。
发件人:sql2005 指定要从 Microsoft SQL Server 2005 数据库进行转换。
To:sql2008 指定要转换为 Microsoft SQL Server 2008 数据库。
NSUser:<notifications 服务用户名> 可选:有权创建数据库的 Notifications Services 用户的用户 ID。
NSUserPassword 可选:指定通知服务用户的密码。
Server:<server> 可选:转换后的数据库将驻留的服务器的名称。 服务器必须与托管 Microsoft SQL Server 2008 数据库的计算机位于同一域中。 如果未指定服务器名称,bm.exe 将使用 localhost 的默认名称。
Database:<database> 可选:然后是转换后的数据库的名称。 如果未指定该名称,则 bm.exe 将使用默认名称 BamPrimaryImport。

将 BAM 基础结构从 Microsoft SQL Server 2000 或 Microsoft SQL Server 2005 迁移到 Microsoft SQL Server 2008。 将数据库服务器和分析服务器从 Microsoft SQL Server 2000 或 Microsoft SQL Server 2005 升级到 Microsoft SQL Server 2008 后,请使用此命令。

如果配置了 BAM 警报,则需要 NSUser 和 NSUserPassword 参数。 如果未在命令行上指定 NSUserPassword,bm.exe 会提示输入密码。

若要迁移SQL Server通知服务数据库,必须具有管理员权限,并且是本地管理员组的成员,以及已配置的任何其他管理组(如 BTS 管理员组)的成员。

备注

如果收到错误消息“错误:无法在计算机”计算机名称>“<上启动服务 NS$BAMAlerts。 该服务未及时响应启动请求或控制请求。”,请手动重新启动该服务。 如果在迁移期间SQL Server非常繁忙,则服务可能不会重启。

备注

若要在安装了通知服务的计算机上运行 migrate-sql 命令,你必须属于该计算机上的“本地管理员”组。

示例

bm.exe migrate-sql -From:sql2000 -To:sql2008 -NSUser:domain\user1  
bm.exe migrate-sql -From:sql2000 -To:sql2008 -Server:MyServer -Database:db1  
bm.exe migrate-sql -From:sql2005 -To:sql2008 -NSUser:domain\user1  
bm.exe migrate-sql -From:sql2005 -To:sql2008 -Server:MyServer -Database:db1  

enable-reference 命令

使用情况

bm.exe enable-reference -TargetServer:<target server> -TargetDatabase:<target database>[ -Server:<server> ][ -Database:<database> ]

参数

参数 说明
TargetServer:<target server> 对其启用引用的服务器的名称。 服务器必须与运行 bm.exe 的计算机位于同一域中。
TargetDatabase:<target database> 启用引用的数据库的名称。
Server:<server> 可选:将启用对目标服务器和数据库的引用的服务器的名称。 如果未指定服务器名称,bm.exe 将使用 localhost 的默认名称。
Database:<database> 可选:将启用对目标服务器和数据库的引用的数据库的名称。 如果未指定该名称,则 bm.exe 将使用默认名称 BamPrimaryImport。

启用对其他分布式 BAM 主导入数据库的引用。 这样可从当前数据库订阅目标 BAM 主导入数据库上的视图和活动元数据。 此功能可用于启用对分布式活动的导航。

可以指定目标服务器为一个 SQL Server 实例,例如“mymachine2\myinstance”。

示例

bm.exe enable-reference -TargetServer:MySrv -TargetDatabase:BamPrimaryImport  
bm.exe enable-reference -TargetServer:s2 -TargetDatabase:db1 -Server:s1  

get-references 命令

使用情况

bm.exe get-references [ -Server:<server> ][ -Database:<database> ]

参数

参数 说明
Server:<server> 可选:要获取引用列表的服务器的名称。 服务器必须与运行 bm.exe 的计算机位于同一域中。 如果未指定服务器名称,bm.exe 将使用默认名称 localhost。
Database:<database> 可选:要获取引用列表的数据库的名称。 如果未指定该名称,则 bm.exe 将使用默认名称 BamPrimaryImport。

列出执行此命令的计算机上所启用的引用。

示例

bm.exe get-references  
bm.exe get-references -Server:MyServer -Database:MyPrimaryImport  

disable-reference 命令

使用情况

bm.exe disable-reference -TargetServer:<target server> -TargetDatabase:<target database>[ -Server:<server> ][ -Database:<database> ]

参数

参数 说明
TargetServer:<target server> 要禁用引用的服务器的名称。 服务器必须与运行 bm.exe 的计算机位于同一域中。
TargetDatabase:<target 数据库> 要禁用引用的数据库的名称。
Server:<server> 可选:要禁用对目标服务器和数据库的引用的服务器的名称。 服务器必须与运行 bm.exe 的计算机位于同一域中。 如果未指定服务器名称,bm.exe 将使用默认名称 localhost。
Database:<database> 可选:要禁用对目标服务器和数据库的引用的数据库的名称。 如果未指定该名称,则 bm.exe 将使用默认名称 BamPrimaryImport。

禁用对目标服务器上其他分布式 BAM 主导入数据库的引用。

可以指定目标服务器为一个 SQL Server 实例,例如“mymachine2\myinstance”。

示例

bm.exe disable-reference -TargetServer:MySrv -TargetDatabase:BamPI  
bm.exe disable-reference -TargetServer:s2 -TargetDatabase:db1 -Server:s1  

另请参阅

BAM 管理实用工具