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
全部博文(166)
发布时间: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来获取具体值,可以用下面的函数获取:......