Greesh Kumar
Greesh Kumar

Reputation: 1887

Openfire xmpp server error while configure remote mysql db

Recently i am preparing my xmpp sever (openfire) for clustering. that's why i need to setup more then one openfire server using the same DB. and when configure database while setting up openfire server using a remote ip; i got a error as :

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.
    at sun.reflect.GeneratedConstructorAccessor14.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1127)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:356)
    at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2502)
    at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2539)
    at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2321)
    at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:832)
    at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
    at sun.reflect.GeneratedConstructorAccessor11.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
    at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:417)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:344)
    at java.sql.DriverManager.getConnection(DriverManager.java:571)
    at java.sql.DriverManager.getConnection(DriverManager.java:187)
    at org.logicalcobwebs.proxool.DefaultConnectionBuilder.buildConnection(DefaultConnectionBuilder.java:39)
    at org.logicalcobwebs.proxool.Prototyper.buildConnection(Prototyper.java:159)
    at org.logicalcobwebs.proxool.Prototyper.sweep(Prototyper.java:102)
    at org.logicalcobwebs.proxool.PrototyperThread.run(PrototyperThread.java:44)
Caused by: java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.j

please correct me if i am doing something wrong ??

Upvotes: 3

Views: 752

Answers (2)

Lawakush Kurmi
Lawakush Kurmi

Reputation: 2996

First grant all privilege to your remote mysql user. To do this You need to follow these steps

Steps to grant remote login privilege

Run command

  1. sudo vi /etc/mysql/my.cnf

  2. make comment this line :- bind-address = 127.0.0.1/bind-address = 0.0.0.0 and exit.

  3. login in mysql and run command GRANT ALL PRIVILEGES ON . TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

  4. exit from mysql and run command sudo service mysql restart

  5. to check remote login access login at this DB from your local server by using commond mysql -uroot -p -h IP

** if login success it means remote login access granted.

Upvotes: 2

Micka&#235;l R&#233;mond
Micka&#235;l R&#233;mond

Reputation: 9055

It seems to be a networking / configuration issue: Connection refused means that the server cannot connect to your database.

It could be because the database port is not exposed or is different than the default. Most likely, the DNS / naming of the machine are possibly incorrect.

Upvotes: 2

Related Questions