所用的服务器是win2003+SQL2005商业版,用ASP远程连接服务器SQL2005数据库提示错误:
未找到提供程序。该程序可能未正确安装。
已按以下操作开放了SQL2005的远程连接:
1、开启sql2005远程连接功能:
确保服务器端的数据库是支持远程调用的.打开SQL Server Management Studio,选择该数据库,右键菜单"Properties",在打开的对话框中选择Connections,把Allow remote connections to this server选上.确保服务器端的SQL服务的TCP/IP是Enable的.打开SQL Server Configuration Manager. 选择SQL Server 2005 Network Configuration下的Protocols for SQL2005( 我安装的SQL示例名为SQL2005), 把Named Pipes和TCP/IP都修改为Enabled,默认是Disabled.着重参考了:
http://www.cnblogs.com/VitoriaTang/archive/2007/02/06/641731.html
http://support.microsoft.com/kb/914277
http://blog.csdn.net/bejco/archive/2007/01/13/1481803.aspx
仍没解决问题,请教各位老大帮忙!
未找到提供程序。该程序可能未正确安装。
已按以下操作开放了SQL2005的远程连接:
1、开启sql2005远程连接功能:
确保服务器端的数据库是支持远程调用的.打开SQL Server Management Studio,选择该数据库,右键菜单"Properties",在打开的对话框中选择Connections,把Allow remote connections to this server选上.确保服务器端的SQL服务的TCP/IP是Enable的.打开SQL Server Configuration Manager. 选择SQL Server 2005 Network Configuration下的Protocols for SQL2005( 我安装的SQL示例名为SQL2005), 把Named Pipes和TCP/IP都修改为Enabled,默认是Disabled.着重参考了:
http://www.cnblogs.com/VitoriaTang/archive/2007/02/06/641731.html
http://support.microsoft.com/kb/914277
http://blog.csdn.net/bejco/archive/2007/01/13/1481803.aspx
仍没解决问题,请教各位老大帮忙!
SQL Server Configuration Manager—SQL2005网络配置—启用TCP/IP和named pipes
---------
windows防火墙\系统sp1
--------
以上方法排除
connstr = "Provider=SQLNCLI.1;Persist Security Info=False;Server=(IP地址);User ID=***;Password=***;Initial Catalog=***;"
我试过在服务器上通过IIS建了个网站用一样的ASP连接串就能正常访问,但在本地远程连接数据库时不能访问,出现以上的错误。我认为问题就出现在远程上的问题,连接串应该没有问题。
Surface Area Configuration --> Database Engine --> Remote Connections --->Using TCP/IT
我在服务器用netstat -a监听跟踪,发现我在本地访问服务器上建的网站时就能监听到我本地的IP,但用我访问本地连接服务器数据库的网站时,在服务器上就监听不到我本地的IP,难道还是我远程连接串的问题?
在服务器上的网站和本地的网站所用一样的ASP数据库连接串:
connstr = "Provider=SQLNCLI.1;Persist Security Info=False;Server=(IP地址);User ID=***;Password=***;Initial Catalog=***;"
Provider=SQLNCLI;
或
Server=(IP地址)\SQLEXPRESS;
或
Server=(IP地址)\SQLEXPRESS,1433;
或
Server=(IP地址),1433;
或
Persist Security Info=True;
仍是没有办法连接上服务器上的SQL2005数据库。
这SQL2005远程连接的问题都困了我好几天了!晕啊!
求助还有哪位达人给见解啊。
就是连接串的问题:
connstr = "Provider=SQLOLEDB.1;Persist Security Info=False;Server=(IP);UID=***;PWD=***;Database=***;"
竟然是用SQL2000的连接串成功了,可我连接的是SQL2005的数据库。
关键就在Provider上的不同。
难道是因为我本地是SQL2000的原因?想不明白。
谢谢各位的帮助,结贴