jdbc与远程mysql的连接

时间:2018-05-08 16:57:31

标签: java mysql jdbc

我无法得到解决方案。我的代码:

package simple;

import java.sql.*;

public class Dbconnect {

    public static Connection Dbconnector() {

        Connection con=null;
        try {
            con=DriverManager.getConnection("jdbc:mysql://www.merinasoftbd.com:2083/merinaso_inventory management?useSSL=false", "merinaso_inventorymanagement", "inventorymanagement");

            System.out.println("Successfully  connected");

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return con;
    }
}

错误:

  

com.mysql.cj.jdbc.exceptions.PacketTooBigException:查询包太大(5,526,600> 65,535)。您可以通过设置'max_allowed_pa​​cket'变量在服务器上更改此值。       at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:107)       在com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:862)       在com.mysql.cj.jdbc.ConnectionImpl。(ConnectionImpl.java:444)       在com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:230)       在com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:226)       at java.sql.DriverManager.getConnection(Unknown Source)       at java.sql.DriverManager.getConnection(Unknown Source)       在simple.Dbconnect.Dbconnector(Dbconnect.java:18)       在simple.mainclass.main(mainclass.java:13)

1 个答案:

答案 0 :(得分:0)

您的错误消息表明您的JDBC客户端向MySQL服务器发送的数据包大于服务器的最大数据包大小。您可以按照此stackoverflow问题的答案中的说明增加最大数据包大小:

How to change max_allowed_packet size

然而,驱动程序需要发送5 MB数据包才能创建连接,这似乎有点奇怪。但我通常使用更大的MySQL数据包大小,所以我不会注意到。请注意,MySQL数据包大小与IP数据包大小无关。