无法连接远程SQL数据库 - 『双子宫殿』- TanSea's Blog

来源:百度文库 编辑:神马文学网 时间:2024/04/30 03:55:59

无法连接远程SQL数据库

[ 2007-08-13 14:18:23 | 作者: TanSea ] 字号: 大 | 中 | 小 故障情况描述:
  有16台工作站用机,6台用的铁通ADSL网络,10台用的电信ADSL网络,其中2台装的是Windows2003系统。其它的都是WindowsXP系统。用C#开发的WinForm连接远程SQL数据库时,有4台机器连不上。铁通有2台,电信有2台,都是WindowsXP系统。

故障分析:
  1、由于SQL服务器是在远程租用的空间,他们那边也没有出现连接数据库失败的问题,所以排除掉了是服务器的故障。
  2、4台无法连接的机器都是XP系统,但还有10台也是XP系统,如果是系统和软件冲突,那另外10台XP系统也应该连不上。看来系统问题也不是关键问题。
  3、铁通、电信各2台连不上服务器,很明显也不是网络运营商的问题。
  4、在这4台机器上删除掉网络防火墙,同样也连上不服务器,网络防火墙的问题也排除掉了。而且能连上服务器的也装有网络防火墙。
  5、4台机器上都查杀过病毒,并非病毒的问题。

解决故障尝试:
  1、重装系统,一般故障想到的就是重装系统。而且重装系统之后故障机器也能连上数据库。但过几天后又连接不上了。很明显,不是系统的故障。
  2、在故障机器上装SQL客户端,测试连接本地数据库。SQL客户端装好之后,马上就能连上远程服务器了,故障貌视解决掉了。但是过了几天,又连不上服务器了。后来卸载掉SQL客户端马上又能连上了,但也用不了几天。装SQL不能从根本上解决问题。
  3、听同学说ORACLE要连远程数据库要装个驱动,所以尝试装SQL数据库的驱动,但是通过了解Windows已经装有SQL的驱动了。而且重装驱动故障机器还是连不上服务器,可见也不是SQL驱动的问题。
  4、尝试端口,SQL常用端口为1433,在故障机器上用端口检测软件发觉是连的2433端口。而正常机器连的是1433端口。故障原因找到了。

故障解决办法:
  通过查看WinForm程序,发现他的连接字符串只有IP,没有端口号的设置,所以将“Server=127.0.0.1;DataBase=testBase;User ID=sa;Password=sa”换成“Data Source=127.0.0.1,1433;Network Library=DBMSSOCN;Initial Catalog=testBase;User ID=sa;Password=sa”,问题得到了完美的解决。

工作总结:
  1、连接数据库必需都装有相应数据库的驱动,只是SQL的驱动Windows系统已经装好了。
  2、虽然都是连接SQL数据库,但本地和远程连接方法是有区别的。[最后修改由 TanSea, 于 2007-09-05 22:47:59]