Jump to content
We've recently updated our Privacy Statement, available here ×

MySQL JDBC connections fail on LINUX, work on WIN?


dogfuel

Recommended Posts

I am running js 3.1 - on Windows, I am able to make and test MySQL JDBC connections - on Debian, like connections fail the "test connection" button when set up and do not work.  mysql-connector-java-3.1.12-bin.jar seems to be in the correct place and I do not see anything in the log files (I may be looking at the wrong log as I am not so good with TOMCAT) - Is there additional setup known to be needed on LINUX that is not needed on Windows?

The test data JNDI connections work but the JDBC connections even to the test data seem disfunctional.

Thanks in advance,

J

Link to comment
Share on other sites

  • Replies 2
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

You can look in the tomcat log <apache-tomcat>/logs/catalina.out

Better yet is the jasperserver log:

 <js-install-dir>/apache-tomcat/webapps/jasperserver/WEB-INF/logs/jasperserver.log

So, under Debian, you used the installer binary to install jasperserver, and everything works ok (ie you can view sample reports, etc)? But then there is trouble when you try and set up your own "brand new" datasource connection to mysql?

 

 

Link to comment
Share on other sites

  • 3 months later...

I might be having the same problem. I have Jasperserver running on Windows XP. The sample reports run, but a report I created in iReport that uses a MySQL database on a different machine which runs Linux, doesn't. It seems to hang when you try to view it.

Also, when I edit this report from the Jasperserver web interface, go to Data Source, and try to test the connection, it hangs. If I change the parameters to connect to the local MySQL database japserserver, it succeeds. There is no immediate log output (catalina.out or jasperserver.log) when this happens. However, when I try to shut down Jasperserver, I get the following in jasperserver.log and have to manually kill the java.exe process to shut down Tomcat:

08:39:42,669 ERROR ErrorLogger,JasperServerScheduler_QuartzSchedulerThread:2015 - An error occured while scanning for the next trigger to fire.
org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'springNonTxDataSource.JasperServerScheduler': com.mysql.jdbc.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago. [see nested exception: com.mysql.jdbc.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.]
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.getNonManagedTXConnection(JobStoreCMT.java:1396)
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.acquireNextTrigger(JobStoreCMT.java:1132)
    at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:233)
* Nested Exception (Underlying Cause) ---------------
com.mysql.jdbc.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1070)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2104)
    at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:729)
    at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:298)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:283)
    at org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
    at org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
    at org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:771)
    at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
    at org.springframework.scheduling.quartz.LocalDataSourceJobStore$2.getConnection(LocalDataSourceJobStore.java:125)
    at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:111)
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.getNonManagedTXConnection(JobStoreCMT.java:1381)
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.acquireNextTrigger(JobStoreCMT.java:1132)
    at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:233)
Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:516)
    at java.net.Socket.connect(Socket.java:466)
    at java.net.Socket.<init>(Socket.java:366)
    at java.net.Socket.<init>(Socket.java:208)
    at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:276)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2027)
    ... 13 more

 Is there a setting that is preventing Tomcat from opening a JDBC connection to a different host? These are my connection parameters:
Driver: com.mysql.jdbc.Driver
URL: jdbc:mysql://128.1.1.11:3306/company1

I am able connect to that database from a simple Java program I run locally. Any ideas?

Thanks in advance,
niik

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...