Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import com.jcraft.jsch.JSch;
- import com.jcraft.jsch.Session;
- import java.sql.Connection;
- public class DatabaseTest {
- /**
- * Java Program to connect to remote database through SSH using port forwarding
- * @author Pankaj@JournalDev
- * @throws SQLException
- */
- public static void main(String[] args) throws SQLException {
- int lport=5656;
- String rhost="some.url.uk";
- String host="some.url.uk"; //
- int rport=3306;
- String user="REDACTED";
- String password="REDACTED";
- String dbuserName = "REDACTED";
- String dbpassword = "REDACTED";
- String url = "jdbc:mysql://localhost:"+lport+"/MYDB";
- String driverName="com.mysql.jdbc.Driver";
- Connection conn = null;
- Session session= null;
- try{
- //Set StrictHostKeyChecking property to no to avoid UnknownHostKey issue
- java.util.Properties config = new java.util.Properties();
- config.put("StrictHostKeyChecking", "no");
- JSch jsch = new JSch();
- session=jsch.getSession(user, host, 22);
- session.setPassword(password);
- session.setConfig(config);
- session.connect();
- System.out.println("Connected");
- int assinged_port=session.setPortForwardingL(lport, rhost, rport);
- System.out.println("localhost:"+assinged_port+" -> "+rhost+":"+rport);
- System.out.println("Port Forwarded");
- //mysql database connectivity
- Class.forName(driverName).newInstance();
- conn = DriverManager.getConnection (url, dbuserName, dbpassword);
- System.out.println ("Database connection established");
- System.out.println("DONE");
- }catch(Exception e){
- e.printStackTrace();
- }finally{
- if(conn != null && !conn.isClosed()){
- System.out.println("Closing Database Connection");
- conn.close();
- }
- if(session !=null && session.isConnected()){
- System.out.println("Closing SSH Connection");
- session.disconnect();
- }
- }
- }
- }
- com.jcraft.jsch.JSchException: java.net.ConnectException: Connection refused (Connection refused)
- at com.jcraft.jsch.Util.createSocket(Util.java:349)
- at com.jcraft.jsch.Session.connect(Session.java:215)
- at com.jcraft.jsch.Session.connect(Session.java:183)
- at DatabaseTest.main(DatabaseTest.java:40)
- Caused by: java.net.ConnectException: Connection refused (Connection refused)
- at java.net.PlainSocketImpl.socketConnect(Native Method)
- at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
- at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
- at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
- at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
- at java.net.Socket.connect(Socket.java:589)
- at java.net.Socket.connect(Socket.java:538)
- at java.net.Socket.<init>(Socket.java:434)
- at java.net.Socket.<init>(Socket.java:211)
- at com.jcraft.jsch.Util.createSocket(Util.java:343)
- ... 3 more
Add Comment
Please, Sign In to add comment