sp_changereplicationserverpasswords (Transact-SQL)

适用于: SQL Server Azure SQL 托管实例

更改在连接到复制拓扑中的服务器时复制代理使用的 Windows 帐户或 SQL Server 登录名的存储密码。 一般情况下,必须更改服务器上运行的每个单独代理的密码,即使它们使用相同的登录名或帐户时也是如此。 通过此存储过程,可以更改服务器上运行的所有复制代理使用的给定 SQL Server 登录名或 Windows 帐户的所有实例的密码。 此存储过程在数据库的复制拓扑 master 中的任何服务器上执行。

Transact-SQL 语法约定

语法

sp_changereplicationserverpasswords
    [ @login_type = ] login_type
    , [ @login = ] N'login'
    , [ @password = ] N'password'
    [ , [ @server = ] N'server' ]
[ ; ]

参数

[ @login_type = ] login_type

提供的凭据的身份验证类型。 @login_typetinyint,没有默认值。

  • 1 = Windows 集成身份验证
  • 0 = SQL Server 身份验证

[ @login = ] N'login'

正在更改的 Windows 帐户或 SQL Server 登录名的名称。 @login为 nvarchar(257),没有默认值。

[ @password = ] N'password'

要为指定的 @login存储的新密码。 @password为 sysname,无默认值。

注意

更改复制密码后,必须停止并重新启动使用该密码的每个代理,这样代理的更改才能生效。

[ @server = ] N'server'

要为其更改存储密码的服务器连接。 @server是 sysname,可以是以下值之一:

说明
distributor 所有指向分发服务器的代理连接。
publisher 所有指向发布服务器的代理连接。
subscriber 所有指向订阅服务器的代理连接。
%(默认值) 指向复制拓扑中所有服务器的代理连接。

返回代码值

0(成功)或 1(失败)。

注解

sp_changereplicationserverpasswords 用于所有类型的复制。

权限

只有 sysadmin 固定服务器角色的成员才能执行sp_changereplicationserverpasswords