嘿,我试图将大约600000个令牌包含到我的MySQL数据库表中.我正在使用的引擎是InnoDB.更新过程将永远持续下去:(.所以我最好的猜测是我在代码中完全遗漏了一些东西,而我所做的只是简单的愚蠢.
也许有人对我的表现有什么看法有一个自发的想法:
这是我的代码:
public void writeTokens(CollectionsqlException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
非常感谢!
最佳答案
我没有针对您的Java特定答案,而是将整个shebang包装在一个事务中.如果不这样做,则MysqL(在针对InnoDB写入时)启动并为每个更新语句提交一个新事务.
@H_404_22@只需在开始调用之前执行START TRANSACTION,并在完成所有更新/插入后执行COMMIT.我还认为MysqL推迟了索引更新,直到事务结束,如果你要更新索引字段,这应该有助于提高性能.