5

私は大きな問題を抱えています!私がこれを行うとき:

 String query = "SELECT * FROM utente WHERE confermato=1 and Username='" + username
            + "' AND Password='" + password + "'";

        Class.forName("com.mysql.jdbc.Driver").newInstance();
        Connection con = DriverManager.getConnection("ind_server/nome_db","user","password");

Eclipse で次のエラーが表示されます。

Packet for query is too large (4739923 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.

まず、このクエリは本当に大きいのでしょうか? -.- 後: ssh でどのコマンドを書く必要がありますか? これは、私がこのようなことをするのは初めてです !前もって感謝します!

サーバーのルート権限がありません!

私はこれを使ってみました:

 mysql>set global max_allowed_packet=32*1024*1024;

しかし、それは私にこのエラーを与えます:エラー1227(42000):アクセスが拒否されました。この操作にはSUPER権限が必要です

編集

max_allowed_pa​​cket 変数を 32MB に変更しました。サーバーを停止して再起動しましたが、Eclipseで同じエラーが発生しました!

私に何ができる?

4

9 に答える 9

1

クエリのパケットが大きすぎます (2285643 > 1048576)。max_allowed_pa​​cket' 変数を設定することにより、サーバーでこの値を変更できます。

SOLUTIONS:-
You can see it's current value in mysql like this:

SHOW VARIABLES LIKE 'max_allowed_packet'

You can try to change it like this, but it's unlikely this will work on shared hosting:

SET GLOBAL max_allowed_packet=16777216;
and restart mysql service..
于 2015-03-23T10:56:15.087 に答える
0

しかし、それは私にこのエラーを与えます:エラー1227(42000):アクセスが拒否されました。この操作にはSUPER権限が必要です >

sudo set global max_allowed_pa​​cket=32*1024*1024 を試してください

于 2012-12-07T09:04:21.053 に答える
0

私はこの問題を解決し、mysql-connector のバージョンを変更して解決しました。pom の mysql-connector のバージョンが高すぎる可能性があります。

スタック印刷:

Thu Nov 03 18:24:03 CST 2016 WARN: Invalid value 'null' for server variable named 'auto_increment_increment', falling back to sane default of '1'.
Exception in thread "main" com.mysql.jdbc.PacketTooBigException: Packet for query is too large (44 > -1). You can change this value on the server by setting the max_allowed_packet' variable.
    at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:577)
    at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:417)
    at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:3105)
    at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:2336)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2729)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2549)
    at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1861)
    at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1962)
    at com.sparkproject.jdbc.JDBCHelper.main(JDBCHelper.java:382)
于 2016-11-03T10:22:20.953 に答える
-1

データベースの大きさはわかりませんが、クエリはかなり具体的です。

max_allowed_pa​​cket については、次の投稿を確認してください。

max_allowed_pa​​cket mysql 変数を確認して設定する方法

于 2012-12-07T08:32:20.297 に答える