About me:Oracle ACE pro,optimistic,passionate and harmonious. Focus on ORACLE,MySQL and other database programming,peformance tuning,db design, j2ee,Linux/AIX,Architecture tech,etc
全部博文(169)
发布时间:2023-05-08 15:26:58
优化器不是完美的,它可能因为各种原因,未走高效的执行计划。如优化器本身缺陷:子查询里有OR走FILTER,或遇到BUG等,这时候可以通过HINTS来控制优化器生成目标执行计划。......【阅读全文】
发布时间:2023-05-07 22:39:43
Oracle 的并行执行是一种分而治之的方法. 执行一个 SQL 时, 分配多个并行进程同时执行数据扫描,连接以及聚合等操作, 使用更多的资源(CPU,IO等), 得到更快的 SQL 响应时间。并行执行是充分利用硬件资源,处理大量数据时的核心技术。......【阅读全文】
发布时间:2023-05-07 22:07:24
1)对于分区表的索引有GLOBAL分区索引,LOCAL分区索引(前缀和非前缀)、普通索引。
2)尽可能建立LOCAL分区索引,对于GLOBAL分区索引和普通索引,对分区进行truncate,exchange等操作时会失效,如果对分区进行truncate,exchange操作,需要加上update global indexes以避免非LOCAL分区索引失效。......【阅读全文】
发布时间:2023-05-07 21:58:51
很多时候,开发喜欢直接在SQL里使用HINTS,这样限制了SQL可能走更好的执行计划,修改起来也麻烦,还需要改SQL,那么有没有什么方法能够在不改SQL语句的情况下,改变带HINTS的SQL执行计划呢,答案是有的。可以使用IGNORE_OPTIM_EMBEDDED_HINTS配合SQL PROFILE来实现。......【阅读全文】
发布时间:2023-05-06 16:37:49
在做SQL性能优化时,有时候需要查看low_value,high_value的具体值,因为他们是raw类型,可以通过dbms_stats.convert_raw_value来获取具体值,可以用下面的函数获取:......【阅读全文】