1. 问题描述
帆软报表FineReport客户端连接SQLServer(2000、2005等),常常会出现如下错误:com.microsoft.sqlserver.jdbc.SQLServerException: 到主机的TCP/IP 连接失败。 该错误可能由如下几个方面导致:
首先确认在定义数据连接那边的URL是否正确(保证IP,端口以及数据库是正确的),如下图:
这个主要是sqlserver2000,其他版本一般没有这个问题。sqlsp4补丁就是Microsoft SQL Server 2000 Service Pack 4 ,大多数版本为简体中文版。
SP4 包括用于以下 SQL Server 2000 组件的程序包。
数据库组件(下载文件:SQL2000-KB884525-SP4-x86.EXE):更新 SQL Server 2000 的 32 位数据库组件,包括数据库引擎、复制、客户端连接组件和工具。
Analysis Services 组件(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE):更新 SQL Server 2000 的 32 位 Analysis Services 组件。
SQL Server 2000 Desktop Engine (MSDE) 组件(下载文件:SQL2000.MSDE-KB884525-SP4-x86.EXE):对于 SQL Server 2000 的 32 位 MSDE 组件:
安装新的 MSDE 实例;
升级现有 MSDE 实例;
更新使用合并模块的应用程序。
打sp4后一般会出现登陆连接问题,看看SQL的服务有没有运行,没运行就去我的电脑>管理>服务里面,把MSSQLSERVER服务登录的用户名和密码改正确;有运行,进企业管理器,改SQL的登录方式为混合模式,设置sa密码,重新设置一次。 sqlserver 2000 sp3由于有bug,很多服务器打不了补丁,说sa连接失败,所以直接安装sp4升级补丁,升级之前建议先备份数据库。
SQLServer2005默认情况下是已禁用TCP/IP连接,若连接SQLServer数据库出现TCP/IP连接失败,请确认数据库服务器的TCP/IP是否已启用。
SQLServer2000数据库启用方法:可以到系统服务里手动开启一下,下图所示位置的TCP/IP:
SQLServer2005数据库启用方法:在Microsoft SQL Server 2005\配置工具\目录下的SQL Server Configuration Manager界面设置,如下图:
如果提示不监听1433端口,则可以右击TCP/IP属性,弹出对话框中修改IP2默认TCP动态端口,把0改成1433就可以成功访问到1433了。
如下图所示,在SQLServer2000中有个服务器网络实用工具需要如下设置,如果不打开也会报TCP/IP的错误,这也是一个要注意的地方,检错的时候不可遗漏。
对于SQLServer2005,可以在配置工具\SQL Server 外围应用配置器,在“SQL Server 2005外围应用配置器”页,单击“服务和连接的外围应用配置器”,然后单击展开“数据库引擎”,选中“远程连接”,在右边选中“本地连接和远程连接”,再选择要使用的协议:
控制面板中的Windows防火墙阻止了连接,导致TCP/IP连接失败;本地的防火墙添加一下SQLServer数据库的端口即可:
注:以上是五种常见的解决方案,出现TCP/IP连接失败的情况,可以按照这五个方法尝试解决。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30056930/viewspace-1974710/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30056930/viewspace-1974710/