oracle性能+sql调优

oracle性能调优是一个复杂的主题,

而sql优化只是其中的一部分, 但 Oracle SQL 调整是 Oracle 调整中最重要的领域之一

一. 外部的性能问题

CPU :CPU 资源的不足令查询变慢。

内存 :可用于 Oralce 的内存数量也会影响 SQL 的性能,特别是在数据缓冲和内存排序方面。

网络 :大量的 Net 通信令 SQL 的性能变慢。

许多新手都错误的认为应该首先调整 Oracle 数据库,而不是先确认外部资源是否足够。实际上,如果外部环境出现瓶颈,再多的 Oracle 调整都是没有帮助的。

二. row-resequencing (行的重新排序)

三. SQL 调优 Oracle 的 SQL 调优是一个复杂的主题,甚至是需要整本书来介绍 Oracle SQL 调优的细微差别。

四. 调整 Oracle 排序 当使用 create index 、 ORDER BY 或者 GROUP BY 的语句时, Oracle 数据库将会自动执行排序的操作。

五. 调整 Oracle 的竞争

以下我们单聊sql优化

一、语句方面。

1、oracle采用自下而上的解析顺序,因而能过滤掉最大记录数量的条件应放在where语句的末尾,如id=?。

2、避免使用select *。

二、索引。

1、适当的用索引,能大大提高检索效率。但索引需要空间存储及定期维护,每当有记录在表中增减或索引列被修改时, 索引本身也会被修改。

2、索引需要注意。避免在索引上使用not,使用计算,使用is null或is not null及通配符%,他们将促使oracle停用索引。

3、如果检索数量超过表中30%的记录数,则该索引没有显著的效率提高。

三、其他注意事项。

1、使用exists代替distinct。

2、使用union all(union)替换or。

3、order by 语句加在索引列,最好是主键上。

https://blog.csdn.net/qq_38789941/article/details/83744271