逐浪云主机

立即开通

"SQLServer复制需要有实际的服务器名称才能连接到服务器,请指定实际的服务器名"

作者:Q葩小玉 发布时间:2017-12-02 来源:佚名 点击数:

最近在学习SQL SERVER的高级复制技术的时候,遇到一个小问题,就是用本地SQL SERVER连接服务器的数据库时,在查看复制功能的发布服务器时,连接不上,弹出一个错误提示框架,如下:

原来在自己本地的实例是一切操作正常的,一连接到远程服务器时就出现这个问题,后来在网上找了下,发现有这两种情况:
一、自己本身的计算机名称修改过,导致与服务器不一致。
二、在直接用IP地址连接远程服务器时,如果不用别名来连接的话,就会出现上面这个错误提示框。

第一种情况下:
在SQL SERVER里面执行下面语句:

use master
go
select @@servername;
select serverproperty('servername')

使用上面的语句查询服务器的名称和实际计算机的名称,如果两者不一致,就需要修改。
不一致就执行下面的语句:

-- 将"服务器名", 修改为正确的计算机名
EXEC sp_dropserver '服务器名[/命名实例名]';           -- 即旧的计算机名
GO
EXEC sp_addserver '计算机名[/命名实例名]', 'local'; -- 即新的计算机名

go

修改完后,重启SQL SERVER服务。

第二种情况下:
为远程服务器增加“别名”,使用别名代替IP地址来连接远程数据库服务器。(我自己用的是SQL SERVER2012)
打开SQL SERVER2012的配置管理器,定位到“别名”服务选项,如下:


右键--->新建别名:

这里的这个"别名"就用服务器名称,就是用上面的SQL 语句查询出来的名称:(select @@servername;),IP地址就是这台服务器的访问地址。


接着在本机的hosts添加相应的IP地址和别名:
C:\Windows\System32\drivers\etc

hosts:

IP地址        别名

例如:

172.168.1.15     sniper

修改完,保存.


都修改完后,重启一下SQL SERVER服务。

再次连接的时候,使用“别名”代替IP地址去连接服务器即可:


至此,问题解决!



如果对于高版本系统,数据库配置管理器以下方法寻找:

SQl Server 配置管理器(简称为配置管理器)包含了SQL Server 2014服务、SQL Server 2014网络配置和SQL Native Client配置3个工具,供数据库管理人员做服务器启动停止与监控、服务器端支持的网络协议配置、用户访问SQL Server 的网络相关设置等工作,相信安装用2014版本数据库,在左下角开始哪里所有程序查看不,下面我分享我是怎么找到的。


  • 在"我的电脑"桌面快捷方式这里右击鼠标,显示如下图片:

    SQL Server 2014 数据库如何找到配置管理器?

  • 然后选中显示出来的"管理"这一项,显示如下图:

    SQL Server 2014 数据库如何找到配置管理器?

  • 找到"服务和引用程序",再点击就可以找到,如下图显示:

    SQL Server 2014 数据库如何找到配置管理器?



本文责任编辑: 加入会员收藏夹 点此参与评论>>
复制本网址-发给QQ/微信上的朋友