当前位置:首页 » 编程语言 » idea里面sql跑得慢
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

idea里面sql跑得慢

发布时间: 2023-01-21 17:03:09

A. 4.IDEA 插件加载很慢 解决方法

原因分析

IDEA的模块系统加载不出来,是由于IDEA的网络安全机制造成的,类似于windows的防火墙,IDEA误认为你的网络不安全,不给你连接,本质为公司的网络被IDEA认为不安全,具体IDEA为什么会这么认为,原因暂时我还不知道。

解决办法

打开  Setting--》Appearance & Behavior --》Syetem Setting --》Updates ,将 Use secure connection  的勾选去掉。如下图所示配置,然后重新搜索plugins,已经可以正常连网搜索了。

B. 使用IDEA开发,做单步调试速度巨慢,何解

我觉得运行慢的问题从四个方面讲吧:

1、是否给IDEA分配了足够的内存空间
2、是否对IDEA的Setting做过相关优化
3、IDEA的项目缓存如“.IntelliJIdea90”目录是否和你的项目在同一个磁盘,因为默认IDEA会放到C盘,如果你项目工程在D盘,那么创建、读取、重建索引往往是文件和读取,这里建议IDEA的安装目录、项目目录、和索引缓存目录放在同一个磁盘。
4、IDEA对IO操作比较频繁,其实可以尝试把机器硬盘升级为固态硬盘

我大致能想到这几点,欢迎大家补充,谢谢

C. IntelliJ IDEA CVS怎么那么慢

解决了吗?我这也遇到这样的问题了巨慢~~甚至我创建的项目import到服务器都慢的没反应了

最近我解决了,看看能不能帮到别人,博客:

网页链接

D. 关于idea运行很慢的解决办法

在实际开发中,随着project的增大,idea使用过程中逐渐出现了各种各样的运行慢问题。博主就针对这些问题做了一个综合,方便读者各自对症下药。

引起idea慢的原因多种多样,我们需要有步骤的慢慢排查。

E. 执行计划之误区,为什么cost很小,sql却跑得很慢

理论上是 cost值越大,SQL的执行计划就不好.

但是还有一个前提,就是你的表的分析数据要正确。
cost 值的计算,是根据数据库表的统计信息来计算的。
例如 你有一个 一百万行的表 ABC。 在 A 列上面有一个索引。


SELECT SUM(B) FROM ABC WHERE A = 100
在数据库没有表/索引的 相关统计信息的情况下, 这个 cost 确实是估计出来的一个大概的值。偏差可能 与这个表中的 A=100 的数量有多少相关。
比如 100万条记录里面, A=100 的数据只有一条 / A=100 的数据只有 十万条。 执行的时间可是差很多的。
但是如果表/索引 没有被分析过, 数据库对于
SELECT SUM(B) FROM ABC WHERE A = 100
还是
SELECT SUM(B) FROM ABC WHERE A = 1000
查询的计划,是一样的。

但是如果你的 表/索引, 是已经分析过了的, 那么 cost 所反映出来的值, 可能更精确一些。
因为在分析的时候,就能知道 A=100 的数据只有一条 还是有 十万条。
数据库可以根据需要,选择最佳的查询方案来进行处理。
假如 那一百万条数据中, A=100 的数据只有一条 ,而 A=1000的数据,有 八十万条。
那么很可能
SELECT SUM(B) FROM ABC WHERE A = 100
使用索引的查询计划


SELECT SUM(B) FROM ABC WHERE A = 1000
使用全表扫描的查询计划。

F. idea的open目录超级慢的原因及解决方法

一段时间以来,idea打开目录都超级慢,可是打开以后确没有什么异常的问题,只是打开的时候慢,有时候需要20秒左右。网络了一下竟然不少人有类似的问题,原因是在open folder的时候,idea调用了另外两个exe文件,这样的调用会被杀毒软件等监控,进行扫描,所以造成速度非常慢得的问题。
解决:
将windows自带的安全防御关闭,并且将项目目录和idea的目录键入360或者腾讯管家的信任区。这样就能解决了。这个问题困扰我很久。终于解决,记录一下。

G. oracle 9i数据库白天跑的很正常,一到晚上就出现执行sql缓慢超时的情况,sql就是一般的插入和查询语句。

晚上那些个自动执行的job就起来了,不建议普通用户占用晚上的空间时间。
你们每天在用的数据都是靠晚上运行的batch跑出来的

H. 如何解决SQL Server查询速度缓慢的问题

1.查询的模糊匹配
尽量避免在一个复杂查询里面使用 LIKE '%parm1%'——红色标识位置的百分号会导致相关列的索引无法使用,最好不要用.
解决办法:

