mysqL update 太慢,求解决方法

mysqL update 太慢,求解决方法,第1张

更改mysql配置如下:

# Uncomment the following if you are using InnoDB tables

#innodb_data_home_dir = /var/lib/mysql/

innodb_data_file_path = ibdata1:50M:autoextend

#innodb_log_group_home_dir = /var/lib/mysql/

#innodb_log_arch_dir = /var/lib/mysql/

# You can set _buffer_pool_size up to 50 - 80 %

# of RAM but beware of setting memory usage too high

innodb_buffer_pool_size = 256M

innodb_additional_mem_pool_size = 10M

# Set _log_file_size to 25 % of buffer pool size

#innodb_log_file_size = 128M

innodb_log_buffer_size = 8M

#innodb_flush_log_at_trx_commit = 1

#innodb_lock_wait_timeout = 50

innodb_support_xa=off

用mysql-connector-odbc-5[1]15-win32msi这个驱动程序

哥们,你建主键了没?

排除了以上问题,还慢,就看看你的连接了,如果是自己写的,那么建议你找个别人写好的连接类试试。有时候代码没问题,db没问题,那么只有时连接的问题了!!

希望对你有用。

mysql使用jdbc的批量插入需要在连接Mysql的地方加上rewriteBatchedStatements=true

,也就是springdatasourceurl = jdbc:mysql://1921681544:3306/ml_testuseSSL=false&useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true

,如果不加这个的话,和自己循环插入差不多

代码写的很菜 ,$batches那么大 ,先不说 循环 10000次 ,关键的是循环一次就要查询一下数据库 ,查询了 10000 次数据库。

来 10000 次 ,自然慢 ,加上还有事物的处理 ,不慢才怪。

不关事物的事 ,代码太烂。

这个过程的含义很不明确:

update d set e=nnsn,flag='1'

where flag='0' and rownum=1;

这个where条件句与前面那个游标没有任何关系,也就是说,你前面取了2000条记录,然后把d表里flag='0' and rownum=1这一条记录改了2000多次。实际上,d表里这一条记录只可能保留最后那一次更新的值。这是在做什么?

以上就是关于mysqL update 太慢,求解决方法全部的内容,包括:mysqL update 太慢,求解决方法、java,jdbc,大量数据update更新效率很慢,哪位大神可怜可怜我吧、数据库批量更新事务速度奇慢为啥等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10194176.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存