如何通过Java访问远程主机的phpmyadmin mysql数据库?

时间:2019-06-16 08:55:52

标签: java mysql spring-boot

我正在尝试访问远程服务器的mysql数据库,我无法连接,我不了解问题是我的连接链接是否为IP /主机名或端口或Java代码问题?

我已尝试使用此查询来获取服务器上的主机名和IP

显示变量在哪里,Variable_name ='hostname'; 它给了我o / p: pvt-tomcat13.hostingraja.in

- 在变量名='端口'的地方显示变量; 它给了我o / p: 3306

这是我的Java代码:

public class SqlTest {

public static void main(String[] argv) {

  System.out.println("-------- MySQL JDBC Connection Testing ------------");

  try {
      Class.forName("com.mysql.cj.jdbc.Driver");
  } catch (ClassNotFoundException e) {
      System.out.println("Where is your MySQL JDBC Driver?");
      e.printStackTrace();
      return;
  }

  System.out.println("MySQL JDBC Driver Registered!");
  Connection connection = null;

  try {
      connection = DriverManager
      .getConnection("jdbc:mysql://103.120.178.255:3306/dbmname","username", "pass");

  } catch (SQLException e) {
      System.out.println("Connection Failed! Check output console");
      e.printStackTrace();
      return;
  }

  if (connection != null) {
      System.out.println("You made it, take control your database now!");
  } else {


  System.out.println("Failed to make connection!");
  }
}

} 它让我跟随错误

  

-------- MySQL JDBC连接测试------------ MySQL JDBC驱动程序已注册!连接失败!检查输出控制台   com.mysql.cj.jdbc.exceptions.CommunicationsException:通讯   链接失败

     

成功发送到服务器的最后一个数据包是0毫秒   前。驱动程序尚未收到来自服务器的任何数据包。在   com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)     在   com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)     在   com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835)     在com.mysql.cj.jdbc.ConnectionImpl。(ConnectionImpl.java:455)     在   com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240)     在   com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)     在java.sql.DriverManager.getConnection(未知源)在   java.sql.DriverManager.getConnection(未知源),位于   com.apiservice.shroom.SqlTest.main(SqlTest.java:33)由以下原因引起:   com.mysql.cj.exceptions.CJCommunicationsException:通信链接   失败

     

成功发送到服务器的最后一个数据包是0毫秒   前。驱动程序尚未收到来自服务器的任何数据包。在   sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)     在sun.reflect.NativeConstructorAccessorImpl.newInstance(未知   来源)   sun.reflect.DelegatingConstructorAccessorImpl.newInstance(未知   源)位于java.lang.reflect.Constructor.newInstance(未知源)     在   com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)     在   com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)     在   com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)     在   com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)     在   com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:562)     在   com.mysql.cj.protocol.a.NativeProtocol.readServerCapabilities(NativeProtocol.java:514)     在   com.mysql.cj.protocol.a.NativeProtocol.beforeHandshake(NativeProtocol.java:404)     在   com.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1447)     在com.mysql.cj.NativeSession.connect(NativeSession.java:165)处   com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:955)     在   com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:825)     ... 6更多原因:java.io.EOFException:无法读取响应   从服务器。预期读取4个字节,连接前读取0个字节   意外丢失。在   com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:67)     在   com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:63)     在   com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:45)     在   com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:556)     ...还有12个

0 个答案:

没有答案