最近没事搞搞db2的数据,首先安装。下载了一个数据库的客户端。squirrel-sql这个客户端还是比较好用的。是一个免费的客户端。地址我就不贴了。
好了,进入正题。
db2和squirrel-sql都安装好之后,遇到一个让我郁闷了两天的问题。在用客户端连接db2数据库的时候出现异常。异常信息是:
com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][2030][11211] A communication error has been detected. Communication protocol being used: TCP/IP. Communication API being used: SOCKETS. Location where the error was detected: Reply.fill(). Communication function detecting the error: InputStream.read(). Protocol specific error codes Insufficient data, * , 0. Message: null at com.ibm.db2.jcc.a.a.a(a.java:366) at com.ibm.db2.jcc.a.ab.b(ab.java:219) at com.ibm.db2.jcc.a.ab.c(ab.java:237) at com.ibm.db2.jcc.a.ab.c(ab.java:348) at com.ibm.db2.jcc.a.ab.v(ab.java:1134) at com.ibm.db2.jcc.a.bb.a(bb.java:42) at com.ibm.db2.jcc.a.b.j(b.java:1254) at com.ibm.db2.jcc.a.b.b(b.java:1128) at com.ibm.db2.jcc.a.b.b(b.java:711) at com.ibm.db2.jcc.a.b.a(b.java:697) at com.ibm.db2.jcc.a.b.a(b.java:378) at com.ibm.db2.jcc.a.b.<init>(b.java:316) at com.ibm.db2.jcc.DB2Driver.connect(DB2Driver.java:174) at net.sourceforge.squirrel_sql.fw.sql.SQLDriverManager.getConnection(SQLDriverManager.java:133) at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.execute(OpenConnectionCommand.java:97) at net.sourceforge.squirrel_sql.client.mainframe.action.ConnectToAliasCommand$SheetHandler.run(ConnectToAliasCommand.java:281) at net.sourceforge.squirrel_sql.client.mainframe.action.ConnectToAliasCommand$SheetHandler.performOK(ConnectToAliasCommand.java:238) at net.sourceforge.squirrel_sql.client.gui.db.ConnectionInternalFrame.connect(ConnectionInternalFrame.java:311) at net.sourceforge.squirrel_sql.client.gui.db.ConnectionInternalFrame.access$300(ConnectionInternalFrame.java:56) at net.sourceforge.squirrel_sql.client.gui.db.ConnectionInternalFrame$MyOkClosePanelListener.okPressed(ConnectionInternalFrame.java:461) at net.sourceforge.squirrel_sql.client.gui.OkClosePanel.fireButtonPressed(OkClosePanel.java:148) at net.sourceforge.squirrel_sql.client.gui.OkClosePanel.access$100(OkClosePanel.java:33) at net.sourceforge.squirrel_sql.client.gui.OkClosePanel$1.actionPerformed(OkClosePanel.java:174) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.setPressed(Unknown Source) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEventImpl(Unknown Source) at java.awt.EventQueue.access$200(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue$4.run(Unknown Source) at java.awt.EventQueue$4.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at net.sourceforge.squirrel_sql.client.Main$1.dispatchEvent(Main.java:93) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source)
当时我就郁闷了,带着沉重的心情上了百度、谷歌,实验了n种方法,最终没能解决这个问题。
后来发怒了,我写了一个jdbc连接数据库,出现另外一个问题:
连接失败! com.ibm.db2.jcc.am.DisconnectNonTransientConnectionException: [jcc][t4][2030][11211][4.16.53] 在对连接的底层 socket、socket input stream 或 socket output stream 执行操作期间 发生通信错误。错误位置:Reply.fill() - insufficient data (-1)。消息:数据不足。 ERRORCODE=-4499, SQLSTATE=08001 at com.ibm.db2.jcc.am.fd.a(fd.java:320) at com.ibm.db2.jcc.t4.a.a(a.java:526) at com.ibm.db2.jcc.t4.a.a(a.java:510) at com.ibm.db2.jcc.t4.a.a(a.java:505) at com.ibm.db2.jcc.t4.x.b(x.java:294) at com.ibm.db2.jcc.t4.x.c(x.java:320) at com.ibm.db2.jcc.t4.x.c(x.java:433) at com.ibm.db2.jcc.t4.x.v(x.java:1201) at com.ibm.db2.jcc.t4.y.a(y.java:51) at com.ibm.db2.jcc.t4.b.c(b.java:1353) at com.ibm.db2.jcc.t4.b.b(b.java:1225) at com.ibm.db2.jcc.t4.b.b(b.java:793) at com.ibm.db2.jcc.t4.b.a(b.java:765) at com.ibm.db2.jcc.t4.b.a(b.java:423) at com.ibm.db2.jcc.t4.b.a(b.java:398) at com.ibm.db2.jcc.t4.b.<init>(b.java:336) at com.ibm.db2.jcc.DB2SimpleDataSource.getConnection(DB2SimpleDataSource.java:233) at com.ibm.db2.jcc.DB2SimpleDataSource.getConnection(DB2SimpleDataSource.java:199) at com.ibm.db2.jcc.DB2Driver.connect(DB2Driver.java:474) at com.ibm.db2.jcc.DB2Driver.connect(DB2Driver.java:115) at java.sql.DriverManager.getConnection(DriverManager.java:582) at java.sql.DriverManager.getConnection(DriverManager.java:185) at com.DBconn.DBconnect.getConnection(DBconnect.java:36) at com.DBconn.DBconnect.main(DBconnect.java:49) Exception in thread "main" java.lang.NullPointerException at com.DBconn.DBconnect.main(DBconnect.java:51)
这就让我更加的郁闷了。一个错误还没有解决,新的错误又来了。然后我就死马当活马医。一个个用户名、密码实验,一个个ip实现。黄天不负有心人,最后让我试出来了。不过我也吐血了。
我丢:竟然最终原因就是ip有问题。不能用127.0.01、localhost访问。最终我改成本机的ip后,解决了。我也吐血了。
推荐一个db2的配置:http://publib.boulder.ibm.com/tividd/td/ITMFTP/GC23-4801-00/zh_CN/HTML/WTPImst30.htm
配置查询:http://iamwave.iteye.com/blog/649730
db2数据库的学习中心:http://pic.dhe.ibm.com/infocenter/db2luw/v9r7/index.jsp
相关推荐
在您提供的标题和描述中,提到了三个重要的JAR文件:“db2jcc.jar”,“db2jcc_javax.jar”和“db2jcc_license_cu.jar”,它们是DB2 Java JDBC驱动的一部分。 1. **db2jcc.jar**:这是DB2的JDBC网络通信类库,包含...
标题中提到的"db2jcc.jar"、"db2jcc_license_cu.jar"和"db2jcc4.jar"正是用于连接DB2数据库的Java JDBC(Java Database Connectivity)驱动。 1. **db2jcc.jar**:这是IBM DB2的JDBC Type 4驱动程序,也称为纯Java...
db2驱动包 db2jcc4.jar db2jcc4.jar db2java.jar db2jcc_javax.jar db2jcc_license_cisuz.jar db2jcc_license_cu.jar db2policy.jar,压缩包无加密,可以放心下载,良心资源。
本压缩包包含两个关键的Java数据库连接(JDBC)驱动文件:`db2jcc.jar`和`db2jcc_license_cu.jar`,它们是Java应用程序连接到DB2数据库所必需的组件。 `db2jcc.jar`是DB2 JDBC类型的4驱动程序,它实现了Java.sql和...
Java连接IBM DB2数据库通常需要两个关键的JAR文件,即`db2jcc.jar`和`db2jcc_license_cu.jar`。这两个文件在Java应用程序中起着至关重要的作用,因为它们提供了Java连接DB2数据库所需的驱动程序。以下是关于这些文件...
3. 创建数据库连接:`Connection conn = DriverManager.getConnection("jdbc:db2://<hostname>:<port>/<database>", "<username>", "<password>");` 4. 执行SQL语句:通过`Statement`或`PreparedStatement`对象执行...
5. 配置数据库连接,例如在Java代码中使用`Class.forName("com.ibm.db2.jcc.DB2Driver")`加载驱动,然后创建`Connection`对象。 使用db2jcc4.jar时,需要注意以下几点: 1. 驱动版本兼容性:不同版本的DB2驱动可能...
db2数据库连接驱动,jcc.11.5.0.0.jar 测试10.5版本的数据库, 可向下兼容,谢谢
这里,"hostname"是DB2服务器的地址,"port"是监听的端口,"dbname"是数据库名,"username"和"password"是数据库连接的凭证。 3. 使用Connection对象执行SQL语句,创建Statement或PreparedStatement对象,然后调用...
它实现了JDBC API,包括Connection、Statement、PreparedStatement、ResultSet等接口,使得开发者可以方便地执行SQL语句,处理查询结果,以及管理数据库连接。 db2jcc_license_cu.jar和db2jcc_license_cisuz.jar则...
最近在自己的环境下搭建连接DB2数据库环境 用到Hibernate 但是连接DB2时 都是有问题 最后发现在网上下载的DB2驱动包有问题 在朋友那里弄到了DB2驱动包 与大家分享
db2专业驱动jar包,直接使用jdbc就可以连接db2数据库。
db2jcc.jar提供了所有必要的功能,使开发者能够在Java环境中编写数据库应用,无需关心底层数据库的具体实现细节。 3. **db2jcc_license_cisuz.jar** 和 **db2jcc_license_cu.jar**:这两个文件是DB2 JDBC驱动的许可...
`db2jcc.jar`包含了所有的DB2特定的JDBC驱动类,包括`com.ibm.db2.jcc.DB2Driver`,这是连接到DB2服务器的主驱动类。 2. `db2jcc_license_cu.jar`: 这个文件包含了DB2的许可证信息。在使用DB2 JDBC驱动时,IBM要求...
在Java编程环境中,数据库连接是不可或缺的部分,尤其是对于企业级应用而言。IBM的DB2数据库系统是广泛应用的关系型数据库管理系统,而标题和描述中提到的jar文件是与DB2数据库进行连接的重要组件。这些jar文件提供...
1. **解压文件**:首先,你需要将压缩包解压,将`db2jcc.jar`和`db2jcc_license_cu.jar`这两个文件放置在一个可以被Java类路径(Classpath)访问的位置。通常,这可能是你的项目类路径或全局JDK的`lib`目录。 2. **...
标题中的“把汉字去掉db2jcc4.zip”可能是指在处理数据库连接时遇到的问题,这个问题与IBM的DB2数据库驱动db2jcc4有关。DB2jcc4.jar是IBM DB2数据库Java连接器(JDBC driver)的一个组件,用于在Java应用程序中连接...
在Java应用程序中连接到DB2数据库时,通常需要使用特定的Java数据库连接(JDBC)驱动程序,这就是“db2jcc”和“db2jcc4”的作用。这两个文件名分别代表了IBM DB2的两种不同版本的JDBC驱动。 "db2jcc"是早期的DB2 ...
DB2是IBM公司开发的一款关系型数据库管理系统,广泛应用于企业级数据存储和管理。在DB2 11.5版本中,JDBC(Java Database Connectivity)驱动是连接Java应用程序与DB2数据库的关键组件。JDBC驱动允许Java代码通过...