nscontrol upgrade 命令

更新日期: 2005 年 12 月 5 日

将 Microsoft SQL Server Notification Services 实例从较早或较低版本升级到当前版本。

无法将 Notification Services 实例降级到较早或较低版本。

语法

nscontrol upgrade
    [-nologo]
    [-help]
        –name instanceName
    [-server databaseServer]
    [-sqlusername sqlUserName -sqlpassword sqlPassword]
    [-timeout seconds]

参数

  • -nologo
    取消运行 nscontrol 命令时显示的产品和版本声明。
  • -help
    显示命令的语法。
  • -nameinstanceName
    要升级实例的名称。
  • -serverdatabaseServer
    指定承载实例和应用程序数据库的服务器的名称。如果使用 Microsoft SQL Server 命名实例承载数据库,则必须按如下格式指定服务器和实例的名称:<服务器名称>\<实例名称>

    在先前已使用 nscontrol register 命令注册实例的系统中运行 nscontrol upgrade 时,请使用 -name 参数,但不要使用 -server 参数。nscontrol 实用工具可以通过读取实例的注册表信息来确定 SQL Server 实例的名称。

    在没有注册实例的系统中运行 nscontrol upgrade 时,必须同时使用 -name-server 参数,这是因为 nscontrol 实用工具同时需要 Notification Services 实例名和 SQL Server 实例名才能定位实例数据库。

    指定 -server 参数时,nscontrol 实用工具会忽略实例的所有注册表值。

  • -sqlusernamesqlUserName
    nscontrol 用来连接到 SQL Server 的 SQL Server 登录名。

    ms162754.note(zh-cn,SQL.90).gif重要提示:
    Windows 身份验证比 SQL Server 身份验证更加安全。尽可能使用 Windows 身份验证。

    如果必须使用 SQL Server 身份验证连接到 SQL Server,则需要使用此参数指定登录名。也可以使用 -sqlpassword 参数指定密码。

    如果要使用 Windows 身份验证连接到 SQL Server,则不要使用 -sqlusername-sqlpassword 参数。

  • -sqlpasswordsqlPassword
    -sqlusername 登录 ID 相关联的密码。当使用 SQL Server 身份验证进行连接时,应该只使用此参数。
  • -超时 seconds
    完成每个升级操作的超时时间(秒)。默认超时时间为 30 秒。如果在试图升级 Notification Services 实例时收到超时错误,请设置更长的超时值。

备注

ms162754.note(zh-cn,SQL.90).gif重要提示:
建议您在升级之前备份实例和应用程序数据库。
ms162754.note(zh-cn,SQL.90).gif重要提示:
运行 nscontrol upgrade 之后,请运行 nscontrol register 更新该实例的注册表信息。

运行 nscontrol upgrade 时,nscontrol 的版本决定了升级的版本。例如,如果实例是使用 Notification Services 的 2.0.3008.0 版本创建的,并且要将该实例升级到 9.0.242,则从 9.0.242\bin 文件夹运行 nscontrol upgrade 以执行升级。

nscontrol upgrade 命令会检查实例数据库,以确定元数据的版本。如果元数据指定了以前或更早的版本,则 nscontrol upgrade 将确认实例是否已禁用;如果实例已禁用,则 nscontrol 将执行升级。

ms162754.note(zh-cn,SQL.90).gif注意:
nscontrol upgrade 将数据库兼容模式设置为 90。

nscontrol upgrade 命令用于就地升级 Notification Services 实例。如果在升级期间移动了实例,则必须在应用程序定义文件 (ADF) 中更改 SystemName 值,然后使用 nscontrol update 来更新数据库中的值。如果数据库中的 SystemName 值与实际的系统名称不匹配,则组件不会运行,并且 Notification Services 无法处理通知。有关移动实例的详细信息,请参阅移动 Notification Services 实例

权限

用于运行 nscontrol upgrade 的帐户或由 -sqlusername 参数指定的 SQL Server 登录名必须是 db_owner 固定数据库角色的成员或 sysadmin 固定服务器角色的成员。

该帐户还必须拥有执行 Notification Services 二进制文件的权限;Administrators 和 SQLServerNotificationServicesUser Windows 组的成员会被授予该权限。

示例

下面将通过示例说明如何在两种不同的情况下升级实例。

A. 使用 Windows 身份验证升级实例

该示例显示如何使用 Windows 身份验证升级一个名为 StockInstance 的 Notification Services 实例,以便连接到 SQL Server。

nscontrol upgrade -name StockInstance -server nsuetest

B. 使用 SQL Server 身份验证升级实例

ms162754.note(zh-cn,SQL.90).gif重要提示:
请尽可能使用 Windows 身份验证。

该示例显示如何使用 SQL Server 身份验证升级一个名为 StockInstance 的 Notification Services 实例,以便连接到 SQL Server。

nscontrol upgrade -name StockInstance -server nsuetest
    -sqlusername SqlUser -sqlpassword sQl-P@sWd

请参阅

参考

nscontrol 实用工具

其他资源

迁移 Notification Services 实例

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

版本 历史记录

2005 年 12 月 5 日

新增内容:
  • 添加了有关 SQLServerNotificationServicesUser Windows 组的信息。