sp_changereplicationserverpasswords (Transact-SQL)
适用于: SQL Server Azure SQL 托管实例
更改在连接到复制拓扑中的服务器时复制代理使用的 Windows 帐户或 SQL Server 登录名的存储密码。 一般情况下,必须更改服务器上运行的每个单独代理的密码,即使它们使用相同的登录名或帐户时也是如此。 通过此存储过程,可以更改服务器上运行的所有复制代理使用的给定 SQL Server 登录名或 Windows 帐户的所有实例的密码。 此存储过程在数据库的复制拓扑 master
中的任何服务器上执行。
语法
sp_changereplicationserverpasswords
[ @login_type = ] login_type
, [ @login = ] N'login'
, [ @password = ] N'password'
[ , [ @server = ] N'server' ]
[ ; ]
参数
[ @login_type = ] login_type
提供的凭据的身份验证类型。 @login_type 为 tinyint,没有默认值。
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
。