Flutter mysql1 数据包乱序

Flutter mysql1 got packets out of order

我在设置与我的 VPS 和 flutter 库 mysql1 的连接时遇到了一些麻烦。我在执行查询时收到此错误 Unhandled Exception: Error 1156 (08S01): Got packets out of order

MySQL服务器版本:8.0.28

这是我的服务,我在其中执行与我的数据库的连接。

var settings = ConnectionSettings(
    host: 'MY_ADDRESS', 
    port: 3306,
    user: 'root',
    password: 'MY_PASSWORD',
    db: 'MY_DATABASE'
);
  
Future connect() async {
    return await MySqlConnection.connect(settings);
}

然后我尝试用另一种方法检索用户信息:

var connection = await mysqlService.connect();

var res = await connection.query('select name from users');

await connection.close();

问题出在生成错误的 connection.query 函数中:

[VERBOSE-2:ui_dart_state.cc(209)] Unhandled Exception: Error 1156 (08S01): Got packets out of order
#0      Handler.checkResponse
package:mysql1/…/handlers/handler.dart:77
#1      QueryStreamHandler.processResponse
package:mysql1/…/query/query_stream_handler.dart:50
#2      ReqRespConnection._handleData
package:mysql1/src/single_connection.dart:349
#3      ReqRespConnection._handleHeader
package:mysql1/src/single_connection.dart:318
<asynchronous suspension>
#4      ReqRespConnection._readPacket
package:mysql1/src/single_connection.dart:303
<asynchronous suspension>

我不确定这是我 VPS 上的数据库问题还是其他问题。

这个包似乎有问题 MySQL 8.

尝试使用mysql_client,这个对我有帮助。

https://pub.dev/packages/mysql_client