首页 > 代码库 > 在 sys.servers 中找不到服务器的解决办法,自己解决的

在 sys.servers 中找不到服务器的解决办法,自己解决的

一开始提示,在服务器中找不到在 sys.servers 中找不到服务器 ‘QPAccountsDBLink‘,先用select * from sys.servers  ,发现只能查到一个服务器名称,后来自己电脑里保存了一些链接脚本,只需改几个地方


-- 变量定义
DECLARE @DBName VARCHAR(32)
DECLARE @DBUser VARCHAR(32)
DECLARE @DBPassword VARCHAR(32)
DECLARE @DBSourceAddr VARCHAR(32)
DECLARE @LinkServerName VARCHAR(32)

-- 设置变量
SET @LinkServerName=‘QPTreasureDBLink‘
SET @DBSourceAddr=‘(local)‘
SET @DBName=‘QPTreasureDB‘

-- 删除连接服务器
IF EXISTS(SELECT SrvName FROM MASTER.DBO.SYSSERVERS WHERE SrvName=@LinkServerName)
BEGIN
EXEC SP_DROPSERVER @LinkServerName,‘DropLogins‘
END

-- 建立链接服务器
EXEC SP_ADDLINKEDSERVER
@Server=@LinkServerName,
@SrvProduct=@LinkServerName,
@Provider=‘SQLOLEDB‘,
@DataSrc=http://www.mamicode.com/@DBSourceAddr,
@Location=‘‘,
@ProvStr=‘‘,
@Catalog=null

-- 用户映射
EXEC SP_ADDLINKEDSRVLOGIN @RmtSrvName=@LinkServerName,@Useself=‘true‘,@LocalLogin=NULL,@RmtUser=NULL,@RmtPassword=NULL

-- 设置链接服务器
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName=‘RPC‘,@OptValue=http://www.mamicode.com/‘true‘
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName=‘RPC OUT‘,@OptValue=http://www.mamicode.com/‘true‘
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName=‘Data Access‘,@OptValue=http://www.mamicode.com/‘true‘
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName=‘Collation CompaTible‘,@OptValue=http://www.mamicode.com/‘true‘
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName=‘Use Remote Collation‘,@OptValue=http://www.mamicode.com/‘true‘

-- 链接服务器状态
EXEC SP_HELPSERVER @LinkServerName

 

 

 

只需要在设置变量那里改改,其他不用动,提示缺少找不到什么服务器就弄什么服务器

 

-- 设置变量
SET @LinkServerName=‘QPTreasureDBLink‘
SET @DBSourceAddr=‘(local)‘
SET @DBName=‘QPTreasureDB‘

只需把@LinkServerName设置成数据库link名字

@DBName设置成数据库名字

 

 

 

下面是网上通用解决方法

 

 

分析SQL语句的性能
应用Profiler优化SQL Server数据库系统

在 sys.servers 中找不到服务器的解决方法

2008-11-18 10:31:14| 分类: 编程 | 标签: |举报 |字号 订阅

 
 
出现错误:
[Microsoft][ODBC SQL Server Driver][SQL Server]在 sys.servers 中找不到服务器 ‘***‘。请验证指定的服务器名称是否正确。如果需要,请执行存储过程 sp_addlinkedserver 以将服务器添加到 sys.servers。

解决方法:

打开SQL Server Management Studio,新建查询:

select * from sys.servers
GO

//这里可得到原来的计算机名称。然后将其记录下来(复制即可)

新建查询:

sp_dropserver [你的SQL服务器名称]
GO

//这里是将原来的名称删除。

新建查询:

sp_addserver [新的SQL服务器名称]
GO

//这里是新建服务器名称

新建查询:

sp_serveroption ‘新的SQL服务器名称‘,‘data access‘, ‘true‘
GO