其实只需要对该脚本略做改进,查询速度便会提高近百倍。改进方法如下:
a、修改前台程序——把查询条件的供应商名称一栏由原来的文本输入改为下拉列表,用户模糊输入供应商名称时,直接在前台就帮忙定位到具体的供应商,这样在调用后台程序时,这列就可以直接用等于来关联了。
b、直接修改后台——根据输入条件,先查出符合条件的供应商,并把相关记录保存在一个临时表里头,然后再用临时表去做复杂关联
2.索引问题
在做性能跟踪分析过程中,经常发现有不少后台程序的性能问题是因为缺少合适索引造成的,有些表甚至一个索引都没有。这种情况往往都是因为在设计表时,没去定义索引,而开发初期,由于表记录很少,索引创建与否,可能对性能没啥影响,开发人员因此也未多加重视。然一旦程序发布到生产环境,随着时间的推移,表记录越来越多
这时缺少索引,对性能的影响便会越来越大了。
这个问题需要数据库设计人员和开发人员共同关注
法则:不要在建立的索引的数据列上进行下列操作:
◆避免对索引字段进行计算、函数、类型转换
◆避免在索引字段上使用not,<>,!=
◆避免在索引列上使用空值、IS NULL和IS NOT NULL
3.复杂操作
部分UPDATE、SELECT 语句写得很复杂(经常嵌套多级子查询)——可以考虑适当拆成几步,先生成一些临时数据表,再进行关联操作
4.update
同一个表的修改在一个过程里出现好几十次,如:
update table1
set col1=...
where col2=...;
update table1
set col1=...
where col2=...
......
象这类脚本其实可以很简单就整合在一个UPDATE语句来完成(前些时候在协助xxx项目做性能问题分析时就发现存在这种情况)
5.在可以使用UNION ALL的语句里,使用了UNION
UNION 因为会将各查询子集的记录做比较,故比起UNIONALL ,通常速度都会慢上许多。一般来说,如果使用UNION ALL能满足要求的话,务必使用UNION ALL。还有一种情况大家可能会忽略掉,就是虽然要求几个子集的并集需要过滤掉重复记录,但由于脚本的特殊性,不可能存在重复记录,这时便应该使用UNION ALL,如xx模块的某个查询程序就曾经存在这种情况,见,由于语句的特殊性,在这个脚本中几个子集的记录绝对不可能重复,故可以改用UNION ALL)
6.在WHERE 语句中,尽量避免对索引字段进行计算操作
这个常识相信绝大部分开发人员都应该知道,但仍有不少人这么使用,我想其中一个最主要的原因可能是为了编写写简单而损害了性能,那就不可取了
9月份在对XX系统做性能分析时发现,有大量的后台程序存在类似用法,如:
......
where trunc(create_date)=trunc(:date1)
虽然已对create_date 字段建了索引,但由于加了TRUNC,使得索引无法用上。此处正确的写法应该是
where create_date>=trunc(:date1) andcreate_date
或者是
where create_date between trunc(:date1) andtrunc(:date1)+1-1/(24*60*60)
注意:因between 的范围是个闭区间(greater than or equal to low value and less than or equal to highvalue.),
故严格意义上应该再减去一个趋于0的小数,这里暂且设置成减去1秒(1/(24*60*60)),如果不要求这么精确的话,可以略掉这步。
7.对Where 语句的法则
7.1避免在WHERE子句中使用in,not in,or 或者having。
可以使用 exist 和not exist代替 in和not in。
可以使用表链接代替 exist。Having可以用where代替,如果无法代替可以分两步处理。
例子
SELECT * FROM ORDERS WHERE CUSTOMER_NAME NOT IN
(SELECT CUSTOMER_NAME FROM CUSTOMER)
优化
SELECT * FROM ORDERS WHERE CUSTOMER_NAME not exist
(SELECT CUSTOMER_NAME FROM CUSTOMER)
7.2 不要以字符格式声明数字,要以数字格式声明字符值。(日期同样)否则会使索引无效,产生全表扫描。
例子使用:
SELECT emp.ename, emp.jobFROM emp WHERE emp.empno = 7369;
不要使用:SELECT emp.ename,emp.job FROM emp WHERE emp.empno = ‘7369’
8.对Select语句的法则
在应用程序、包和过程中限制使用select * from table这种方式。看下面例子
使用SELECT empno,ename,categoryFROM emp WHERE empno = '7369‘
而不要使用SELECT * FROM empWHERE empno = '7369'
9. 排序
避免使用耗费资源的操作,带有DISTINCT,UNION,MINUS,INTERSECT,ORDER BY的SQL语句会启动SQL引擎 执行,耗费资源的排序(SORT)功能. DISTINCT需要一次排序操作, 而其他的至少需要执行两次排序
10.临时表
慎重使用临时表可以极大的提高系统性能
所谓的优化就是WHERE子句利用了索引,不可优化即发生了表扫描或额外开销。经验显示,SQL Server性能的最大改进得益于逻辑的数据库设计、索引设计和查询设计方面。反过来说,最大的性能问题常常是由其中这些相同方面中的不足引起的。其实SQL优化的实质就是在结果正确的前提下,用优化器可以识别的语句,充份利用索引,减少表扫描的I/O次数,尽量避免表搜索的发生。
其实SQL的性能优化是一个复杂的过程,上述这些只是在应用层次的一种体现,深入研究还会涉及数据库层的资源配置、网络层的流量控制以及操作系统层的总体设计。

I. 装完SQL SERVER后开机变得很慢,怎么解决

在sql server安装之后就算是不运行这种管理器的主程序,也会在操作系统之中安装一些服务,这种服务就是sql server的数据库服务。
而这种服务一旦开启在操作系统开机的时候系统就是会默认启动多个sqlserver.exe进程。
如果操作系统是windows7操作系统的话,那么其启动的进程大约是在四个左右。
每一个进程都是会占用超过30MB的内存空间,在某些情况之下占用的内存资源还是会更多。
这就是安装了sql server之后操作系统变得十分卡顿的原因。
如果在最开始开机的时候就是关闭这些应用程序的话就是会发现系统立马就是会快速很多。

J. sql语句跑不出来是什么原因

如果你觉得关联没问题,那就是你的数据有问题
看看你用到的几个字段都是什么类型,是数字还是字符,如果字符的话看是varchar还是char

这个我怕你查的慢,我你好了,查收,浏览器右上角