SQL Server2005本地无法访问,远程可以访问

时间:2022-12-11 17:08:25
问题情境:
    自己写的一个程序,要求访问本机数据库,在自己电脑上测试没有问题,但是将程序
    拷贝到另一台电脑上(已经安装数据库).程序可以连接到数据库,可以登录,但是
    当执行操作时SELECT或者INSERT却总是提示:[DBNETLIB][ConnectionOpen (Connect())]
    SQL Server不存在或拒绝访问。
    当我将这台电脑连上局域网用我之前测试没问题的电脑远程访问时,程序又正常了。

求救大神们这怎么解决啊

8 个解决方案

#1


估计是连接字符串的问题。你的连接字符串应该用 服务器名/实例名的 这样的格式比较好

#2


引用 1 楼 fredrickhu 的回复:
估计是连接字符串的问题。你的连接字符串应该用 服务器名/实例名的 这样的格式比较好
如果是连接字符串的问题,它会完全连不上啊,我现在还可以连接上,只是后续操作出
问题了,很奇怪。而且将程序放在局域网的另一台机器上就可以远程连接这台有问题的电脑,而且后续操作正常。

#3


那就查看一下防火墙这些设置 1433端口有没有被禁止
防火墙设置例外
BAIDU一下吧

#4


引用 3 楼 fredrickhu 的回复:
那就查看一下防火墙这些设置 1433端口有没有被禁止
防火墙设置例外
BAIDU一下吧

百度不出来,所以才来csdn的,这里高手多啊。
telnet 127.0.0.1 1433 可以的,防火墙直接就关闭了。
这台出问题的机器前几天做过vpn服务器,不知道会不会有什么影响。

#6


你换一台机器部署数据库服务器,然后再连接试试看呢

#7


我觉得这个应该是没什么问题的。

这个得看,你的连接字符串中,如果是用机器名称来连接,可能会导致连接不上远程电脑,这个需要修改hosts文件,把ip 和 机器名称 对应关系,添加进去,比如:


192.168.1.10     computerxxx

#8


结贴,问题出在我自己的程序,郁闷!

#1


估计是连接字符串的问题。你的连接字符串应该用 服务器名/实例名的 这样的格式比较好

#2


引用 1 楼 fredrickhu 的回复:
估计是连接字符串的问题。你的连接字符串应该用 服务器名/实例名的 这样的格式比较好
如果是连接字符串的问题,它会完全连不上啊,我现在还可以连接上,只是后续操作出
问题了,很奇怪。而且将程序放在局域网的另一台机器上就可以远程连接这台有问题的电脑,而且后续操作正常。

#3


那就查看一下防火墙这些设置 1433端口有没有被禁止
防火墙设置例外
BAIDU一下吧

#4


引用 3 楼 fredrickhu 的回复:
那就查看一下防火墙这些设置 1433端口有没有被禁止
防火墙设置例外
BAIDU一下吧

百度不出来,所以才来csdn的,这里高手多啊。
telnet 127.0.0.1 1433 可以的,防火墙直接就关闭了。
这台出问题的机器前几天做过vpn服务器,不知道会不会有什么影响。

#5


#6


你换一台机器部署数据库服务器,然后再连接试试看呢

#7


我觉得这个应该是没什么问题的。

这个得看,你的连接字符串中,如果是用机器名称来连接,可能会导致连接不上远程电脑,这个需要修改hosts文件,把ip 和 机器名称 对应关系,添加进去,比如:


192.168.1.10     computerxxx

#8


结贴,问题出在我自己的程序,郁闷!