网络是好的
用sql2000连sql2008 能正常连接
用sql2008就连不上 并且在浏览网络服务名里是空白
两边都是默认实例 端口都一样 防火墙都关闭
sql2000 打过sp4补丁
------解决思路----------------------
解决方法一:
这个问题好多人都问过:
解决办法:
http://support.microsoft.com/kb/906954/zh-tw
一般是把:SQL2KSP4\install\instcat.sql的这个在查询分析器里执行即可(可能语法不能通过,但可以执行)。
解决方法二:
是因为服务器(sql server 2008)禁止访问sql server2000服务器,把ping开通就可以了!
解决方法三:
中间平台从2000升级到2008后,重新创建链接服务器
创建链接服务器成功,且能看列表中能看到数据对象
但是分析相关语句都报如下错误:
链接服务器"10.99.20.200"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 "Unspecified error"。
链接服务器"10.99.20.200"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 "The stored procedure required to complete this operation could not be found on the server. Please contact your system administrator."。
消息 7311,级别 16,状态 2,第 1 行
无法获取链接服务器 "10.99.20.200" 的 OLE DB 访问接口 "SQLNCLI10" 的架构行集 "DBSCHEMA_TABLES_INFO"。该访问接口支持该接口,但使用该接口时返回了失败代码。
10.99.20.200服务器的版本是
Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) May 3 2005 23:18:38 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.0 (Build 2195: Service Pack 4)
103的版本是
Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64) Mar 29 2009 10:11:52 Copyright (c) 1988-2008 Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 5.2 <X64> (Build 3790: Service Pack 2)
将宿主服务器换成以下86版本就不会报以上错误
Microsoft SQL Server 2005 - 9.00.4035.00 (Intel X86) Nov 24 2008 13:01:59 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
应该是服务器版本问题(Intel X86) 是32位(详见下文微软文档)。
解决办法:
在sql2000上:
执行:安装盘\SQL2KSP4\install\instcat.sql
运行\cmd
osql -E -S <erpsql2> -i <E:\SQL2KSP4_EN\install>\instcat.sql
拒绝访问
osql -E -S erpsql2 -i E:\SQL2KSP4_EN\install\instcat.sql
ok
------解决思路----------------------
在dos下写入telnet ip 1433 是否正常
用IP地址连接试试