连接数据库报错:“数据库异常:[DBNETLIB] [ConnectionOpen(Connenct()).] Sqlserver 不存在或拒绝访问”
原因:
1.查看是不是没有在数据库中添加数据库服务器地址。
2. 查看端口是否打开,MSSQL默认是TCP:1433.
3.SQL服务项中服务是否开启或启动。
4. 防火墙是否将TCP:1433端口,添加例外.
5.是否开启了VIA服务。
6.最好关闭数据库计算机的防火墙。
解决方法:
1. 查看端口方法有很多,DOS、360网络查看,这里介绍DOS方法,使用方便。
命令:netstat –ano | findstr "1433"
查看是否1433端口被打开,并确认是由数据库服务器开启的,按照下面来设置解决。
2. 打开 SQL Server 配置管理器:
1)展开 SQL Server 2005/2008 网络配置节点 -->展开协议节点 --> 在协议右边启用 TCP/IP 协议 -->
在协议右边的 TCP/IP 协议属性中 --> 在 IPAll 这一项-->将 TCP 端口设置为 1433,如下图:
2)重新启动 SQL Server,如果防火墙没限制,现在就 OK 了。
3.关闭VIA服务。
在 开始 -- 程序 -- SQL2005 -- 配置工具 -- SQL Server Configuration Manager ,然后弹出下面对话框。
如图,有两个地方需要禁用。MSSQLSERVER的协议(或者是SQLEXPRESS的协议)和客户端协议里。然后在SQL Server 2005l里在重新启动就可以了。
参考资料:http://jingyan.baidu.com/article/7e4409538db15f2fc0e2efa2.html
附注一些其他数据问题解决方法::
SQL Server 2000连接中的四个最常见错误(Sqlserver不存在;无法连接到服务器,用户XXX登录失败;提示连接超时;使用Named Pipes连接数据库)
http://blog.csdn.net/xys_777/article/details/5704693
最好先将程序放在与数据库相同的计算机测试,保证自身程序正确后再解决相应数据库连接问题!