我已经安装了一个库存的 mysql 5.5 安装,虽然我可以通过 mysql 命令连接到 mysql 服务,并且该服务似乎正在运行,但我无法通过 spring+tomcat 或从外部 jdbc 连接器连接到它。
我正在使用以下网址:
jdbc:mysql://myserver.com:myport/mydb
Run Code Online (Sandbox Code Playgroud)
使用正确的用户名/密码,但我收到以下消息:
server.com: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. the driver has not received any packets from the server.
Run Code Online (Sandbox Code Playgroud)
和 tomcat 抛出:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
Run Code Online (Sandbox Code Playgroud)
这似乎与我尝试从外部连接相同的问题。
我们正在调查一些 JDBC 问题,其中一个可能的问题是 /dev/random 被耗尽。解决方法是将 JVM 切换为使用 /dev/urandom,但我不想尝试确定 /dev/random 是否已耗尽。
有没有办法检查熵池是否耗尽?我一直在寻找 nagios 插件和一般的 bash 命令,但我什么也没找到。
我们计划将我们的应用服务器升级到 JRun 的新版本,该版本从 Java 1.4 升级到 Java 1.6。作为其中的一部分,我们一直在测试我们软件堆栈的各个部分,并意识到也需要查看我们的 Oracle JDBC 驱动程序。
查看 Oracle 站点和文档,不同版本似乎主要针对 JDBC API 的各种版本,这些版本往往对应于引入它们的 JVM 版本。 Java(通常)向后兼容,似乎坚持使用 ojdbc14.jar 可能最有意义,但我希望有人能更好地澄清事情。
文档专门调出了这样的图表,这让我想知道 ojdbc14.jar 是否在 Java 6 下得到正式支持。
classes12.jar - for Java 1.2 and 1.3
ojdbc14.jar - for Java 1.4 and 1.5
ojdbc5.jar - for Java 1.5
ojdbc6.jar - for Java 1.6
Run Code Online (Sandbox Code Playgroud)
在混合和匹配驱动程序和虚拟机时,从系统角度我应该注意些什么?
我们有一个运行 MS SQL Server 2012 的应用程序。对于一个特定用例,我们希望 SSL 保护 jdbc 连接。我检查了以下链接:
有两件事让我感到困惑:
这让我想到了最后一个问题:是否可以同时使用安全和非安全连接?还是所有 jdbc 客户端都必须在配置后使用 SSL?
非常感谢凯
我有一个 web 应用程序(Tomcat/Hibernate/DBCP 1.4),它运行对 MySQL 的查询,这对于特定的负载很有效,比如每秒 50 个查询。当我通过 HAProxy 路由相同的中等负载(仍然只使用一个数据库)时,我会失败,可能每 500 次查询就会失败。我的应用报告:
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet successfully received from the server was 196,898 milliseconds ago. The last packet sent successfully to the server was 0 milliseconds ago.
at sun.reflect.GeneratedConstructorAccessor210.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3567)
...
Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3017) …Run Code Online (Sandbox Code Playgroud) 我有一个 java 抓取工具,它产生大约 1,500-2,100 个线程,每个线程通过 jdbc 连接到同一个数据库并进行插入。这些螺纹插入的频率很高。
当连接太多时,数据库似乎崩溃了。当所有线程都失去连接时,我总是会产生 210 个线程或连接。以下是在服务器端生成的日志消息。
2015-07-15 20:18:37 UTC [10825-21] LOG: checkpointer process (PID 13435) was terminated by signal 9: Killed
2015-07-15 20:18:37 UTC [10825-22] LOG: terminating any other active server processes
2015-07-15 20:18:37 UTC [16836-1] user@db WARNING: terminating connection because of crash of another server process
2015-07-15 20:18:37 UTC [16836-2] user@db DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly …Run Code Online (Sandbox Code Playgroud) 我有一个托管在 jboss 上的应用程序。使用oracle的jdbc驱动连接oracle 10.2g数据库。任何人都可以指导建立会话时会发生什么。
只是想了解 JDBC/ODBC 的内部工作。
任何帮助表示赞赏。