You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server链接服务器保存的远程密码重启后失效问题排查

AWS RDS SQL Server链接服务器密码重启后失效的解决方法

问题根源

AWS RDS托管的SQL Server实例,默认不会持久化链接服务器配置中直接输入的密码——重启实例时,这类临时存储的凭据会被系统清除,导致链接服务器无法自动恢复认证。

持久化密码的配置步骤

要让密码在重启后保留,必须使用SQL Server的加密存储凭据来关联链接服务器,具体操作如下:

  1. 创建数据库主密钥(如果实例中还未创建)
    主密钥用于加密后续创建的凭据,执行以下T-SQL命令:

    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '你的高强度主密钥密码';
    

    注意:这个密码必须妥善保存,丢失后无法解密存储的凭据。

  2. 创建存储凭据
    用远程SQL Server的账号和密码创建加密凭据:

    CREATE CREDENTIAL [RemoteSQL_Credential] 
    WITH IDENTITY = '远程SQL登录用户名', 
    SECRET = '远程SQL登录密码';
    
  3. 修改链接服务器关联凭据
    更新已有的链接服务器,让它使用存储的凭据而非临时密码:

    EXEC sp_addlinkedsrvlogin 
    @rmtsrvname = '你的链接服务器名称', 
    @useself = 'FALSE', 
    @locallogin = NULL, 
    @rmtuser = '远程SQL登录用户名', 
    @rmtpassword = NULL, 
    @credentialname = 'RemoteSQL_Credential';
    

    执行后,链接服务器会从加密的凭据中读取密码,重启实例后不会丢失。

验证方法

配置完成后,手动重启RDS SQL Server实例,然后测试数据库复制任务或链接服务器的连通性(比如执行SELECT * FROM [你的链接服务器名称].[远程数据库名].[架构名].[表名]),确认无需重新输入密码即可正常访问。

额外注意事项

  • 确保只有授权的数据库账号能访问存储的凭据,避免权限泄露。
  • 如果后续需要修改远程密码,只需更新凭据即可,无需重新配置链接服务器:
    ALTER CREDENTIAL [RemoteSQL_Credential] WITH SECRET = '新的远程SQL密码';
    

内容的提问来源于stack exchange,提问作者C Cost

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 00:57:37