mysql加速插入的三种方式

当mysql大批量插入数据的时候就会变的非常慢, mysql提高insert into 插入速度的方法有三种:https://www.cndba.cn/hbhe0316/article/22190https://www.cndba.cn/hbhe0316/article/22190

第一种插入提速方法:
如果数据库中的数据已经很多(几百万条), 那么可以 加大mysql配置中的 bulk_insert_buffer_size,这个参数默认为8M

bulk_insert_buffer_size=100Mhttps://www.cndba.cn/hbhe0316/article/22190https://www.cndba.cn/hbhe0316/article/22190

第二种mysql插入提速方法:
改写所有 insert into 语句为 insert delayed intohttps://www.cndba.cn/hbhe0316/article/22190https://www.cndba.cn/hbhe0316/article/22190

这个insert delayed不同之处在于:立即返回结果,后台进行处理插入。https://www.cndba.cn/hbhe0316/article/22190

第三个方法: rewriteBatchedStatements=truehttps://www.cndba.cn/hbhe0316/article/22190

"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。https://www.cndba.cn/hbhe0316/article/22190https://www.cndba.cn/hbhe0316/article/22190

版权声明:本文为博主原创文章,未经博主允许不得转载。

MYSQL

你可能感兴趣的:(数据库,mysql,java,mybatis,python)