IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者
首页 / stronghearted life
IT 2010-02-23 22:25:16 / 累计浏览 1,820

(oracle)逻辑读异常(主键查询)

作者从一个异常的数据库监控现象切入:用主键查询本应是轻量级操作(预期4个左右逻辑读),实际却飙升至5301个。这篇笔记详细记录了这场“小异常”背后的排查过程。 作者首先通过查看执行计划等手段,锁定问题并非SQL本身,而是底层表结构和数据的异常。随着排查深入,发现根源在于表上存在不合适的索引和过期的统计信息,这导致优化器在看似简单的主键查询中,生成了低效的访问路径,引发了大量不必要的逻辑读。文章不仅展示了问题表象,更剖析了从发现异常到定位到索引与统计信息这个“真凶”的完整排查链条。 对于DBA和后端开发来说,这个案例是个很好的提醒:即使是基础的查询,其性能也可能被环境因素“扭曲”。作者最终通过修正索引和更新统计信息恢复了查询的正常效率,为类似问题的排查提供了实用参考。

本机暂存
IT 2009-11-08 17:07:07 / 累计浏览 4,500

(oracle)11g与10g中alter session权限差异

这篇讲的是作者在实际操作中发现的一个Oracle版本间权限差异细节:从10g升级到11g后,原本可以直接使用的 `ALTER SESSION` 命令,可能因为权限模型的变化而报错。 文章通过具体的SQL演示,在10g环境中,一个仅被授予 `CREATE SESSION` 和 `UNLIMITED TABLESPACE` 权限的用户,是能够成功执行 `ALTER SESSION SET SQL_TRACE=TRUE` 来开启会话级跟踪的。这反映了早期版本对这类“会话设置”操作权限的处理相对宽松。 然而,作者指出,到了Oracle 11g中,同样的操作可能会遭遇权限不足的错误。这是因为11g对 `ALTER SESSION` 的细粒度权限控制更加严格,某些操作(如设置SQL跟踪)需要额外的、更具体的系统权限,而不仅仅是 `CREATE SESSION`。这个差异对于进行数据库迁移、升级的应用和运维人员来说,是一个必须注意的兼容性要点,否则可能导致依赖特定会话设置的脚本或应用程序意外失败。文章的价值就在于提前预警了这个容易被忽略的“坑”,并给出了具体的权限对比视角。

本机暂存