Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
----------<br />
243<br />
Elapsed: 00:00:00.08<br />
这 是 在 Share_pool 和 Data buffer 都 没 有 数 据 缓 冲 区 的 情 况 下 所 用 的 时 间<br />
SQL> alter system flush SHARED_POOL;<br />
System altered.<br />
清 空 Share_pool, 保 留 Data buffer<br />
SQL> select count(*) from scpass ;<br />
COUNT(*)<br />
----------<br />
243<br />
Elapsed: 00:00:00.02<br />
SQL> select count(*) from scpass ;<br />
COUNT(*)<br />
----------<br />
243<br />
Elapsed: 00:00:00.00<br />
从 两 句 SQL 的 时 间 差 上 可 以 看 出 该 SQL 的 Parse 时 间 约 为 00:00:00.02<br />
对 于 保 存 在 共 享 池 中 的 SQL 语 句 , 可 以 从 V$Sqltext、v$Sqlarea 中 查 询 到 , 对 于 编 程 者<br />
来 说 , 要 尽 量 提 高 语 句 的 重 用 率 , 减 少 语 句 的 分 析 时 间 。 一 个 设 计 的 差 的 应 用 程 序 可 以 毁 掉 整<br />
个 数 据 库 的 Share pool, 提 高 SQL 语 句 的 重 用 率 必 须 先 养 成 良 好 的 变 成 习 惯 , 尽 量 使 用 Bind<br />
变 量 。<br />
数 据 字 典 缓 冲 区 (Data Dictionary Cache)<br />
显 而 易 见 , 数 据 字 典 缓 冲 区 是 ORACLE 特 地 为 数 据 字 典 准 备 的 一 块 缓 冲 池 , 供 ORACLE<br />
内 部 使 用 , 没 有 什 么 可 以 说 的 。<br />
b、 块 缓 冲 区 高 速 缓 存 (Database Buffer Cache)<br />
这 些 缓 冲 是 对 应 所 有 数 据 文 件 中 的 一 些 被 使 用 到 的 数 据 块 。 让 他 们 能 够 在 内 存 中 进 行 操<br />
作 。 在 这 个 级 别 里 没 有 系 统 文 件 ,, 户 数 据 文 件 , 临 时 数 据 文 件 , 回 滚 段 文 件 之 分 。 也 就 是 任 何<br />
文 件 的 数 据 块 都 有 可 能 被 缓 冲 。 数 据 库 的 任 何 修 改 都 在 该 缓 冲 里 完 成 , 并 由 DBWR 进 程 将 修<br />
改 后 的 数 据 写 入 磁 盘 。<br />
这 个 缓 冲 区 的 块 基 本 上 在 两 个 不 同 的 列 表 中 管 理 。 一 个 是 块 的 “ 脏 ” 表 (Dirty List), 需 要 用 数<br />
据 库 块 的<br />
书 写 器 (DBWR) 来 写 入 , 另 外 一 个 是 不 脏 的 块 的 列 表 (Free List), 一 般 的 情 况 下 , 是 使 用 最<br />
近 最 少 使 用 (Least Recently Used,LRU) 算 法 来 管 理 。 块 缓 冲 区 高 速 缓 存 又 可 以 细 分 为 以 下 三<br />
PDF 文 件 使 用 "pdfFactory Pro" 试 用 版 本 创 建 www.fineprint.cn