在 sys.servers 中找不到服务器 '10.0.2.13'。请验证指定的服务器名称是否正确。

        工作中,因为需要,搭建同事的程序模块,附加了从同事那里拷过来的该程序使用的库。(C#、C/S、.Net Framework4.0 、WCF、Win10、SQL Server 2014、VS2015)

        一路解决报错,比如“缺少根元素”,调试代码的过程中发现会打开不属于该项目的文件,查看环境才发现与文件相关的有一个服务应用程序没有启动,这是我的模块不需要的,启动之后该错误解除。

       加载数据时,日志记录下图所示错误:

  百度了下,网上的方法基本和日志提示的解决办法差不多:

  1)、查询得到原来的计算机(服务器)名称
    select * from sys.servers 

  2)、删除原来的服务器名

    sp_dropserver '原来的服务器名'   

  3)、添加新的服务器名,重启服务

    sp_addserver '10.0.2.13'  (我的计算机适用日志提示的语句:exec sp_addlinkedserver  '10.0.2.13' )

  4)、我到第三步就没往下执行了(此时不报这个错误,但问题没有解决,程序卡死),网上说第四步这样做

    sp_serveroption '新的服务器名','data access', 'true' (设定 SQL Server 选项,使其允许加入linked server)

     执行完成后 重启sql服务 然后才能生效

  我只执行到第三步,发现不太对,就还原回去了,重新跟踪代码发现该语句是在新加的这个库执行的,我之前也有把报错语句在原有的一套数据库执行,是可以正常执行查询的,但其实该语句涉及的表是在新加的库里建的视图,视图里数据表源是原库的表,视图是这么写的:

    

所以,把这个删掉就好啦!

 

转载于:https://www.cnblogs.com/gc001279/p/9293009.html

在 SQL Server 环境中,`sys.servers` 表通常用于存储已连接的数据库服务器的信息,包括服务器名、登录账户等。如果你遇到提示说不到特定的服务器 `8.137.13.136`,这可能是以下几个原因: 1. **拼写错误**:确认输入的服务器名称 `8.137.13.136` 是否完全正确,特别是大小写敏感的部分。 2. **服务器未连接**:这个地址可能表示的是一个尚未通过 `sp_addlinkedserver` 存储过程链接到当前系统的物理服务器。你需要通过管理员权限运行该存储过程来建立链接。 3. **权限限制**:检查当前用户是否有足够的权限去查看或管理其他服务器。 4. **系统更新或配置更改**:如果服务器已经从系统中移除或者网络配置有变,可能会导致查询不到。 针对这个问题,你可以尝试以下操作: 1. 使用 `sp_helpsrvr '8.137.13.136'` 来直接验证服务器是否存在。 2. 如果不存在,执行 `sp_addlinkedserver` 存储过程,传入服务器名称、提供者(如 OLE DB 或者 SQL Server Native Client)、数据库名称和其他必要的连接信息。 3. 执行完存储过程后,再次查询 `sys.servers`,看新添加的服务器是否已列出。 ```sql EXEC sp_addlinkedserver 'MyServer', @srvproduct = 'SQL Server', @provider = 'SQLNCLI', @datasrc = '8.137.13.136,mydatabase'; ``` 其中,`@srvproduct` 是你想链接的服务器类型,`@provider` 是数据源使用的连接提供者,`@datasrc` 包含了服务器地址和数据库名。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值