跳过正文

SQL优化

记一次由 SQL 执行计划异常引发的高 CPU 与 cache buffers chains 竞争故障处理

一次 Oracle SQL 执行计划异常故障复盘:多个 w3wp.exe 会话集中执行 SQL_ID 4ja6bgs1su89c,child 21 选择低选择性 DEALID 索引,导致约 29.7 亿逻辑读、CPU 接近 100%、latch free 与 cache buffers chains 竞争。最终通过固定好计划、清理坏游标、创建复合索引并收集统计信息恢复稳定。

记一次 1000+ 每秒 UPDATE 引发的 Redo 风暴:AWR 定位 log file switch checkpoint incomplete

一次 Oracle Redo 风暴处理实战:生产库磁盘使用率超过 90%,日志切换从每小时十几次飙升到数百次,AWR 显示 log file switch checkpoint incomplete 占 DB time 约 41%,最终定位 SQL_ID 0vq0s6rm8fawn 每小时执行 376 万次,约 1000+ 次/秒 UPDATE。

Oracle 标量子查询优化实战:从 573s 到 98s 的 SQL 改写案例

一次 Oracle SQL 优化实战:EBS 请求执行 10 多分钟,原 SQL_ID 为 gcppkx5y05x3k。通过分析执行计划发现多个标量子查询重复扫描 MTL_LOT_NUMBERS 和 CUX_OE_MTL_RESERVATIONS 等大表,最终将重复标量子查询改写为 LEFT JOIN,并补充 VAT_HEADER_ID、PROPERTY_TYPE 等索引,执行时间从 573s 降到 98s。