mysql数据库插入数据很慢,咋回事

mysql数据库插入数据很慢,咋回事,第1张

如果原表很大,插入数据会非常慢,建议插入到临时表,然后用一个语句(INSERT

INTO

XXX

SELECT

*

FTOM

TMPXXX)把数据插入,这样速度会快一点,如果想更快,需要减少不必要的索引,如果大批量的插入,可以插入前删除索引,插入后重新建立。

要准确定位问题需要事实说话,光描述现象无法做到的。\x0d\x0a我建议lz这么做:\x0d\x0a1、在窗口一中执行select sid from v$mystat where rownum=1\x0d\x0a 结果中的数字是当面session的标识(设为)。\x0d\x0a2、在窗口一中执行插入 *** 作,也就是你说1000条需要20分钟的那个 *** 作。\x0d\x0a3、马上新打开一个窗口,重复执行select event,wait_class from v$session where sid=\x0d\x0a 这个查询会告诉你那个插入 *** 作的session处于什么事件,事件类型是什么。如果你发现长时间处于某个事件,那么就说明时间花在这个事件上(设为事件A)。\x0d\x0a4、搜索降低事件A耗时的方法

看这种现象,估计是SQL语句写的不够好,SQL要用绑定变量的方式,影响查询性能主要就是执行SQL过多,而且SQL写的不好,无效索引过多,第一步必须优化SQL,之后就是清理历史数据,清理无用索引,大表数据可以用分区表,还有就是tomcat的性能也需要注意,如果太卡,重启一下tomcat试试,是否有效果


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存