SQL Server Agent连接显示错误服务器名 无法记录作业日志如何解决
SQL Server Agent连接错误实例名无法记录作业日志解决方案
操作步骤
- 第一步:修正SQL Server内部注册的服务器元数据
执行如下查询验证当前SQL Server内部注册的名称与实际名称是否一致:
若两个返回结果不一致,执行如下语句更新元数据:SELECT @@SERVERNAME AS '内部注册服务器名', SERVERPROPERTY('SERVERNAME') AS '实际服务器名'-- 删除报错提示中的错误服务器名 EXEC sp_dropserver 'NotMyClient'; GO -- 替换为你环境中实际的正确服务器/实例名 EXEC sp_addserver '你的正确实例名', 'LOCAL'; GO - 第二步:修改SQL Server Agent注册表配置
- 停止SQL Server Agent服务
- 打开注册表编辑器,定位到对应路径:
- 默认实例路径:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\SQLServerAgent - 命名实例路径:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.你的实例名\SQLServerAgent
- 默认实例路径:
- 找到名称为
ServerHost的字符串值,将其数值修改为正确的服务器/实例名后保存
- 第三步:重启相关服务
先重启SQL Server服务,再启动SQL Server Agent服务 - 第四步:功能验证
创建一个简易测试作业执行,检查作业日志是否正常生成,查看SQL Agent日志是否不再抛出连接报错
注意事项
- 操作注册表前请先导出对应SQLServerAgent路径的注册表项做备份,避免误操作导致服务异常
- 所有SQL语句执行需要使用具有sysadmin权限的账号
- 若为集群部署场景,请先确认当前节点对应的正确实例名再执行修改操作
内容的提问来源于stack exchange,提问作者Matthew Baker
相关产品推荐
相关产品推荐

