SQLServer 错误 故障 处理 修复 支持远程
详细信息
Attribute | 值 |
---|---|
产品名称 | SQL Server |
事件 ID | 18483 |
事件源 | MSSQLSERVER |
组件 | SQLEngine |
符号名称 | REMLOGIN_INVALID_USER |
消息正文 | 由于没有在服务器 ‘%.ls’ 上将 ‘%. ls’ 定义为远程登录名,所以无法连接到该服务器。 请确保指定的登录名正确无误。 %.*ls。 |
说明
当你尝试在使用初始安装了 SQL 实例的另一台计算机的硬盘映像进行还原的系统上配置复制分发服务器时,将出现此错误。 将向用户报告如下错误消息:
SQL Server Management Studio无法配置 ”<服务器><实例>“作为”服务器><实例>“<的分发服务器。 错误 18483:无法连接到服务器“<服务器><实例>”,因为“distributor_admin”未定义为服务器上的远程登录名。 请确保指定的登录名正确无误。 %.*ls。
原因
从安装了 SQL Server 的另一台计算机的硬盘映像部署 SQL Server 时,映像计算机的网络名称将保留在新安装中。 不正确的网络名称会导致复制分发服务器配置失败。 如果在安装 SQL Server 之后重命名计算机,则会出现相同问题。
用户操作
若要解决此问题,请将 SQL Server 服务器名称替换为正确的计算机网络名称。 为此,请执行下列步骤:
-
登录到从磁盘映像部署 SQL Server 的计算机,然后在 SSMS 中运行以下 Transact-SQL 语句:
-- Use the Master database USE master GO -- Declare local variables DECLARE @serverproperty_servername varchar(100), @servername varchar(100); -- Get the value returned by the SERVERPROPERTY system function SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY('ServerName')); -- Get the value returned by @@SERVERNAME global variable SELECT @servername = CONVERT(varchar(100), @@SERVERNAME); -- Drop the server with incorrect name EXEC sp_dropserver @server=@servername; -- Add the correct server as a local server EXEC sp_addserver @server=@serverproperty_servername, @local='local';
-
重新启动运行 SQL Server 的计算机。
-
若要验证计算机的 SQL Server 名称和网络名称是否相同,请运行以下 Transact-SQL 语句:
SELECT @@SERVERNAME, SERVERPROPERTY('ServerName');
详细信息
可以在 SQL Server 中使用 @@SERVERNAME
全局变量或 SERVERPROPERTY
(“ServerName”)函数来查找运行 SQL Server 的计算机的网络名称。 当你重新启动计算机和 SQL Server 服务时,SERVERPROPERTY
函数的 ServerName 属性会自动报告计算机的网络名称更改。 @@SERVERNAME
全局变量将保留原始 SQL Server 计算机名称,直到手动重置 SQL Server 名称。
重现此问题的步骤
在从磁盘映像部署 SQL Server 的计算机上,执行以下步骤:
-
启动 Management Studio。
-
在“对象资源管理器”中,展开 SQL Server 实例名称。
-
右键单击“复制”文件夹,然后依次单击“配置分发复制”、“配置发布、订阅服务器和分发”。
-
在“配置分发向导”对话框中,单击“下一步”。
-
在“分发服务器”对话框中,单击以选择“<服务器><实例>”将充当其自己的分发服务器;SQL Server将创建分发数据库和日志单选按钮,然后单击“下一步”。
-
在“SQL Server 代理启动”对话框中,单击“下一步”。
-
在“快照文件夹”对话框中,单击“下一步”。
注意
如果收到确认快照文件夹路径的消息,请单击“是”。
-
在“分发数据库”对话框中,单击“下一步。
-
在“发布服务器”对话框中,单击“下一步”。
-
在“向导操作”对话框中,单击“下一步”。
-
在“完成向导”对话框中,单击“完成”。