当mysql大批量插入数据的时候就会变的非常慢, mysql提高insert into 插入速度的方法有三种:
第一种插入提速方法:
如果数据库中的数据已经很多(几百万条), 那么可以 加大mysql配置中的 bulk_insert_buffer_size,这个参数默认为8M
bulk_insert_buffer_size=100M
第二种mysql插入提速方法:
改写所有 insert into 语句为 insert delayed into
这个insert delayed不同之处在于:立即返回结果,后台进行处理插入。
第三个方法: rewriteBatchedStatements=true
"jdbcUrl": "jdbc:mysql://192.168.56.88:3306/testdb?useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true",
rewriteBatchedStatements=true是如何提升效率的呢?
It does so by rewriting of prepared statements for INSERT into multi-value inserts when executeBatch() (Source)。这句话的意思是,当每次使用executeBatch() 的时候,不是发送n条insert到mysql。而是发送1条insert语句和多个值到mysql。
版权声明:本文为博主原创文章,未经博主允许不得转载。
MYSQL