【问题标题】:Limit MySQL Batch size in jConnector在 jConnector 中限制 MySQL Batch 大小
【发布时间】:2019-04-17 10:15:06
【问题描述】:

我有一个 JDBC 应用程序,要将插入语句转换为批处理,我在 MySQL 连接字符串中使用了rewriteBatchedStatements=true,但我还需要将批处理大小限制为 100。我该怎么做?

【问题讨论】:

    标签: java mysql database jdbc


    【解决方案1】:

    在服务器端max_allowed_packet 将限制INSERTrewriteBatchedStatements 拼凑在一起的数量。根据5.1.8 Server System Variables

    一个数据包或任何生成/中间字符串的最大大小,或 mysql_stmt_send_long_data() C API 函数发送的任何参数。默认为 64MB。

    如果您需要更细粒度的控制,您必须使用 JDBC,例如在每 N 行之后调用 executeBatch()

    【讨论】:

      【解决方案2】:

      您可以每尝试插入 100 行提交当前事务(或刷新会话)。

      【讨论】:

        猜你喜欢
        • 2023-03-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-12
        相关资源
        最近更新 更多