Microsoft Word - 高级复制 - Advanced Replication初步研究.doc
|
|
- 链惠 农
- 7 years ago
- Views:
Transcription
1 关 于 Advanced Replication 的 初 步 研 究 Author:Kamus, yangtingkun, eygle Date:2004 年 3 月 一 概 述...1 二 MR 的 概 念 和 构 架...3 三 冲 突 解 决 方 案 的 概 念 和 构 架...9 四 冲 突 解 决 机 制 的 研 究...10 五 解 决 数 据 冲 突 -dbms_rectifier_diff 包...18 六 MVR 的 概 念 和 构 架...22 附 录 一 多 主 体 复 制 站 点 的 配 置 步 骤...34 附 录 二 物 化 视 图 复 制 站 点 的 配 置 步 骤...38 附 录 三 一 些 高 级 复 制 相 关 的 包 使 用 方 法...46 附 录 四 FAQ...50 一 概 述 1. Replication 使 用 分 布 式 数 据 库 技 术 在 多 个 站 点 之 间 共 享 数 据 2. Replicated Database 和 Distributed Database 并 不 一 样, 在 分 布 式 数 据 库 系 统 中 数 据 在 多 个 站 点 同 时 有 效, 但 是 一 个 表 只 会 存 在 于 一 个 站 点 中, 而 对 于 Replication 来 说 相 同 的 数 据 将 同 时 存 在 于 多 个 站 点 中 3. 使 用 replication 的 原 因 : 1) Availability: 也 就 是 提 供 了 优 秀 的 failover 保 护 2) Performance: 由 于 有 多 个 server, 所 以 可 以 将 用 户 业 务 分 布 在 不 同 的 server 上 3) Disconnected computing: 实 体 化 视 图 允 许 用 户 在 和 master 断 开 后 使 用 数 据 库 的 子 集, 在 重 新 连 接 上 master 之 后 再 进 行 两 者 的 同 步 4) Network load reduction: 由 于 有 多 个 server, 所 以 可 以 减 少 master 的 网 络 请 求 5) Mass deployment: 通 过 变 量 产 生 自 定 义 的 实 体 化 视 图 以 满 足 多 种 需 求 4. 在 不 同 的 Oracle 发 行 版 本 之 间 以 及 不 同 操 作 系 统 的 Oracle 之 间 都 可 以 使 用 Advanced
2 Replication 5. Replication 中 的 几 个 概 念 : 1) replication object: 复 制 对 象, 指 需 要 作 复 制 的 对 象 (object), 包 括 表, 索 引, 存 储 过 程 等 等 复 制 对 象 的 更 新 遵 循 事 务 一 致 性 规 则 (transactionally consistent manner) 2) replication groups: 复 制 组, 是 复 制 对 象 (replication object) 的 集 合 称 为 group, oracle 以 replication group 的 形 式 来 管 理 复 制 一 个 组 可 以 包 含 多 个 模 式 的 object, 一 个 模 式 也 可 以 有 多 个 组 中 的 object, 但 是 每 个 replication object 都 只 能 属 于 一 个 replication group 3) replication sites: 复 制 站 点, 包 含 两 种 类 型, 主 体 站 点 (master sites) 和 实 体 化 视 图 站 点 (materialized view sites) 一 个 site 可 以 担 任 一 个 replication group 中 的 mater site 同 时 又 担 任 另 外 一 个 replication group 中 的 materialized view site, 注 意 必 须 是 另 外 一 个 组, 而 不 能 是 同 一 个 replication group 4) scheduled links: 一 个 数 据 库 链 接 (database link), 包 含 一 个 由 用 户 定 义 的 计 划, 来 将 需 要 更 新 的 事 务 推 到 其 它 的 master sites, 当 创 建 scheduled link 的 时 候,oracle 将 在 本 地 任 务 队 列 中 创 建 一 个 任 务 5) master definition site: 主 体 定 义 站 点, 大 部 分 的 高 级 复 制 配 置 都 需 要 在 一 个 站 点 上 作, 这 个 站 点 就 是 maserdef site 6. Replication 环 境 的 几 种 类 型 1) Multimaster Replication 2) Materialized View Replication( 也 可 以 称 为 是 Single Master Replication) 3) Multimaster and Materialized View Hybrid Configurations Multimaster Replication 和 Materialized View Replication 的 区 别 在 于 : 前 者 必 须 是 全 表 复 制 而 后 者 可 以 是 master 表 的 一 部 分 前 者 允 许 在 每 一 个 transaction 之 后 都 进 行 复 制, 而 后 者 是 属 于 批 处 理 复 制 两 者 都 使 用 scheduled links 进 行 数 据 同 步 操 作 Materialized View Replication 中 的 materialized view 可 能 有 以 下 几 种 类 型 : 1) Read-Only Materialized Views: 只 读 的 实 体 化 视 图 2) Updatable Materialized Views: 允 许 更 新, 同 时 允 许 将 更 新 复 制 到 master site 3) Writeable Materialized Views: 允 许 更 新, 但 是 每 次 refresh 的 时 候, 更 新 都 会 丢 失 7. 介 绍 Multimaster Replication 中 的 复 制 方 式 1) Asynchronous replication 在 一 个 master 上 发 生 的 变 化 将 在 推 后 的 时 间 内 更 新 到 其 他 的 master 上 2) Synchronous replication 在 一 个 master 上 发 生 的 变 化 将 立 刻 更 新 到 其 他 的 master 上 3) Procedural replication 必 须 给 每 个 site 上 的 包 都 生 成 一 个 wrapper, 所 有 的 数 据 变 化 应 该 通 过 包 中 的 存 储 过 程 完 成, 当 某 个 master 上 的 procedure 被 调 用,wapper 将 保 证 其 他 site 中 的 存 储 过 程 也 被 调 用 ( 同 步 或 者 不 同 步 ) 将 大 量 的 数 据 操 作 放 到 一 个 procedure 中,
3 然 后 对 于 procedure 的 调 用 将 被 同 步, 用 处 在 于 在 于 有 大 数 据 量 操 作 的 时 候 可 以 减 少 网 络 负 载 二 MR 的 概 念 和 构 架 MR 是 Master Replication, 也 就 是 主 体 站 点 复 制 的 概 念, 是 高 级 复 制 区 别 于 普 通 复 制 的 一 个 重 要 的 功 能 本 章 节 对 于 MR 中 出 现 的 种 种 概 念 作 详 细 解 释 MR 分 为 single master 和 multi master 两 种 single master 指 一 个 master site 支 持 多 个 materialized view site, 而 multi master 则 包 含 多 个 master site Multimaster Replication 也 被 称 为 peer-to-peer 或 者 n-way replication, 任 何 一 个 master 上 发 生 的 变 化 都 将 被 送 到 其 它 的 master 上 1. 为 什 么 使 用 Multimaster Replication Failover: 当 主 数 据 库 发 生 问 题 的 时 候, 可 以 通 过 配 置 Oracle Net 来 实 现 automatic connect-time failover, 需 要 将 客 户 端 的 tnsnames.ora 中 的 FAILOVER_MODE 参 数 设 置 为 ON 同 时 在 主 数 据 库 正 常 的 时 候, 其 它 的 master site 仍 然 可 以 作 为 一 个 具 有 完 全 功 能 的 数 据 库 来 支 持 其 它 业 务, 比 如 报 表 等 Load Balancing:: 提 供 读 动 态 平 衡 以 及 更 本 地 化 的 数 据 存 取 2. 比 较 RAC(Oracle Real Application Clusters) 和 Advanced Replication Load Balancing:: 高 级 复 制 提 供 读 动 态 平 衡, 而 RAC 则 提 供 读 写 动 态 平 衡 因 为 每 一 次 写 操 作 都 会 在 所 有 的 replication site 上 体 现, 所 以 高 级 复 制 不 能 提 供 写 动 态 平 衡 Survivability:: 高 级 复 制 提 供 更 加 强 有 力 的 灾 难 恢 复 功 能, 因 为 高 级 复 制 环 境 中 的 各 个 site 可 以 位 于 物 理 上 的 不 同 地 点, 而 RAC 因 为 使 用 的 是 磁 盘 阵 列 或 其 他 类 型 的 并 行 系 统, 所 以 通 常 在 同 一 个 物 理 地 点 Interoperability: 高 级 复 制 可 以 在 不 同 平 台 和 操 作 系 统 的 Oracle 之 间 实 现, 而 RAC 环 境 则 必 须 运 行 在 相 同 的 平 台 上 3. Multimaster Replication Process Asynchronous Replication: 说 明 : 使 用 非 同 步 复 制 能 够 减 少 网 络 资 源 和 硬 件 资 源 的 消 耗, 但 是 不 同 的 master sites 之 间 会 有 一 段 时 间 不 同 步, 并 且 可 能 会 造 成 数 据 冲 突 以 下 描 述 非 同 步 复 制 的 过 程 : 1) 用 户 执 行 DML 操 作 或 者 执 行 replicated procedure 的 wrapper, 当 一 个 table 被 设 定 为 需 要 复 制, 那 么 对 于 此 表 的 任 何 DML 操 作 都 会 被 捕 获 并 且 复 制 到 其 他 的 master site 对 于 每 一 行 被 插 入, 更 新 或 者 删 除 的 数 据 都 将 由 一 个 内 部 触 发 器 来 创 建 一 个 deferred remote procedure call (RPC) 并 且 放 在 deferred transaction queue 中, 如 果 一 个 存 储 过 程 被 设 置 为 需 要 复 制 并 且 它 的 wrapper 被 执 行, 则 这 个 procedure call 被 放 置 在 transaction queue 中 由 于 内 部 触 发 器 是 由 Oracle 本 身 内 部 维 护 的, 所 以 可 以 以 最 小 的 系 统 资 源 消 耗 来 很 快 地 获 取 需 要 复 制 的 对 象 的 变 化
4 2) deferred transaction queue 中 保 存 着 所 有 的 deferred RPCs 每 个 site 都 有 一 个 事 务 队 列, 这 个 队 列 可 以 被 多 个 replication group 共 用 3) 在 指 定 的 间 隔 之 后 或 者 被 手 工 调 用, 事 务 将 被 传 递 到 其 他 的 site, 每 个 site 都 可 能 有 不 同 的 间 隔 4) 事 务 在 这 些 site 上 被 应 用, 如 果 出 错 该 事 务 将 被 放 置 到 一 个 错 误 队 列 中, 以 备 DBA 检 查 处 理, 如 果 出 现 数 据 冲 突, 冲 突 解 决 方 法 将 被 调 用, 如 果 冲 突 无 法 解 决 那 么 将 被 记 录 在 错 误 队 列 中 5) 当 事 务 在 所 有 的 remote master sites 上 被 成 功 执 行 之 后, 并 不 会 从 源 site 的 事 务 队 列 中 立 刻 删 除, 删 除 工 作 将 由 另 外 的 purge job 来 执 行, 此 job 的 执 行 间 隔 可 以 由 用 户 来 定 义 Synchronous Replication: 说 明 : 同 步 复 制 始 终 在 同 一 个 transaction 中 完 成, 如 果 整 个 环 境 中 的 任 何 一 个 site 没 有 成 功 执 行 事 务, 那 么 整 个 transaction 将 被 回 滚, 包 括 源 site 这 就 保 证 了 数 据 一 致 性 以 下 描 述 同 步 复 制 的 过 程 : 1) 用 户 执 行 DML 操 作 或 者 执 行 replicated procedure 的 wrapper, 操 作 被 内 部 触 发 器 立 刻 捕 获 2) 事 务 被 传 递 到 其 他 site 并 且 立 刻 执 行, 任 何 一 个 site 出 错, 就 回 滚 整 个 事 务 4. 冲 突 解 决 方 案 的 概 念 冲 突 的 类 型 : 更 新 冲 突, 唯 一 性 冲 突, 删 除 冲 突 当 发 生 冲 突 的 时 候, 冲 突 解 决 方 法 将 被 调 用 以 解 决 冲 突, 如 果 无 法 解 决, 则 被 记 录 到 目 标 站 点 的 错 误 队 列 中 记 录 到 错 误 队 列 中 的 冲 突 只 能 由 数 据 库 管 理 员 手 动 解 决 为 了 实 现 冲 突 解 决 方 案, 可 能 会 需 要 修 改 表 结 构, 比 如 如 果 使 用 最 新 时 间 戳 的 解 决 方 案, 那 么 就 应 该 在 表 中 添 加 一 个 timestamp 列 5. 配 置 高 级 复 制 的 工 具 1) 图 形 界 面 :Oracle Enterprise Manager 提 供 了 一 个 友 好 的 GUI 界 面 用 以 配 置 高 级 复 制 2) 命 令 行 方 式 :Oracle 提 供 了 一 套 replication management application programming interface (API) 来 支 持 用 户 编 写 自 定 义 的 脚 本 用 以 配 置 高 级 复 制, 这 些 API 是 一 系 列 的 PLSQL packages 实 际 上 GUI 界 面 的 高 级 配 置 工 具 也 是 调 用 这 些 API 来 完 成 配 置 的 注 意 点 : 在 高 级 复 制 环 境 中 的 对 于 需 要 复 制 的 对 象 作 任 何 DDL 操 作, 都 应 该 使 用 高 级 复 制 配 置 工 具 来 作, 比 如 利 用 DBMS_REPCAT 包 中 的 相 应 存 储 过 程 在 有 些 场 合 下 也 可 以 用 导 出 导 入 (EXPIMP) 来 创 建 复 制 对 象 在 SQL*PLUS 中 直 接 执 行 的 任 何 DDL 操 作 都 不 会 被 复 制 到 其 它 的 site 上 6. 高 级 复 制 中 的 几 个 角 色 Replication Administrator: 默 认 名 称 是 repadmin, 也 可 以 修 改 Propagator: 一 个 高 级 复 制 环 境 中 可 能 有 多 个 RA 来 管 理 不 同 的 schema, 但 是 只 能 有 一 个 propagator 将 延 迟 处 理 事 务 队 列 中 的 事 务 传 递 到 目 标 站 点 Receiver : 负 责 接 收 和 处 理 从 propagator 处 传 来 的 延 迟 处 理 事 务 可 以 通 过
5 DBMS_REPCAT_ADMIN 包 中 REGISTER_USER_REPGROUP 存 储 过 程 来 注 册 一 个 receiver 7. Database Links 数 据 库 链 接 在 高 级 复 制 环 境 中 提 供 了 数 据 传 送 的 通 道, 在 一 个 MMR 环 境 中, 如 果 有 N 个 Master Site, 就 会 有 N-1 个 数 据 库 链 接 在 MVR 环 境 中, 则 只 需 要 从 实 体 化 视 图 站 点 上 到 主 站 点 的 数 据 库 链 接 如 果 使 用 设 置 向 导 来 创 建 dblink, 则 会 在 USING 后 面 使 用 连 接 描 述 字 串, 而 不 是 连 接 服 务 名, 这 样 在 对 方 数 据 库 发 生 变 化 的 时 候, 就 必 须 删 除 重 建 现 有 的 dblink, 所 以 我 们 应 该 手 动 设 定 dnlink, 从 而 在 USING 后 面 使 用 连 接 服 务 名 这 样 即 使 对 方 数 据 库 改 变, 我 们 也 只 需 要 修 改 tnsnames.ora 中 的 配 置 即 可, 而 不 需 要 重 建 dblink 8. 可 以 进 行 复 制 的 对 象 Tables 当 一 个 对 象 被 复 制 到 目 标 站 点 上 时, 复 制 支 持 不 会 自 动 生 成 利 用 这 个 特 点 可 以 快 速 地 发 布 一 个 标 准 的 数 据 库 环 境 到 另 外 的 站 点 上 Indexes 作 为 约 束 的 索 引, 当 表 在 主 站 点 上 被 创 建 的 时 候, 会 自 动 在 复 制 站 点 上 创 建, 但 是 对 于 提 高 性 能 的 索 引 则 不 会 被 自 动 创 建 而 必 须 手 动 指 定 对 于 索 引 被 复 制 到 目 标 站 点 之 后, 等 同 于 本 地 的 索 引, 不 需 要 再 添 加 复 制 支 持 Packages and Package Bodies 存 储 过 程 中 的 所 有 参 数 必 须 是 IN 的,OUT 和 INOUT 不 被 支 持 存 储 过 程 和 函 数 也 必 须 定 义 在 包 中, 单 独 的 存 储 过 程 和 函 数 无 法 进 行 复 制 Procedures and Functions 虽 然 单 独 的 存 储 过 程 和 函 数 无 法 进 行 复 制, 但 是 仍 然 可 以 在 高 级 复 制 环 境 中 利 用 复 制 来 将 单 独 的 存 储 过 程 和 函 数 发 布 到 远 程 的 站 点 上, 就 像 在 远 程 站 点 本 地 创 建 的 一 样 User-Defined Types and Type Bodies 所 有 的 用 户 定 义 类 型 在 所 有 的 复 制 站 点 上 都 必 须 存 在 而 且 必 须 完 全 相 同 Triggers 一 个 比 较 重 要 的 应 用 就 是 在 DML 操 作 的 时 候 在 表 的 timestmap 列 中 插 入 当 前 的 系 统 时 间 为 了 防 止 触 发 器 被 重 复 调 用, 必 须 要 使 用 API 来 判 断 DML 操 作 是 在 本 地 发 起 的 还 是 通 过 高 级 复 制 传 递 过 来 的 如 下 例 : CREATE OR REPLACE TRIGGER hr.insert_time BEFORE INSERT OR UPDATE ON hr.employees FOR EACH ROW IF DBMS_REPUTIL.FROM_REMOTE = FALSE THEN :NEW.TIMESTAMP := SYSDATE; END IF; Views, Object Views, and Synonyms 只 是 简 单 地 复 制 到 其 它 站 点, 不 会 产 生 任 何 内 部 触 发 器 或 者 包 来 监 控 这 些 被 复 制 的 对 象 的 改 变 由 于 是 复 制 对 象, 所 以 仍 然 可 以 使 用 高 级 复 制 工 具 或 者 API 来 进 行 修 改 和 删 除 Indextypes 必 须 手 工 指 定 复 制 可 以 用 高 级 复 制 工 具 或 者 CREATE_MASTER_REPOBJECT 存 储 过 程
6 User-Defined Operators 复 制 情 况 跟 视 图, 同 义 词 等 相 同, 只 是 简 单 的 复 制 而 已 注 意 : 高 级 复 制 不 支 持 sequence 如 果 想 实 现 高 级 复 制 环 境 中 的 序 列 唯 一 性, 可 以 有 以 下 几 种 方 法 : 1. 使 用 SELECT SYS_GUID() OID FROM DUAL; 这 样 将 会 产 生 全 球 唯 一 的 GUID 2. 在 序 列 前 面 添 加 站 点 名 称, 比 如 唯 一 的 GLOBAL_NAME 3. 在 各 个 复 制 站 点 规 划 不 会 重 复 的 序 列, 比 如 站 点 A 的 序 列 从 1 开 始, 以 10 递 增, 站 点 B 的 序 列 从 3 开 始, 以 10 递 增 9. 高 级 复 制 环 境 中 的 队 列 Oracle 利 用 Internal Triggers 来 捕 获 对 象 变 化, 并 且 生 成 RPCs(remote procedure calls), RPCs 中 包 含 目 标 站 点 上 的 internal procedure 的 执 行 命 令 以 及 需 要 复 制 的 数 据,RPCs 存 储 在 deferred transaction queue 中, 当 一 个 RPC 到 达 目 标 站 点, 该 站 点 上 相 应 的 internal procedure 将 被 运 行 以 应 用 RPC 来 完 成 复 制 操 作 高 级 复 制 环 境 中 的 队 列 包 含 Deferred Transaction Queue,Error Queue 和 Job Queue Job Queue 中 包 含 的 作 业 有 三 种 : 将 延 迟 事 务 推 到 远 程 主 站 点 的 作 业, 将 已 经 应 用 过 的 事 务 从 延 迟 事 务 处 理 队 列 中 删 除 的 作 业, 刷 新 实 体 化 视 图 更 新 组 的 作 业 10. 管 理 请 求 (Administrative Request)- 管 理 机 制 什 么 是 管 理 请 求? 在 DBA_REPCATLOG 视 图 中 查 看 Administrative Requests 的 状 态 当 管 理 请 求 在 所 有 的 主 站 点 上 成 功 执 行 以 后, 管 理 请 求 将 从 所 有 的 主 站 点 包 括 主 体 定 义 站 点 中 的 管 理 请 求 队 列 中, 也 就 是 DBA_REPCATLOG 视 图 中 删 除 DBA_REPCATLOG 视 图 中 管 理 请 求 的 几 种 状 态 : 1) READY: 表 示 请 求 准 备 被 执 行 如 果 长 时 间 处 于 该 状 态, 可 以 手 动 执 行 DBMS_REPCAT.DO_DEFERRED_REPCAT_ADMIN 存 储 过 程 来 执 行 请 求 2) AWAIT_CALLBACK: 这 种 状 态 只 会 出 现 在 主 体 定 义 站 点 上, 表 示 正 在 等 待 其 它 的 主 站 点 执 行 请 求 并 且 返 回 结 果 3) ERROR: 表 示 请 求 执 行 错 误 4) DO_CALLBACK: 这 种 状 态 只 会 出 现 在 非 主 体 定 义 站 点 上, 表 示 要 通 知 主 体 定 义 站 点 请 求 执 行 的 结 果 11. 主 体 组 (Master Group)- 组 织 机 制 在 高 级 复 制 环 境 中,Oracle 用 复 制 组 来 管 理 复 制 对 象 而 在 多 主 体 复 制 (multimaster replication) 环 境 中 复 制 组 就 被 称 为 主 体 组 (Master Group) 在 不 同 的 复 制 站 点 上 的 相 应 主 体 组 中 必 须 包 含 相 同 的 复 制 对 象 12. Column Groups - 组 织 机 制 Column Group 是 在 冲 突 解 决 方 案 中 扮 演 角 色 的 多 个 字 段 的 集 合 如 果 组 中 的 某 个 字 段 引 发 了 冲 突, 那 么 其 余 的 字 段 可 以 用 来 作 解 决 这 个 冲 突 打 个 比 方, 如 果 一 个 表 的 column group 中 包 含 price 和 timestamp 字 段, 那 么 当 启 用 时 间 戳 冲 突 解 决 方 案 (timestamp conflict resolution routine) 时,timestamp 字 段 就 可 以 用 来 解 决 price 字 段 中 发 生 的 冲 突
7 可 能 刚 开 始 的 时 候 会 想 把 表 中 的 所 有 字 段 都 放 入 一 个 Column Group 中, 这 样 确 实 使 配 置 和 管 理 都 更 简 单 了 些, 但 是 却 会 降 低 复 制 的 性 能 并 且 可 能 会 引 发 潜 在 的 数 据 冲 突 在 后 面 的 性 能 机 制 部 分, 大 家 将 会 看 到 如 果 一 个 column group 中 发 生 了 冲 突, 那 么 oracle 的 最 小 化 通 信 功 能 (minimum communication feature) 将 不 会 从 其 它 的 column group 中 传 递 来 数 据 所 以 将 所 有 的 字 段 全 部 放 入 一 个 column group 将 减 弱 最 小 化 通 信 功 能 带 来 的 好 处, 除 非 使 用 了 DBMS_REPCAT 包 中 的 SEND_OLD_VALUES 和 COMPARE_OLD_VALUES 存 储 过 程 在 后 面 的 冲 突 解 决 方 案 的 概 念 和 体 系 结 构 章 节 中 将 会 有 更 详 细 的 描 述 13. 传 播 类 型 - 传 播 机 制 异 步 数 据 复 制 通 常 也 被 称 为 :store-and-forward data replication 同 步 数 据 复 制 通 常 也 被 称 为 :real-time data replication 由 于 同 步 复 制 采 取 的 锁 机 制, 所 以 当 同 时 更 新 同 一 行 数 据 时, 会 产 生 死 锁 的 现 象 当 同 步 更 新 一 个 复 制 表 时,Oracle 首 先 锁 住 本 地 行, 然 后 使 用 一 个 AFTER ROW 触 发 器 来 锁 住 远 端 的 行 当 事 务 在 所 有 的 站 点 都 提 交 之 后,Oracle 才 会 解 锁 同 步 数 据 复 制 极 为 依 赖 系 统 和 网 络 的 可 用 性, 因 为 只 要 当 复 制 环 境 中 的 所 有 站 点 都 可 用 时, 事 务 才 能 正 常 进 行 混 合 模 式 的 数 据 复 制 : 1) 假 设 创 建 了 A 是 masterdef site, 然 后 添 加 了 B 为 同 步 数 据 复 制, 再 添 加 C 为 非 同 步 复 制, 那 么 此 时 AB 之 间 是 同 步,AC 和 BC 之 间 都 是 非 同 步 2) 假 设 创 建 了 A 是 masterdef site, 然 后 添 加 了 C 为 非 同 步 数 据 复 制, 再 添 加 B 为 同 步 复 制, 那 么 此 时 AB 和 BC 之 间 是 同 步,AC 之 间 是 非 同 步 14. Initiating 方 法 - 展 开 机 制 当 使 用 同 步 复 制 的 时 候,DML 传 播 被 立 刻 处 理 并 且 被 自 动 展 开 如 果 是 使 用 异 步 复 制, 那 么 可 以 用 下 面 的 方 法 传 播 延 迟 事 务 : 计 划 作 业 : 大 部 分 场 合, 都 是 利 用 计 划 作 业 在 指 定 的 时 间 间 隔 后 自 动 传 播 延 迟 事 务 手 动 传 播 : 如 果 不 想 等 待 计 划 作 业 的 自 动 传 播, 也 可 以 利 用 存 储 过 程 或 者 复 制 管 理 工 具 来 手 动 传 播 改 动 15. 并 行 传 播 (Parallel Propagation) - 性 能 机 制 16. 最 小 化 通 信 (Minimum Communication) - 性 能 机 制 17. 延 迟 秒 数 (Delay Seconds) - 性 能 机 制 上 面 三 个 参 数 (15,16,17 值 得 好 好 研 究 并 且 进 行 调 整, 以 后 会 补 齐 这 部 分 内 容 ) 18. 复 制 保 护 机 制 : 在 多 主 体 复 制 环 境 中,Oracle 将 保 证 就 算 发 生 错 误 的 时 候, 事 务 传 播 也 不 会 丢 失, 同 样 同 一 个 事 务 也 不 可 能 传 播 两 次 正 确 的 传 播 并 不 以 为 着 延 迟 事 务 在 远 程 站 点 就 正 确 执 行 了, 可 能 因 为 无 法 解 决 的 冲 突 或 者 说 远 程 站 点 磁 盘 空 间 不 足 等 原 因 延 迟 事 务 执 行 失 败, 那 么 这 样 的 错 误 将 会 记 录 在 远 程 站 点 的 错 误 队 列 中
8 19. 数 据 传 播 的 依 赖 性 维 护 非 并 行 传 播 中,Oracle 按 照 本 地 站 点 的 事 务 commit 顺 序 来 在 远 程 站 点 应 用 事 务 而 并 行 传 播 中,Oracle 则 会 记 录 最 新 事 务 产 生 的 SCN, 如 果 存 在 事 务 之 间 的 依 赖 性, 那 么 Oracle 将 先 在 远 程 站 点 应 用 比 这 个 SCN 小 或 者 等 于 这 个 SCN 的 事 务, 然 后 再 应 用 这 个 最 新 的 事 务, 这 是 一 个 非 并 行 的 应 用, 只 有 当 不 存 在 事 务 依 赖 性 的 时 候, 才 会 真 正 利 用 并 行 来 应 用 延 迟 事 务 记 录 SCN 有 两 种 方 式, 一 种 是 数 据 块 级 别 的, 一 种 是 行 级 别 的 当 创 建 表 的 时 候, 如 果 使 用 了 : NOROWDEPENDENCIES, 这 是 默 认 属 性, 那 么 Oracle 将 会 以 数 据 块 级 别 方 式 来 记 录 SCN 这 样 存 储 在 同 一 个 数 据 块 中 的 多 行 记 录 都 只 会 有 一 个 最 新 的 SCN, 旧 的 会 被 新 生 成 的 覆 盖 ROWDEPENDENCIES, 那 么 将 对 表 中 的 每 一 行 都 记 录 SCN 在 同 一 个 数 据 块 中 的 多 行 记 录 将 分 别 保 留 自 己 的 SCN, 这 样 每 一 行 记 录 都 需 要 额 外 的 6 个 字 节 的 存 储 空 间 但 是 这 将 提 高 并 行 传 播 时 应 用 延 迟 事 务 的 效 率 ( 使 用 这 个 特 性, 要 求 数 据 库 的 初 始 化 参 数 中 COMPATIBLE=9.0.1 或 者 更 高 ) 可 以 使 用 以 下 SQL 来 检 查 那 些 表 启 用 了 这 个 特 性 : SQL> SELECT OWNER, TABLE_NAME FROM DBA_TABLES WHERE DEPENDENCIES = 'ENABLED'; 如 果 没 有 使 用 ROWDEPENDENCIES, 那 么 我 们 可 以 设 法 让 事 务 依 赖 性 最 小, 这 样 来 达 到 提 高 复 制 环 境 应 用 效 率 的 目 的 比 如 我 们 可 以 创 建 多 个 freelist, 这 样 可 以 在 大 量 insert 的 时 候 将 不 同 事 务 更 新 的 数 据 放 置 到 不 同 的 数 据 块 中 另 外 在 程 序 设 计 的 时 候, 我 们 也 应 该 尽 量 避 免 大 量 的 事 务 同 时 更 新 同 一 张 小 表 的 现 象 出 现, 比 如 说 有 些 应 用 会 设 计 一 张 小 表 来 模 拟 序 列 (Sequence), 用 以 生 成 唯 一 的 主 键 这 样 就 会 迫 使 多 个 事 务 同 时 更 新 同 一 个 数 据 块 对 于 这 种 情 况, 我 们 应 该 改 为 使 用 Sequence 并 且 缓 存 Sequence 的 生 成 20. 冲 突 解 决 机 制 为 了 正 确 地 侦 测 复 制 冲 突,Oracle 必 须 能 够 找 到 在 不 同 的 站 点 之 间 对 于 相 关 行 的 唯 一 标 示 这 就 要 求 在 复 制 环 境 中, 每 个 表 都 必 须 有 主 键, 如 果 没 有 主 键, 那 么 也 必 须 指 定 多 个 字 段 的 组 合 来 作 为 唯 一 标 示 Oracle 自 己 提 供 了 以 下 几 种 冲 突 解 决 方 案 : 1) Latest and Earliest Timestamp 2) Overwrite and Discard 3) Maximum and Minimum 4) Additive and Average 5) Timestamp 6) Priority Group 7) Site Priority 如 果 上 述 Oracle 提 供 的 解 决 方 案 无 法 满 足 应 用 的 需 求, 那 么 也 可 以 利 用 PLSQL 来 编 写 自 定 义 的 冲 突 解 决 方 案 下 面 章 节 我 们 将 进 一 步 研 究 冲 突 解 决 方 案
9 三 冲 突 解 决 方 案 的 概 念 和 构 架 基 本 上 我 们 在 设 计 系 统 的 时 候, 应 该 尽 量 避 免 产 生 冲 突, 但 是 如 果 必 须 允 许 在 多 个 主 体 站 点 同 时 对 复 制 对 象 的 更 改, 那 么 我 们 就 一 定 要 考 虑 冲 突 解 决 方 案 对 于 普 通 的 插 入 ( 主 键 冲 突 ), 更 新, 删 除 产 生 的 冲 突 很 容 易 理 解, 但 是 还 有 一 些 其 它 的 情 况 也 会 产 生 冲 突, 比 如 在 3 个 或 者 3 个 以 上 的 复 制 主 站 点 环 境 中, 可 能 会 产 生 下 面 例 子 中 的 这 种 Ordering Conflicts, 其 实 也 是 更 新 冲 突 的 一 个 例 子 这 个 复 制 环 境 中 有 A,B,C 三 个 主 站 点, 每 个 站 点 都 设 置 了 优 先 级,A 是 30,B 是 25,C 是 10, 而 x 则 是 被 分 配 了 site-priority 冲 突 解 决 方 案 的 column group 中 的 一 列 Site A Site B Site C Time Action 1 所 有 的 主 体 站 点 上 x = 站 点 A 更 新 x = 站 点 C 由 于 故 障 宕 机 了, 或 者 网 络 出 现 故 障. 5 2 down 4 站 点 A 将 更 新 推 到 站 点 B. 站 点 A 和 站 点 B 上 x = down 站 点 C 仍 然 不 可 用. 这 个 更 新 事 务 仍 然 保 留 在 站 点 A 的 队 列 中. 5 站 点 C 修 复 了, 此 时 站 点 C 上 x = 2. 而 站 点 A 和 站 点 B 上 x = 站 点 B 将 x = 5 更 新 为 x = 站 点 B 将 更 新 推 到 站 点 A. 站 点 A 和 站 点 B 上 x = 7. 站 点 C 上 x = 2. 8 站 点 B 将 更 新 推 到 站 点 C. 站 点 C 认 为 旧 值 x = 2; 站 点 B 推 过 去 的 旧 值 x = 5. Oracle 检 测 到 冲 突, 然 后 应 用 站 点 B 上 的 更 新 来 解 决 冲 突 因 为 站 点 B 上 设 置 了 优 先 级 25 比 站 点 C 上 设 置 的 优 先 级 10 要 高. 所 有 站 点 上 x = 站 点 A 将 延 迟 事 务 (x = 5) 推 到 站 点 C. Oracle 检 测 到 冲 突, 因 为 站 点 C 上 的 当 前 值 (x = 7) 和 站 点 A 上 的 旧 值 (x = 2) 不 符 合. 站 点 A 比 站 点 C 有 更 高 的 优 先 级 (30). Oracle 用 这 个 过 时 的 更 新 解 决 冲 突, 这 样 站 点 C 上 的 x = 5.
10 Site Site Site Time Action A B C 因 为 这 样 的 ordering conflict, 整 个 复 制 环 境 就 不 再 一 致 了. 四 冲 突 解 决 机 制 的 研 究 实 际 上 Oracle 的 dbms_rectifier_diff.differences 过 程, 内 部 操 作 就 是 执 行 连 个 minus 操 作 把 两 边 的 差 异 记 录 下 来, 作 为 冲 突 解 决 的 数 据 这 部 分 后 台 操 作 可 以 通 过 跟 踪 Oracle 进 程 得 到 : SQL> alter session set events '10046 trace name context forever,level 12'; Session altered. Elapsed: 00:00:00.02 SQL> begin dbms_rectifier_diff.differences( 2 SNAME1 =>'HAWA', 3 ONAME1 =>'TEST', 4 REFERENCE_SITE =>'AVATAR.COOLYOUNG.COM.CN', 4 SNAME2 =>'HAWA', 6 ONAME2 =>'TEST', 7 COMPARISON_SITE =>'AUTHAA.COOLYOUNG.COM.CN', 8 WHERE_CLAUSE =>NULL, 9 COLUMN_LIST =>NULL, 10 MISSING_ROWS_SNAME =>'HAWA', 11 MISSING_ROWS_ONAME1 =>'MISSING_ROWS_TEST', 12 MISSING_ROWS_ONAME2 =>'MISSING_LOCATION_TEST', 13 MISSING_ROWS_SITE =>'AVATAR.COOLYOUNG.COM.CN', 14 MAX_MISSING =>500, 15 COMMIT_ROWS => ); 17 end; 18 PLSQL procedure successfully completed. Elapsed: 00:00:01.97 SQL> alter session set events '10046 trace name context off'; 从 跟 踪 文 件 中 我 们 可 以 清 晰 的 看 到 ( 注 意 你 所 定 义 的 所 有 参 数 在 此 都 会 有 所 体 现 ):
11 1. 首 先 是 一 个 正 向 Minus DECLARE row_count BINARY_INTEGER := 0; missing_rows BINARY_INTEGER := 0; arowid ROWID; CURSOR c IS SELECT "DATLOGONTIME", "NUMGENDER", "NUMSTATUS", "NUMUSERID", "VC2IP", "VC2USERNAME" FROM "HAWA"."TEST" MINUS SELECT "DATLOGONTIME", "NUMGENDER", "NUMSTATUS", "NUMUSERID", "VC2IP", "VC2USERNAME" FROM "HAWA"."TEST"@authaa.coolyoung.com.cn; FOR r IN c LOOP missing_rows := missing_rows + 1; IF missing_rows > 500 THEN COMMIT; EXIT; END IF; INSERT INTO "HAWA"."MISSING_ROWS_TEST" ("DATLOGONTIME", "NUMGENDER", "NUMSTATUS", "NUMUSERID", "VC2IP", "VC2USERNAME" ) VALUES (r."datlogontime", r."numgender", r."numstatus", r."numuserid", r."vc2ip", r."vc2username" ); SELECT ROWID INTO arowid FROM "HAWA"."MISSING_ROWS_TEST" WHERE ( datlogontime = r."datlogontime" OR (datlogontime IS NULL AND r."datlogontime" IS NULL) ) AND ( numgender = r."numgender" OR (numgender IS NULL AND r."numgender" IS NULL) ) AND ( numstatus = r."numstatus"
12 OR (numstatus IS NULL AND r."numstatus" IS NULL) ) AND (numuserid = r."numuserid") AND (vc2ip = r."vc2ip" OR (vc2ip IS NULL AND r."vc2ip" IS NULL)) AND ( vc2username = r."vc2username" OR (vc2username IS NULL AND r."vc2username" IS NULL) ); INSERT INTO "HAWA"."MISSING_LOCATION_TEST" (present, absent, r_id ) VALUES ('AVATAR.COOLYOUNG.COM.CN', 'AUTHAA.COOLYOUNG.COM.CN', arowid ); row_count := row_count + 1; IF row_count >= 100 THEN COMMIT; row_count := 0; END IF; END LOOP; COMMIT; 2. 其 次 是 一 个 反 向 Minus DECLARE row_count BINARY_INTEGER := 0; missing_rows BINARY_INTEGER := 0; arowid ROWID; CURSOR c IS SELECT "DATLOGONTIME", "NUMGENDER", "NUMSTATUS", "NUMUSERID", "VC2IP", "VC2USERNAME" FROM "HAWA"."TEST"@authaa.coolyoung.com.cn MINUS SELECT "DATLOGONTIME", "NUMGENDER", "NUMSTATUS", "NUMUSERID", "VC2IP", "VC2USERNAME" FROM "HAWA"."TEST"; FOR r IN c
13 LOOP missing_rows := missing_rows + 1; IF missing_rows > 500 THEN COMMIT; EXIT; END IF; INSERT INTO "HAWA"."MISSING_ROWS_TEST" ("DATLOGONTIME", "NUMGENDER", "NUMSTATUS", "NUMUSERID", "VC2IP", "VC2USERNAME" ) VALUES (r."datlogontime", r."numgender", r."numstatus", r."numuserid", r."vc2ip", r."vc2username" ); SELECT ROWID INTO arowid FROM "HAWA"."MISSING_ROWS_TEST" WHERE ( datlogontime = r."datlogontime" OR (datlogontime IS NULL AND r."datlogontime" IS NULL) ) AND ( numgender = r."numgender" OR (numgender IS NULL AND r."numgender" IS NULL) ) AND ( numstatus = r."numstatus" OR (numstatus IS NULL AND r."numstatus" IS NULL) ) AND (numuserid = r."numuserid") AND (vc2ip = r."vc2ip" OR (vc2ip IS NULL AND r."vc2ip" IS NULL)) AND ( vc2username = r."vc2username" OR (vc2username IS NULL AND r."vc2username" IS NULL) ); INSERT INTO "HAWA"."MISSING_LOCATION_TEST" (present, absent, r_id ) VALUES ('AUTHAA.COOLYOUNG.COM.CN', 'AVATAR.COOLYOUNG.COM.CN', arowid ); row_count := row_count + 1;
14 IF row_count >= 100 THEN COMMIT; row_count := 0; END IF; END LOOP; COMMIT; 经 过 这 两 个 步 骤 的 操 作,Oracle 定 位 了 冲 突 数 据 可 是 注 意, 如 果 在 解 决 这 个 问 题 时 你 没 有 挂 起 复 制,Oracle 得 到 的 数 据 可 能 是 存 在 问 题 的 而 且, 如 果 你 不 指 定 column list, 那 么 两 边 的 数 据 可 能 会 因 为 某 些 特 殊 字 段 ( 如 时 间 字 段 ) 的 特 殊 处 理 而 存 在 差 异 那 么 这 时 候 手 工 介 入 不 可 避 免 我 们 首 先 先 把 两 个 重 要 参 数 的 用 法 说 明 一 下 一 个 是 WHERE_CLAUSE, 另 外 一 个 是 COLUMN_LIST WHERE_CLAUSE 用 于 限 定 进 行 差 异 比 较 的 范 围, 这 可 以 极 大 的 缩 减 结 果 集 的 数 量, 使 用 索 引 加 快 访 问 速 度 等 比 如 我 这 里 使 用 NUMGENDER=1, 只 比 较 性 别 为 " 女 " 这 一 部 分 用 户 数 据 COLUMN_LIST 用 于 限 定 比 较 字 段, 如 果 你 能 通 过 某 个 字 段, 如 主 键 等 确 定 数 据 差 异, 那 么 你 完 全 可 以 只 比 较 单 个 字 段 而 且 显 然 可 以 轻 易 通 过 全 索 引 扫 描 来 完 成 比 较, 加 快 比 较 速 度 我 这 里 使 用 NUMUSERID, 用 户 ID 来 比 较 但 是 注 意, 这 样 的 比 较 结 果 中 将 只 包 含 NUMUSERID 信 息, 当 然 我 们 可 以 轻 易 通 过 NUMUSERID 和 原 表 的 比 较 补 全 MISSING_ROWS_TEST 表 的 信 息 begin dbms_rectifier_diff.differences( SNAME1 =>'HAWA', ONAME1 =>'TEST', REFERENCE_SITE =>'AVATAR.COOLYOUNG.COM.CN', SNAME2 =>'HAWA', ONAME2 =>'TEST', COMPARISON_SITE =>'AUTHAA.COOLYOUNG.COM.CN', WHERE_CLAUSE =>'NUMGENDER=1', COLUMN_LIST =>'NUMUSERID', MISSING_ROWS_SNAME =>'HAWA', MISSING_ROWS_ONAME1 =>'MISSING_ROWS_TEST',
15 MISSING_ROWS_ONAME2 =>'MISSING_LOCATION_TEST', MISSING_ROWS_SITE =>'AVATAR.COOLYOUNG.COM.CN', MAX_MISSING =>500, COMMIT_ROWS =>100 ); end; 这 段 代 码 供 参 考 Ok, 我 们 继 续 前 面 的 讨 论 我 们 提 到, 如 果 存 在 差 异, 通 常 需 要 手 工 介 入 清 楚 了 DIFFERENCES 的 原 理, 实 际 上 我 们 完 全 可 以 手 工 来 完 成 这 个 过 程 以 下 是 我 的 手 工 操 作 步 骤, 目 的 是 为 了 准 确 性 及 减 轻 数 据 库 压 力 : 1. 首 先 创 建 一 个 ID 差 异 表 这 个 表 不 是 必 须 的, 这 里 是 为 了 清 晰 SQL> create table hawa.prof as select NUMUSERID from hawa.hw_user where 1=0; Table created. Elapsed: 00:00: 根 据 主 键 找 到 差 异 记 录 注 意 这 里 取 决 于 你 的 数 据 库 产 生 差 异 的 原 因, 我 的 差 异 由 于 初 始 数 据 不 同 步, 即 A 全 包 含 B 并 且,A>B SQL> insert into hawa.prof 2 select * from 3 ( 4 select NUMUSERID from hawa.hw_userprofile 5 minus 6 select NUMUSERID from hawa.hw_userprofile@authaa) rows created. Elapsed: 00:00: 创 建 记 录 表 SQL> create table hawa.missing_rows_hw_userprofile
16 2 as 3 select * from hawa.hw_userprofile where 1=0; Table created. Elapsed: 00:00: 创 建 位 置 (Location) 表 注 意 这 里 Oracle 需 要 记 录 缺 失 方 向, 和 具 体 记 录 的 ROWID, 这 个 ROWID 来 自 missing_rows_hw_userprofile SQL> create table hawa.missing_loc_hw_userprofile ( 2 present VARCHAR2(128), 3 absent VARCHAR2(128), 4 r_id ROWID); Table created. Elapsed: 00:00: 根 据 差 异 信 息 查 询 到 完 整 信 息 SQL> insert into hawa.missing_rows_hw_userprofile 2 select * from hawa.hw_userprofile where NUMUSERID in 3 (select * from hawa.prof); 263 rows created. Elapsed: 00:00:00.06 SQL> commit; Commit complete. Elapsed: 00:00: 构 造 位 置 信 息 注 意 这 里 的 方 向 信 息 及 ROWID 信 息 SQL> insert into hawa.missing_loc_hw_userprofile 2 select 'AVATAR.COOLYOUNG.COM.CN','AUTHAA.COOLYOUNG.COM.CN',rowid from hawa.missing_rows_hw_userprofile; 263 rows created. Elapsed: 00:00:00.00 SQL> commit;
17 Commit complete. Elapsed: 00:00: 纠 正 数 据 冲 突 SQL> DBMS_RECTIFIER_DIFF.RECTIFY( 2 SNAME1 =>'HAWA', 3 ONAME1 =>'HW_USERPROFILE', 4 REFERENCE_SITE =>'AVATAR.COOLYOUNG.COM.CN', 5 SNAME2 =>'HAWA', 6 ONAME2 =>'HW_USERPROFILE', 7 COMPARISON_SITE =>'AUTHAA.COOLYOUNG.COM.CN', 8 COLUMN_LIST =>NULL, 9 MISSING_ROWS_SNAME =>'HAWA', 10 MISSING_ROWS_ONAME1 =>'MISSING_ROWS_HW_USERPROFILE', 11 MISSING_ROWS_ONAME2 =>'MISSING_LOC_HW_USERPROFILE', 12 MISSING_ROWS_SITE =>'AVATAR.COOLYOUNG.COM.CN', 13 COMMIT_ROWS => ); PLSQL procedure successfully completed. Elapsed: 00:00: 验 证 结 果 SQL> select count(*) from hawa.hw_userprofile; COUNT(*) Elapsed: 00:00:02.22 SQL> select count(*) from hawa.hw_userprofile@authaa; COUNT(*)
18 Elapsed: 00:00:00.21 SQL> select count(*) from hawa.hw_userprofile; COUNT(*) Elapsed: 00:00:00.59 SQL>select count(*) from COUNT(*) Elapsed: 00:00:00.20 SQL> select NUMUSERID from hawa.hw_userprofile 2 minus 3 select NUMUSERID from hawa.hw_userprofile@authaa ; no rows selected Elapsed: 00:00:23.51 SQL> 五 解 决 数 据 冲 突 -dbms_rectifier_diff 包 很 多 时 候 在 高 级 复 制 中 可 能 存 在 数 据 冲 突 和 不 一 致 现 象 Oracle 提 供 的 dbms_rectifier_diff 包 可 以 用 于 解 决 该 冲 突 以 下 通 过 实 例 来 说 明 一 下 该 Package 的 用 法 1. 创 建 复 制 组 及 复 制 对 象 SQL> execute dbms_repcat.create_master_repgroup('rep_tt'); PLSQL procedure successfully completed SQL> select gname,master,status from dba_repgroup; GNAME MASTER STATUS REP_TT Y QUIESCED
19 SQL> execute dbms_repcat.create_master_repobject(sname=>'hawa',oname=>'test', type=>'table',use_existing_object=>true,gname=>'rep_tt',copy_rows=>false); PLSQL procedure successfully completed SQL> SQL> execute dbms_repcat.generate_replication_support('hawa','test','table'); PLSQL procedure successfully completed SQL> select gname, master, status from dba_repgroup; GNAME MASTER STATUS REP_TT Y QUIESCED SQL> select * from dba_repobject; SNAME ONAME TYPE STATUS GENERATION_STATUS ID OBJECT_COMMENT GNAME MIN_COMMUNICATION REPLICATION_TRIGGER_EXISTS INTERNAL_PACKAGE_EXISTS GROUP_OWNER NESTED_TABLE HAWA TEST TABLE VALID GENERATED 8620 REP_TT Y Y Y PUBLIC N HAWA TEST$RP PACKAGE VALID 8641 SYSTEM-GENERATED: REPLICATION REP_TT PUBLIC HAWA TEST$RP PACKAGE BODY VALID 8677 SYSTEM-GENERATED: REPLICATION REP_TT PUBLIC 3 rows selected SQL> SQL> execute dbms_repcat.add_master_database(gname=>'rep_tt',master=>'authaa.coolyoung.c OM.CN',use_existing_objects=>true, copy_rows=>false, propagation_mode => 'synchronous'); PLSQL procedure successfully completed SQL> execute dbms_repcat.resume_master_activity('rep_tt',true);
20 PLSQL procedure successfully completed SQL> select * from dba_repgroup; SNAME MASTER STATUS SCHEMA_COMMENT GNAME FNAME RPC_PROCESSING_DISABLED OWNER REP_TT Y NORMAL REP_TT N PUBLIC 2. 创 建 保 存 冲 突 数 据 的 数 据 表 a.missing_rows 表 用 以 保 存 冲 突 行 SQL> create table hawa.missing_rows_test 2 as 3 select * from hawa.test where 1=0; Table created b. 用 于 保 存 缺 失 行 位 置 及 rowid SQL> create table hawa.missing_location_test ( 2 present VARCHAR2(128), 3 absent VARCHAR2(128), 4 r_id ROWID); Table created 3. 使 用 dbms_rectifier_diff.differences 查 找 缺 失 记 录 SQL> begin dbms_rectifier_diff.differences( 2 SNAME1 =>'HAWA', 3 ONAME1 =>'TEST', 4 REFERENCE_SITE =>'AVATAR.COOLYOUNG.COM.CN', 5 SNAME2 =>'HAWA', 6 ONAME2 =>'TEST', 7 COMPARISON_SITE =>'AUTHAA.COOLYOUNG.COM.CN', 8 WHERE_CLAUSE =>NULL, 9 COLUMN_LIST =>NULL, 10 MISSING_ROWS_SNAME =>'HAWA', 11 MISSING_ROWS_ONAME1 =>'MISSING_ROWS_TEST', 12 MISSING_ROWS_ONAME2 =>'MISSING_LOCATION_TEST', 13 MISSING_ROWS_SITE =>'AVATAR.COOLYOUNG.COM.CN', 14 MAX_MISSING =>500, 15 COMMIT_ROWS =>100
21 16 ); 17 end; 18 PLSQL procedure successfully completed 冲 突 记 录 被 保 存 在 我 们 创 建 的 指 定 表 中 SQL> select count(*) from hawa.missing_rows_test; COUNT(*) 共 有 172 条 差 异 记 录 SQL> select count(*) from hawa.test; COUNT(*) SQL> select count(*) from COUNT(*) SQL> select count(*) from hawa.missing_location_test; COUNT(*) 使 用 DBMS_RECTIFIER_DIFF.RECTIFY 进 行 数 据 整 合 首 先 需 要 注 意 的 是 : RECTIFY 过 程 使 用 DIFFERENCES 产 生 的 数 据 进 行 数 据 调 整 在 第 一 个 表 中 存 在, 在 第 二 个 表 中 不 存 在 的 数 据 将 被 插 入 第 二 张 表 在 第 二 个 表 中 存 在, 在 第 一 个 个 表 中 不 存 在 的 数 据 将 被 从 第 二 张 表 中 删 除 另 外, 在 这 个 数 据 纠 正 过 程 中, 你 可 以 使 用 dbms_repcat.suspend_master_activity 将 复 制 组 暂 时 挂 起 这 样 便 于 保 证 数 据 完 整 性
22 但 这 不 是 必 须 的, 如 果 复 制 一 直 激 活, 可 能 会 有 新 的 冲 突 出 现 SQL> DBMS_RECTIFIER_DIFF.RECTIFY( 2 SNAME1 =>'HAWA', 3 ONAME1 =>'TEST', 4 REFERENCE_SITE =>'AVATAR.COOLYOUNG.COM.CN', 5 SNAME2 =>'HAWA', 6 ONAME2 =>'TEST', 7 COMPARISON_SITE =>'AUTHAA.COOLYOUNG.COM.CN', 8 COLUMN_LIST =>NULL, 9 MISSING_ROWS_SNAME =>'HAWA', 10 MISSING_ROWS_ONAME1 =>'MISSING_ROWS_TEST', 11 MISSING_ROWS_ONAME2 =>'MISSING_LOCATION_TEST', 12 MISSING_ROWS_SITE =>'AVATAR.COOLYOUNG.COM.CN', 13 COMMIT_ROWS => ); PLSQL procedure successfully completed SQL> select count(*) from hawa.test@authaa; COUNT(*) SQL> select count(*) from hawa.test; COUNT(*) 数 据 矫 正 完 成 以 后, 数 据 会 自 动 从 missing_rows 表 中 删 除 SQL> select count(*) from hawa.missing_rows_test; COUNT(*) SQL> 六 MVR 的 概 念 和 构 架 Oracle 提 供 两 种 不 同 的 复 制 方 法 : 多 主 复 制 (multimaster replication) 和 物 化 视 图 复 制
23 (materialized view replication) 还 可 以 通 过 两 种 复 制 的 组 合 构 成 混 合 复 制 本 文 主 要 描 述 物 化 视 图 复 制, 也 就 是 MVR, 由 于 物 化 视 图 复 制 中 的 主 站 点 就 是 多 主 复 制 中 的 站 点, 因 此 也 会 对 相 应 的 多 主 复 制 中 涉 及 到 的 内 容 作 相 应 的 说 明 一 物 化 视 图 的 概 念 和 体 系 结 构 Oracle 的 物 化 视 图 主 要 用 在 两 个 方 面 : 高 级 复 制 和 数 据 仓 库 在 高 级 复 制 环 境 中, 物 化 视 图 用 于 复 制 数 据 到 非 主 体 站 点 在 数 据 仓 库 环 境 中, 物 化 视 图 用 于 对 代 价 昂 贵 的 查 询 进 行 缓 存 下 面 讨 论 物 化 视 图 在 高 级 复 制 环 境 中 的 使 用 1. 物 化 视 图 是 什 么 物 化 视 图 (materialized view) 是 主 体 对 象 在 某 一 时 间 点 上 的 复 制 品 这 个 主 体 对 象 即 可 以 是 主 体 站 点 (master site) 上 的 一 个 主 表, 也 可 以 是 物 化 视 图 站 点 (materialized view site) 上 的 一 个 主 物 化 视 图 在 多 主 复 制 中, 一 个 站 点 上 的 表 被 其 他 主 体 站 点 连 续 不 断 的 更 新 ( 这 个 也 是 要 分 同 步 和 异 步 的, 异 步 情 况 下 也 是 类 似 于 refresh 这 样 的 定 时 push), 而 物 化 视 图 则 是 从 一 个 主 体 站 点 或 主 物 化 视 图 站 点 批 量 的 进 行 更 新 ( 也 叫 做 刷 新 refresh) 当 物 化 视 图 进 行 快 速 刷 新 时 (fast refresh),oracle 会 检 查 主 表 (master table) 或 主 物 化 视 图 (master materialized view) 自 上 次 刷 新 以 来 的 所 有 改 变, 并 将 其 应 用 到 物 化 视 图 上 因 此, 如 果 主 体 对 象 自 上 次 刷 新 以 来 存 在 一 些 改 变, 则 刷 新 操 作 则 会 花 费 一 定 的 时 间 把 这 些 改 变 应 用 到 物 化 视 图 上 如 果 自 上 次 刷 新 以 来 没 有 发 生 任 何 变 化, 则 物 化 视 图 刷 新 操 作 会 迅 速 的 完 成 2. 为 什 么 使 用 物 化 视 图 你 可 以 使 用 物 化 视 图 来 完 成 以 下 目 标 : 减 轻 网 络 负 载 ; 创 建 一 个 Mass Deployment 环 境 ; 数 据 子 集 ; Disconnected Computing (1) 减 轻 网 络 负 载 : 你 可 以 通 过 物 化 视 图 将 数 据 分 布 到 许 多 站 点, 所 有 用 户 不 需 要 再 访 问 一 个 数 据 库 服 务 器, 负 载 被 分 散 到 多 个 数 据 库 服 务 器 上 和 多 主 复 制 不 同 的 是, 你 可 以 根 据 需 要, 只 复 制 表 中 的 一 部 分 字 段 或 者 表 中 的 一 部 分 数 据, 从 而 降 低 了 每 次 复 制 的 数 据 量 多 主 复 制 也 可 以 分 布 网 络 负 载, 但 与 物 化 视 图 相 比 它 对 网 络 的 要 求 要 严 格 得 多 由 于 多 主 复 制 各 个 站 点 间 采 用 的 是 网 状 连 接, 每 个 站 点 和 其 他 所 有 的 站 点 都 有 通 信, 而 且 多 主 复 制 一 般 用 于 提 供 实 时 或 接 近 实 时 的 复 制, 这 会 导 致 很 高 的 网 络 流 量, 对 于 网 络 状 况 要 求 比 较 严 格 物 化 视 图 采 用 高 效 的 批 量 更 新 方 式, 从 一 个 主 体 站 点 或 一 个 主 物 化 视 图 站 点 获 得 更 新 和 多 主 复 制 的 连 续 通 信 不 一 样, 物 化 视 图 复 制 只 需 要 周 期 性 的 刷 新, 从 而 对 网 络 的 要 求 大 大 降 低 (2) 创 建 Mass Deployment 环 境 : 展 开 模 板 (Deployment templete) 允 许 你 在 本 地 预 先 建 立 物 化 视 图 环 境 你 可 以 利 用 展 开 模 板 快 速 简 便 的 展 开 物 化 视 图 环 境 你 可 以 不 用 修 改 展 开 模 板, 而 是 利 用 参 数 来 建 立 不 同 用 户 的 客 户 化 数 据 集 (3) 数 据 子 集 (Data subsetting): 物 化 视 图 允 许 你 的 复 制 建 立 在 列 (column) 或 者 行 (row-level) 的 基 础 上, 而 多 主 复 制 需
24 要 复 制 整 张 表 通 过 使 用 Data subsetting, 对 于 每 个 站 点 你 可 以 仅 复 制 满 足 本 站 点 需 要 的 数 据 (4) Disconnected Deployment: 物 化 视 图 不 需 要 专 用 网 络 连 接 你 可 以 利 用 job 的 调 度 机 制 完 成 物 化 视 图 的 定 时 自 动 刷 新, 你 也 可 以 在 需 要 的 时 候 手 工 刷 新 物 化 视 图 而 这 第 二 种 方 法 是 在 笔 记 本 上 运 行 应 用 程 序 的 一 种 理 想 解 决 方 案 3. 物 化 视 图 的 分 类 物 化 视 图 分 为 只 读 可 更 新 和 可 写 三 类 不 能 对 只 读 物 化 视 图 进 行 DML 操 作 (INSERTUPDATEDELETE), 对 于 可 更 新 和 可 写 物 化 视 图 则 可 以 进 行 DML 操 作 注 意 : 对 于 只 读 可 更 新 和 可 写 物 化 视 图, 定 义 物 化 视 图 的 查 询 语 句 必 须 包 含 主 体 对 象 中 的 所 有 主 键 列 (1) 只 读 物 化 视 图 在 建 立 物 化 视 图 时, 省 略 FOR UPDATE 语 句 建 立 只 读 物 化 视 图 除 了 不 需 要 属 于 一 个 物 化 视 图 组 之 外, 只 读 物 化 视 图 的 许 多 机 制 都 和 可 更 新 物 化 视 图 相 同 使 用 只 读 物 化 视 图 可 以 消 除 在 主 体 站 点 或 者 主 物 化 视 图 站 点 上 由 物 化 视 图 引 入 的 数 据 冲 突, 这 个 优 点 的 代 价 是 只 读 物 化 视 图 不 能 进 行 dml 操 作 建 立 只 读 物 化 视 图 的 例 子 如 下 : CREATE MATERIALIZED VIEW hr.employees AS SELECT * FROM hr.employees@orc1.world; 注 意 : 使 用 只 读 物 化 视 图 只 能 消 除 由 物 化 视 图 站 点 引 入 的 冲 突, 并 不 意 味 着 使 用 只 读 物 化 视 图 就 不 会 有 冲 突 产 生, 后 面 会 举 例 详 细 说 明 (2) 可 更 新 物 化 视 图 在 建 立 物 化 视 图 时, 指 明 FOR UPDATE 语 句 建 立 可 更 新 物 化 视 图 为 了 可 更 新 物 化 视 图 的 修 改 在 刷 新 时 可 以 被 推 回 (push pack) 主 体 对 象, 可 更 新 物 化 视 图 必 须 属 于 一 个 物 化 视 图 组 由 于 可 更 新 物 化 视 图 允 许 数 据 的 修 改, 因 此 可 以 降 低 主 体 站 点 的 负 载 下 面 是 建 立 可 更 新 物 化 视 图 的 例 子 : CREATE MATERIALIZED VIEW hr.departments FOR UPDATE AS SELECT * FROM hr.departments@orc1.world; 下 面 的 语 句 建 立 一 个 物 化 视 图 组 : DBMS_REPCAT.CREATE_MVIEW_REPGROUP ( gname => 'hr_repg', master => 'orc1.world', propagation_mode => 'ASYNCHRONOUS'); 下 面 的 语 句 将 物 化 视 图 hr.departments 加 入 到 物 化 视 图 组 hr_repg 中, 使 得 物 化 视 图 hr.departments 可 更 新 DBMS_REPCAT.CREATE_MVIEW_REPOBJECT (
25 gname => 'hr_repg', sname => 'hr', oname => 'departments', type => 'SNAPSHOT', min_communication => TRUE); 注 意 : 1. 不 要 在 建 立 可 更 新 物 化 视 图 时 使 用 列 的 别 名, 否 则, 在 将 物 化 视 图 加 入 到 物 化 视 图 组 的 时 候 会 发 生 错 误 2. 主 表 或 主 物 化 视 图 列 上 的 默 认 值 不 会 自 动 应 用 到 可 更 新 物 化 视 图 上 3. 可 更 新 物 化 视 图 不 支 持 DELETE CASCADE 操 作 (3) 可 写 物 化 视 图 可 写 物 化 视 图 指 出 FOR UPDATE 语 句, 但 是 没 有 加 入 到 物 化 视 图 组 用 户 可 以 对 可 写 物 化 视 图 执 行 DML 操 作, 但 是 在 执 行 刷 新 操 作 时, 修 改 不 会 被 推 回, 因 此 所 有 的 修 改 在 刷 新 后 全 部 丢 失 所 有 允 许 只 读 物 化 视 图 的 情 况 也 同 样 允 许 可 写 物 化 视 图 由 于 可 写 物 化 视 图 很 少 使 用, 因 此 以 后 大 部 分 内 容 都 只 涉 及 只 读 物 化 视 图 和 可 更 新 物 化 视 图 4. 物 化 视 图 可 用 性 Oracle 提 供 几 种 不 同 类 型 的 物 化 视 图, 以 满 足 各 种 复 制 环 境 的 需 要 介 绍 下 列 物 化 视 图 以 及 它 们 使 用 的 环 境 : 主 键 物 化 视 图 (Primary Key Materialized Views); 对 象 物 化 视 图 (Object Materialized Views); ROWID 物 化 视 图 (ROWID Materialized Views); 复 杂 物 化 视 图 (Complex Materialized Views) 当 建 立 物 化 视 图 时, 不 管 物 化 视 图 属 于 何 种 类 型, 总 是 给 出 方 案 名 (schema), 也 就 是 查 询 语 句 中 表 的 所 有 者 名 称 例 如 : CREATE MATERIALIZED VIEW hr.employees AS SELECT * FROM hr.employees@orc1.world; 这 个 例 子 中, 方 案 名 hr 被 明 确 指 出 (1) 主 键 物 化 视 图 主 键 物 化 视 图 是 默 认 的 物 化 视 图 如 果 主 键 物 化 视 图 是 作 为 物 化 视 图 组 的 一 部 分 建 立 的, 且 指 定 了 FOR UPDATE 语 句, 那 么 这 个 物 化 视 图 是 可 更 新 的, 且 这 个 物 化 视 图 组 必 须 和 主 站 点 中 复 制 组 的 同 名 另 外, 可 更 新 物 化 视 图 必 须 和 主 复 制 组 在 不 同 的 数 据 库 中 当 修 改 发 生 后, 修 改 的 数 据 以 行 级 为 单 位 被 传 播, 每 行 数 据 由 主 键 确 定 ( 而 不 是 ROWID) 下 面 是 一 个 创 建 可 更 新 的 主 键 物 化 视 图 的 例 子 : CREATE MATERIALIZED VIEW oe.customers FOR UPDATE AS SELECT * FROM oe.customers@orc1.world; 主 键 物 化 视 图 可 以 包 含 一 个 子 查 询, 因 此 你 可 以 在 建 立 物 化 视 图 时, 建 立 所 有 数 据 的 一 个 子 集, 也 就 是 说, 建 立 物 化 视 图 时 可 以 只 选 取 你 需 要 的 数 据 行 子 查 询 是 嵌 入 在 主 查 询 中 的 查 询, 因 此 你 可 以 在 建 立 物 化 视 图 时 有 超 过 一 个 的 SELECT 语 句 子 查 询 可 以 是 简 单 的 WHERE 语 句 也 可 以 是 复 杂 的 多 层 WHERE EXISTS 语 句 嵌 套 如 果 主 站 点 中 的 主 对 象 建 立 了 物 化 视
26 图 日 志 表 (materialized view log), 那 么 一 些 包 含 特 定 类 型 子 查 询 的 主 键 物 化 视 图 仍 然 可 以 快 速 ( 增 量 ) 刷 新 快 速 刷 新 利 用 materialized view logs 只 更 新 自 上 次 刷 新 后 被 修 改 的 记 录 下 面 的 物 化 视 图 包 含 一 个 WHERE 语 句 的 子 查 询 : CREATE MATERIALIZED VIEW oe.orders REFRESH FAST AS SELECT * FROM oe.orders@orc1.world o WHERE EXISTS (SELECT * FROM oe.customers@orc1.world c WHERE o.customer_id = c.customer_id AND c.credit_limit > 10000); 这 种 类 型 的 物 化 视 图 又 叫 做 子 查 询 物 化 视 图 (2) 对 象 物 化 视 图 如 果 物 化 视 图 是 基 于 对 象 表, 并 且 在 建 立 是 指 定 了 OF TYPE 语 句, 那 么 这 个 物 化 视 图 叫 做 对 象 物 化 视 图 对 象 物 化 视 图 的 结 构 和 对 象 表 相 同 对 象 物 化 视 图 由 行 对 象 (row objects) 组 成, 每 一 个 行 对 象 由 一 个 对 象 标 识 列 OID(object identifier) 标 识 (3) ROWID 物 化 视 图 为 了 后 向 兼 容 性,Oracle 除 了 默 认 的 主 键 物 化 视 图 外, 还 支 持 ROWID 物 化 视 图 ROWID 物 化 视 图 基 于 主 对 象 中 行 记 录 的 物 理 标 识 ROWID(physical row identifiers) ROWID 物 化 视 图 只 被 用 在 基 于 Oracle7 版 本 的 主 对 象 的 物 化 视 图, 它 不 能 被 用 于 建 立 基 于 Oracle8 或 更 高 版 本 主 站 点 的 物 化 视 图 下 面 是 一 个 建 立 ROWID 物 化 视 图 的 例 子 : CREATE MATERIALIZED VIEW oe.orders REFRESH WITH ROWID AS SELECT * FROM oe.orders@orc1.world; (4) 复 杂 物 化 视 图 物 化 视 图 的 定 义 必 须 满 足 某 种 约 束, 才 能 执 行 快 速 刷 新 如 果 你 需 要 的 物 化 视 图 的 定 义 查 询 语 句 更 为 一 般 化, 不 能 满 足 限 制 条 件, 那 么 这 个 物 化 视 图 是 复 杂 的, 并 且 不 能 执 行 快 速 刷 新 一 般 来 说, 如 果 一 个 物 化 视 图 的 定 义 查 询 包 含 下 列 语 句, 则 被 认 为 是 复 杂 物 化 视 图 : CONNECT BY 语 句 ; 例 如 : CREATE MATERIALIZED VIEW hr.emp_hierarchy AS SELECT LPAD(' ', 4*(LEVEL-1)) USERNAME FROM hr.employees@orc1.world START WITH manager_id IS NULL CONNECT BY PRIOR employee_id = manager_id; INTERSECT,MINUS 或 UNION ALL 操 作 ; 例 如 : CREATE MATERIALIZED VIEW hr.mview_employees AS SELECT employees.employee_id, employees. FROM hr.employees@orc1.world UNION ALL SELECT new_employees.employee_id, new_employees. FROM hr.new_employees@orc1.world;
27 在 某 些 情 况 下 的 DISTINCT 和 UNIQUE 关 键 字 ; 包 含 DISTINCT 和 UNIQUE 关 键 字 的 并 不 都 是 复 杂 物 化 视 图, 简 单 物 化 视 图 (simple materialized view) 中 也 可 以 包 含 这 两 个 关 键 字 下 面 的 例 子 是 建 立 一 个 包 含 DISTINCT 关 键 字 的 复 杂 物 化 视 图 : CREATE MATERIALIZED VIEW hr.employee_depts AS SELECT DISTINCT department_id FROM hr.employees@orc1.world ORDER BY department_id; 聚 集 操 作 ; 如 下 例 : CREATE MATERIALIZED VIEW hr.average_sal AS SELECT AVG(salary) "Average" FROM hr.employees@orc1.world; 连 接 不 在 子 查 询 中 的 对 象 ; 例 如 : CREATE MATERIALIZED VIEW hr.emp_join_dep AS SELECT last_name FROM hr.employees@orc1.world e, hr.departments@orc1.world d WHERE e.department_id = d.department_id; 某 种 情 况 下 的 UNION 操 作 例 如 : CREATE MATERIALIZED VIEW oe.orders AS SELECT order_total FROM oe.orders@orc1.world o WHERE EXISTS (SELECT cust_first_name, cust_last_name FROM oe.customers@orc1.world c WHERE o.customer_id = c.customer_id AND c.credit_limit > 50) UNION SELECT customer_id FROM oe.orders@orc1.world o WHERE EXISTS (SELECT cust_first_name, cust_last_name FROM oe.customers@orc1.world c WHERE o.customer_id = c.customer_id AND c.account_mgr_id = 30); 以 及 其 他 任 何 不 满 足 特 定 约 束 条 件 的 子 查 询 具 体 条 件 见 物 化 视 图 中 的 数 据 子 集 (Data Subsetting with Materialized Views) 的 物 化 视 图 子 查 询 约 束 (Restrictions for Materialized Views with Subqueries)
28 注 意 : 如 果 可 能, 尽 量 避 免 使 用 复 杂 物 化 视 图, 因 为 复 杂 物 化 视 图 不 能 快 速 刷 新, 将 会 降 低 网 络 性 能 对 比 简 单 物 化 视 图 和 复 杂 物 化 视 图 : 为 了 某 种 应 用, 你 可 能 需 要 考 虑 使 用 一 个 复 杂 物 化 视 图 你 有 两 种 方 法 可 以 选 择, 它 们 各 有 利 弊, 具 体 如 下 : 图 一 : 复 杂 物 化 视 图 和 简 单 物 化 视 图 对 比 复 杂 物 化 视 图 : 上 图 中 方 法 A 展 示 了 一 个 复 杂 物 化 视 图 这 个 复 杂 物 化 视 图 在 数 据 库 Ⅱ 中 展 示 出 高 效 的 查 询 性 能, 因 为 连 接 操 作 在 物 化 视 图 刷 新 时 已 经 完 成 然 而, 由 于 是 复 杂 物 化 视 图, 必 须 执 行 完 全 刷 新, 这 将 极 为 可 能 比 执 行 快 速 刷 新 要 慢 得 多 简 单 物 化 视 图 通 过 视 图 连 接 : 上 图 中 方 法 B 在 DATABASEⅡ 展 示 了 两 个 简 单 物 化 视 图, 它 们 通 过 一 个 视 图 执 行 连 接 操 作 通 过 视 图 查 询 不 可 能 有 方 法 A 中 查 询 复 杂 物 化 视 图 那 样 的 性 能 然 而, 简 单 物 化 视 图 可 以 更 加 有 效 的 使 用 快 速 刷 新 和 物 化 视 图 日 志 (materialized view logs) 总 的 来 说 : 如 果 你 很 少 刷 新, 且 需 要 比 较 高 的 查 询 性 能, 则 使 用 方 法 A (complex materialized view) 如 果 你 经 常 刷 新, 且 可 以 牺 牲 查 询 性 能, 则 使 用 方 法 B (simple materialized view) 5. 物 化 视 图 操 作 所 需 权 限 三 种 不 同 类 型 的 用 户 对 物 化 视 图 执 行 操 作 : 建 立 者 (creator): 建 立 物 化 视 图 的 用 户 刷 新 者 (refresher): 刷 新 物 化 视 图 的 用 户 所 有 者 (owner): 拥 有 物 化 视 图 的 用 户 物 化 视 图 存 在 于 所 有 者 的 方 案 (schema) 中
29 一 个 用 户 对 物 化 视 图 可 以 执 行 所 有 的 操 作 然 而, 在 一 些 复 制 环 境 中, 不 同 的 用 户 对 物 化 视 图 执 行 不 同 的 操 作 执 行 这 些 操 作 需 要 的 权 限 取 决 于 操 作 由 同 一 个 用 户 执 行 还 是 由 不 同 的 用 户 执 行 下 面 详 细 解 释 所 需 权 限 注 意 : 下 文 没 有 包 括 用 重 写 查 询 (query rewrite) 选 项 来 创 建 物 化 视 图 时 所 需 要 的 权 限 (1) 创 建 者 是 所 有 者 如 果 一 个 物 化 视 图 的 创 建 者 同 时 也 是 一 个 物 化 视 图 的 所 有 者, 那 么 这 个 用 户 可 以 通 过 明 确 授 权 或 通 过 角 色 拥 有 下 列 权 限 来 创 建 一 个 物 化 视 图 CREATE MATERIALIZED VIEW 或 者 CREATE ANY MATERIALIZED VIEW 权 限 ; CREATE TABLE 或 者 CREATE ANY TABLE 权 限 ; 如 果 数 据 库 兼 容 性 在 以 下, 需 要 CREATE VIEW 或 者 CREATE ANY VIEW 权 限 ; 对 主 站 点 上 对 象 和 物 化 视 图 日 志 的 SELECT 权 限 或 者 SELECT ANY TABLE 系 统 权 限 如 果 主 站 点 不 是 本 地 数 据 库, 则 SELECT 权 限 必 须 授 权 给 一 个 主 站 点 用 户, 这 个 用 户 就 是 物 化 视 图 站 点 通 过 数 据 库 链 (database link) 连 接 到 主 站 点 的 用 户 ( 数 据 库 链 创 建 语 句 中 CONNECT TO 关 键 字 后 面 跟 的 用 户 ) (2) 创 建 者 不 是 所 有 者 如 果 物 化 视 图 的 创 建 者 不 是 所 有 者, 必 须 授 予 创 建 者 和 所 有 者 某 种 权 限 才 能 创 建 物 化 视 图 创 建 者 的 权 限 可 以 直 接 授 权 或 通 过 角 色 授 权, 但 是 所 有 者 的 权 限 必 须 通 过 明 确 授 权 获 得 也 就 是 说, 所 有 者 的 权 限 不 能 通 过 角 色 获 得 创 建 者 : CREATE ANY MATERIALIZED VIEW 系 统 权 限 所 有 者 : CREATE TABLE 或 者 CREATE ANY TABLE 权 限 ; 如 果 数 据 库 兼 容 性 在 以 下, 需 要 CREATE VIEW 或 者 CREATE ANY VIEW 权 限 ; 对 主 站 点 上 对 象 和 物 化 视 图 日 志 的 SELECT 权 限 或 者 SELECT ANY TABLE 系 统 权 限 如 果 主 站 点 不 是 本 地 数 据 库, 则 SELECT 权 限 必 须 授 权 给 一 个 主 站 点 用 户, 这 个 用 户 就 是 物 化 视 图 站 点 通 过 数 据 库 链 (database link) 连 到 主 站 点 的 用 户 ( 数 据 库 链 创 建 语 句 中 CONNECT TO 关 键 字 后 面 跟 的 用 户 ) (3) 刷 新 者 是 所 有 者 如 果 一 个 物 化 视 图 的 刷 新 者 同 时 也 是 物 化 视 图 的 拥 有 者, 这 个 用 户 需 要 主 站 点 上 对 象 和 物 化 视 图 日 志 的 SELECT 权 限 或 者 SELECT ANY TABLE 系 统 权 限 如 果 主 站 点 不 是 本 地 数 据 库, 则 SELECT 权 限 必 须 授 权 给 一 个 主 站 点 用 户, 这 个 用 户 就 是 物 化 视 图 站 点 通 过 数 据 库 链 (database link) 连 到 主 站 点 的 用 户 ( 数 据 库 链 创 建 语 句 中 CONNECT TO 关 键 字 后 面 跟 的 用 户 ) 权 限 可 以 通 过 直 接 授 权 或 通 过 角 色 授 权 (4) 刷 新 者 不 是 所 有 者 如 果 物 化 视 图 的 刷 新 者 不 是 所 有 者, 必 须 授 予 刷 新 者 和 所 有 者 某 种 权 限 这 些 权 限 可 以 直 接 授 权 或 通 过 角 色 授 权 刷 新 者 : ALTER ANY MATERIALIZED VIEW 系 统 权 限 所 有 者 : 主 站 点 上 对 象 和 物 化 视 图 日 志 的 SELECT 权 限 或 者 SELECT ANY TABLE 系 统 权 限 如 果 主 站 点 不 是 本 地 数 据 库, 则 SELECT 权 限 必 须 授 权 给 一 个 主 站 点 用 户, 这 个 用 户 就 是 物 化 视 图 站 点 通 过 数 据 库 链 (database link) 连 到 主 站 点 的 用 户 ( 数 据 库 链 创 建 语 句 中 CONNECT TO 关 键 字 后 面 跟 的 用 户 )
30 6. 物 化 视 图 中 的 数 据 子 集 在 某 些 情 况 下, 你 可 能 希 望 你 的 物 化 视 图 反 映 主 表 或 者 主 物 化 视 图 中 数 据 的 子 集 通 过 使 用 WHERE 语 句, 行 子 集 允 许 你 包 含 主 表 或 者 主 物 化 视 图 中 你 想 要 的 行 记 录 列 子 集 允 许 你 从 主 表 或 者 主 物 化 视 图 中 只 包 含 你 所 需 要 的 列 在 创 建 物 化 视 图 时, 通 过 在 SELECT 语 句 中 明 确 指 出 所 要 选 取 的 列 来 实 现 列 子 集 如 果 你 使 用 展 开 模 板 来 创 建 你 的 物 化 视 图, 那 么 你 可 以 在 可 更 新 物 化 视 图 上 定 义 列 子 集 (1) 使 用 数 据 子 集 的 一 些 原 因 降 低 网 络 流 量 : 在 一 个 使 用 列 子 集 的 物 化 视 图 中, 只 有 满 足 物 化 视 图 定 义 中 WHERE 条 件 语 句 的 修 改 才 会 传 播 到 物 化 视 图 站 点, 因 此 减 少 了 事 务 传 输 数 量, 降 低 了 网 络 流 量 保 护 敏 感 数 据 : 用 户 只 能 查 看 满 足 物 化 视 图 查 询 定 义 的 数 据 减 少 资 源 需 要 : 如 果 物 化 视 图 建 立 在 笔 记 本 上, 则 硬 盘 与 服 务 器 上 的 硬 盘 相 比 要 小 得 多 数 据 子 集 可 以 显 著 的 减 少 存 储 空 间 提 高 刷 新 性 能 : 由 于 较 少 的 数 据 传 播 到 物 化 视 图 站 点, 刷 新 执 行 的 更 加 迅 速 这 一 点 对 于 那 些 需 要 通 过 拨 号 连 接 来 刷 新 物 化 视 图 的 用 户 十 分 重 要 例 如 : 下 面 语 句 基 于 oe.orders@orc1.world 主 表 创 建 一 个 物 化 视 图, 而 且 只 包 括 sales_rep_id 等 于 173 的 记 录 CREATE MATERIALIZED VIEW oe.orders REFRESH FAST AS SELECT * FROM oe.orders@orc1.world WHERE sales_rep_id = 173; 主 表 中 sales_rep_id 不 等 于 173 的 记 录 被 排 除 出 物 化 视 图 (2) 带 子 查 询 的 物 化 视 图 上 面 的 例 子 是 针 对 单 个 表 的 如 果 创 建 基 于 多 个 表 的 物 化 视 图, 则 定 义 和 维 护 这 些 物 化 视 图 相 对 来 说 困 难 得 多 主 要 包 括 多 对 一 子 查 询 一 对 多 子 查 询 多 对 多 子 查 询 以 及 包 含 UNION 操 作 的 子 查 询 几 种 这 些 物 化 视 图 比 较 复 杂, 而 且 在 实 际 复 制 中 不 经 常 使 用, 因 此 这 里 不 再 详 细 描 述 如 果 对 这 部 分 有 兴 趣, 请 参 阅 Oracle9i Advanced Replication 3-18 Materialized Views with Subqueries 部 分 下 面 描 述 一 下 建 立 快 速 刷 新 子 查 询 物 化 视 图 的 条 件 物 化 视 图 子 查 询 约 束 带 子 查 询 的 物 化 视 图 为 了 能 达 到 快 速 刷 新 的 能 力, 必 须 满 足 许 多 约 束 条 件, 具 体 如 下 : 必 须 是 主 键 物 化 视 图 ; 物 化 视 图 日 志 必 须 包 括 某 些 在 子 查 询 中 出 现 的 列 ; 如 果 子 查 询 是 多 对 多 或 一 对 多 查 询, 连 接 列 中 非 主 键 的 部 分 必 须 包 括 在 物 化 视 图 日 志 中, 多 对 一 子 查 询 没 有 这 个 约 束 ; 子 查 询 必 须 是 肯 定 条 件, 比 如, 你 可 以 使 用 EXISTS, 但 是 不 能 使 用 NOT EXISTS; 子 查 询 必 须 使 用 EXISTS 连 接 到 嵌 套 层 (nested level), 不 能 使 用 IN; 每 张 表 只 允 许 一 个 EXISTS 表 达 式 ; 连 接 表 达 式 必 须 采 用 精 确 匹 配 或 等 于 连 接 ; 在 子 查 询 中, 每 张 表 只 能 被 连 接 一 次 ; 在 嵌 套 层 (nested level) 中, 每 张 表 必 须 有 主 键 存 在 ; 嵌 套 层 (nested level) 只 能 参 考 比 它 高 的 层 中 的 表 ; 子 查 询 可 以 包 含 AND 操 作, 但 是 每 个 OR 操 作 只 能 连 接 能 确 定 一 条 记 录 的 列, 子 查 询 中 多 个 OR 运 算 可 以 通 过 AND 连 接 ; 子 查 询 中 的 所 有 表 必 须 在 同 一 个 主 体 站 点 或 主 物 化 视 图 站 点 中 7. 决 定 物 化 视 图 的 快 速 刷 新 能 力
31 为 了 检 测 所 创 建 的 带 子 查 询 的 物 化 视 图 是 否 满 足 上 面 提 到 的 建 立 快 速 刷 新 物 化 视 图 的 种 种 约 束, 在 创 建 时, 如 果 违 反 任 何 约 束 条 件, 则 Oracle 会 返 回 错 误 提 示 如 果 在 建 立 物 化 视 图 时 指 明 强 制 刷 新 (force refresh), 则 不 会 收 到 任 何 错 误 信 息 因 为 在 强 制 刷 新 时, 如 果 不 能 执 行 快 速 刷 新 的 话,Oracle 会 自 动 执 行 完 全 刷 新 (complete refresh) 你 也 可 以 通 过 DBMS_MVIEW 包 中 的 EXPLAIN_MVIEW 过 程 来 检 测 已 存 在 的 物 化 视 图 甚 至 是 还 没 有 建 立 的 物 化 视 图 的 一 些 信 息, 具 体 信 息 如 下 : 物 化 视 图 的 各 种 能 力 ; 对 于 这 个 物 化 视 图 来 说 每 种 能 力 是 否 可 能 ; 如 果 不 可 能, 给 出 导 致 这 种 能 力 不 可 能 的 原 因 ; 这 些 信 息 可 以 存 储 在 varray 中, 也 可 以 存 储 在 MV_CAPABILITIES_TABLE 表 中 如 果 你 希 望 把 信 息 存 储 到 表 中, 那 么 你 必 须 在 执 行 EXPLAIN_MVIEW 存 储 过 程 以 前, 执 行 ORACLE_HOMErdbmsadmin 目 录 下 的 utlxmv.sql 脚 本 例 如 : 检 查 oe.orders 物 化 视 图 的 能 力 输 入 : EXECUTE DBMS_MVIEW.EXPLAIN_MVIEW ('oe.orders'); 或 者 如 果 物 化 视 图 不 存 在, 你 可 以 输 入 你 希 望 建 立 的 物 化 视 图 的 查 询 语 句 : DBMS_MVIEW.EXPLAIN_MVIEW ('SELECT * FROM oe.orders@orc1.world o WHERE EXISTS (SELECT * FROM oe.customers@orc1.world c WHERE o.customer_id = c.customer_id AND c.credit_limit > 500)'); 查 询 MV_CAPABILITIES_TABLE 表 得 到 结 果, 如 下 例 : SQL> set linesize 110 SQL> col RELATED_TEXT format a60 SQL> select capability_name, possible, related_text from mv_capabilities_table; CAPABILITY_NAME P RELATED_TEXT PCT N REFRESH_COMPLETE Y REFRESH_FAST N REWRITE N PCT_TABLE N 此 上 下 文 不 支 持 对 象 数 据 类 型 REFRESH_FAST_AFTER_INSERT N OE.CUSTOMERS REFRESH_FAST_AFTER_INSERT N OE.ORDERS REFRESH_FAST_AFTER_ONETAB_DML N REFRESH_FAST_AFTER_ANY_DML N REFRESH_FAST_PCT N REWRITE_FULL_TEXT_MATCH N OE.ORDERS REWRITE_FULL_TEXT_MATCH N OE.CUSTOMERS REWRITE_FULL_TEXT_MATCH N 此 上 下 文 不 支 持 对 象 数 据 类 型 REWRITE_PARTIAL_TEXT_MATCH N REWRITE_GENERAL N REWRITE_PCT N
32 已 选 择 16 行 8. 多 级 物 化 视 图 (Multitier Materialized Views) 物 化 视 图 的 创 建 可 以 基 于 表, 也 可 以 基 于 其 他 物 化 视 图, 这 种 物 化 视 图 叫 做 多 级 物 化 视 图 (multitier materialized views) 这 种 基 于 其 他 物 化 视 图 的 物 化 视 图 可 以 是 只 读 的 (read only) 也 可 以 是 可 更 新 的 (updatable) 当 使 用 多 级 物 化 视 图 时, 基 于 主 体 表 的 物 化 视 图 叫 做 第 一 层 物 化 视 图 (level 1 materialized view) 基 于 第 一 层 物 化 视 图 的 物 化 视 图 叫 做 第 二 层 物 化 视 图 (level 2 materialized view) 下 一 层 是 第 三 层, 依 此 类 推 作 为 其 他 物 化 视 图 的 主 对 象 的 物 化 视 图 叫 做 主 物 化 视 图 (master materialized view) 处 在 任 何 一 层 的 物 化 视 图 都 可 以 成 为 主 物 化 视 图, 而 且 可 以 存 在 多 个 其 他 的 物 化 视 图 基 于 同 一 个 主 物 化 视 图 主 物 化 视 图 和 主 站 点 中 的 主 表 起 相 同 的 作 用 也 就 是 说 把 第 二 层 物 化 视 图 上 的 改 变 推 到 第 一 层 物 化 视 图 上 的 操 作 和 把 第 一 次 物 化 视 图 上 的 改 变 推 到 主 表 上 的 操 作 是 完 全 一 样 的 在 主 物 化 视 图 站 点 必 须 注 册 一 个 接 收 者 (receiver) 在 多 层 物 化 视 图 站 点 中 接 收 者 负 责 接 受 和 应 用 来 自 主 物 化 视 图 站 点 传 播 者 的 延 迟 事 务 多 层 物 化 视 图 (Multitier materialized views) 在 设 计 复 制 环 境 时 提 供 了 很 高 的 灵 活 性 一 些 物 化 视 图 站 点 不 需 要 复 制 主 表 中 所 有 的 数 据, 实 际 上, 这 些 站 点 可 能 根 本 没 有 足 够 的 空 间 存 储 这 些 数 据 另 外, 只 复 制 较 少 的 数 据 意 味 着 在 网 络 上 活 动 的 数 据 也 较 少 使 用 多 层 物 化 视 图 的 限 制 条 件 : 主 物 化 视 图 和 基 于 主 物 化 视 图 的 物 化 视 图 都 必 须 满 足 下 列 条 件 : 1) 必 须 是 主 键 物 化 视 图 ; 2) 所 在 数 据 库 兼 容 性 等 于 或 者 高 于 主 物 化 视 图 的 一 些 限 制 下 列 类 型 的 物 化 视 图 不 能 作 为 可 更 新 物 化 视 图 的 主 物 化 视 图 1) ROWID 物 化 视 图 ; 2) 复 杂 物 化 视 图 ; 3) 只 读 物 化 视 图 不 过 这 三 种 物 化 视 图 可 以 成 为 只 读 物 化 视 图 的 主 物 化 视 图 基 于 物 化 视 图 的 可 更 新 物 化 视 图 的 额 外 限 制 : 1) 所 属 的 物 化 视 图 组 必 须 和 主 物 化 视 图 站 点 上 的 物 化 视 图 组 同 名 ; 2) 必 须 和 主 物 化 视 图 不 在 同 一 个 数 据 库 上 ; 3) 必 须 基 于 可 更 新 物 化 视 图, 不 能 基 于 只 读 物 化 视 图 ; 4) 主 站 点 上 的 主 物 化 视 图 组 必 须 存 在 于 PUBLIC 方 案 中 9. 包 含 用 户 定 义 类 型 的 物 化 视 图 Oracle 的 复 制 支 持 用 户 自 定 义 类 型 数 据 Oracle 不 但 支 持 行 对 象 (row object) 和 列 对 象 (column object) 而 且 还 支 持 collections 的 复 制 Collection 包 括 基 于 用 户 自 定 义 类 型 的 数 组 (VARRAY) 和 嵌 套 表 (nested table) 使 用 用 户 自 定 义 类 型 需 要 注 意 几 点 : 主 站 点 和 物 化 视 图 站 点 的 数 据 库 兼 容 性 等 于 或 高 于 9.0.1; 如 果 主 对 象 包 含 用 户 自 定 义 类 型, 则 不 能 创 建 refresh-on-commit 物 化 视 图 ; 高 级 复 制 不 支 持 对 象 的 继 承 物 化 视 图 复 制 中 对 用 户 自 定 义 类 型 的 要 求 和 限 制 于 多 主 环 境 中 的 限 制 比 较 类 似, 这 里 不 再 详
33 细 描 述, 如 果 对 这 部 分 内 容 感 兴 趣, 请 参 考 Oracle9i Advanced Replication 3-36 Materialized Views with User-Defined Types 10. 主 站 点 的 物 化 视 图 注 册 11. 主 站 点 和 主 物 化 视 图 站 点 机 制 12. 物 化 视 图 站 点 机 制 13. 组 织 机 制 14. 刷 新 处 理 三. 展 开 模 板 (Deployment Templates) 的 概 念 和 构 架 四. 多 主 复 制 和 物 化 视 图 复 制 区 别
34 附 录 一 多 主 体 复 制 站 点 的 配 置 步 骤 以 下 操 作 如 果 不 是 明 确 指 出, 均 在 master 数 据 库 中 运 行 1 检 查 安 装 好 的 数 据 库 是 否 支 持 高 级 复 制 : SQL> select value from v$option where parameter='advanced replication'; VALUE TRUE 确 保 返 回 的 结 果 是 TRUE, 如 果 是 FALSE 则 表 示 需 要 重 新 安 装 oracle 的 高 级 复 制 部 件 2 确 保 数 据 库 的 初 始 化 参 数 中 global_name=true, 同 时 因 为 高 级 复 制 依 靠 于 JOB 来 实 现, 所 以 必 须 保 证 job_queue_processes 参 数 大 于 0, 我 们 可 以 设 置 为 10 确 保 init.ora 中 包 含 一 下 初 始 化 参 数 定 义 : global_names = true open_links = 4 ( 备 注 : 一 个 process 需 要 4 个 link, 如 果 我 们 创 建 了 多 个 dblink, 并 且 同 时 运 行, 那 么 可 以 把 此 参 数 设 大, 比 如 以 下 环 境 中 我 们 应 该 设 置 为 open_links = 8) job_queue_processes = 10 3 用 sysdba 权 限 分 别 登 录 master 和 snap 数 据 库, 检 查 双 方 的 global_name, 必 须 保 证 两 边 的 域 名 相 同 才 可 以 建 立 正 确 的 dblink select * from global_name; 假 设 显 示 结 果 是 master.com, 那 么 表 示 该 数 据 库 的 域 名 是 com 那 么 我 们 可 以 设 置 snap 库 的 global_name 是 snap.com 使 用 以 下 SQL 设 置 global_name: alter database rename global_name to master.com; 4 创 建 一 个 PUBLIC DBLINK 连 接 到 snap( 此 步 骤 可 以 省 略 ) CREATE PUBLIC DATABASE LINK "snap.com" USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS= (PROTOCOL = TCP)(Host = )(Port = 1521)))(CONNECT_DATA = (SID = test1)(server = DEDICATED)))'; 运 行 以 下 SQL 检 查 dblink 创 建 是 否 成 功, 如 果 结 果 返 回 snap 的 global_name 则 表 示 成 功 SQL> select * from global_name@snap.com; GLOBAL_NAME
35 SNAP.COM 5 创 建 repadmin 用 户, 用 于 管 理 高 级 复 制 create user repadmin identified by repadmin default tablespace users temporary tablespace temp; execute dbms_defer_sys.register_propagator('repadmin'); grant execute any procedure to repadmin; execute dbms_repcat_admin.grant_admin_any_repgroup('repadmin'); execute dbms_repcat_admin.grant_admin_any_schema(username => '"REPADMIN"'); grant comment any table to repadmin; grant lock any table to repadmin; grant select any dictionary to repadmin; 6 登 录 snap 数 据 库, 重 复 上 面 的 操 作, 创 建 public dblink 以 及 repadmin 用 户 7 用 repadmin 用 户 登 录 master, 创 建 私 有 数 据 库 连 接 create database link "snap.com" connect to repadmin identified by repadmin; 如 果 第 4 步 省 略 了, 没 有 创 建 公 有 数 据 库 连 接, 则 需 要 如 下 创 建, 在 创 建 含 有 qualifier 的 多 个 数 据 库 连 接 时 也 只 能 使 用 下 面 的 方 法 : create database link "snap.com@perday" connect to repadmin identified by repadmin USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS= (PROTOCOL = TCP)(Host = )(Port = 1521)))(CONNECT_DATA = (SID = test1)(server = DEDICATED)))'; create database link "snap.com@perhour" connect to repadmin identified by repadmin USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS= (PROTOCOL = TCP)(Host = )(Port = 1521)))(CONNECT_DATA = (SID = test1)(server = DEDICATED)))'; 检 查 是 否 创 建 成 功 SQL> select * from global_name@snap.com@perday; GLOBAL_NAME SNAP.COM 8 创 建 主 体 复 制 组, 添 加 复 制 对 象, 操 作 的 数 据 库 将 称 为 主 体 定 义 站 点 创 建 每 天 复 制 一 次 的 组 execute dbms_repcat.create_master_repgroup(gname => 'rep_gp_day',group_comment => 'replcation perday',qualifier => '@PERDAY'); 创 建 每 小 时 复 制 一 次 的 组 execute dbms_repcat.create_master_repgroup(gname => 'rep_gp_hour',group_comment => 'replcation perhour',qualifier => '@PERHOUR'); 备 注 : 以 下 操 作 只 以 rep_gp_day 复 制 组 为 例, 对 于 rep_gp_hour 复 制 组 则 应 该 作 相 应 更 改
Oracle高级复制冲突解决机制的研究
Oracle dbms_rectifier_diff Oracle : eygle (eygle.com@gmail.com dbms_rectifier_diff Oracle dbms_rectifier_diff : http://www.eygle.com/archives/2005/01/eoadbms_rectifi.html DIFFERENCES Oracle dbms_rectifier_diff.differences
More informationOracle高级复制配置手册_业务广告_.doc
Oracle 高 级 复 制 配 置 手 册 作 者 : 铁 钉 Q Q: 5979404 MSN: nail.cn@msn.com Mail: nail.cn@msn.com Blog: http://nails.blog.51cto.com Materialized View Replication 复 制 模 式 实 现 了 单 主 机 对 多 个 复 制 站 点 的 数 据 同 步. 在 主
More informationebook 96-16
16 13 / ( ) 16-1 SQL*Net/Net8 SQL*Net/Net8 SQL*Net/Net8 16-1 / S Q L SQL*Net V2 N e t 8 S Q L * N e t N e t ( ) 16.1 S Q L O r a c l e S Q L 16 401 ) ( H R _ L I N K create database link p u b l i c (
More informationuntitled
ArcSDE ESRI ( ) High availability Backup & recovery Clustering Replication Mirroring Standby servers ArcSDE % 95% 99.9% 99.99% 99.999% 99.9999% 18.25 / 8.7 / 52.5 / 5.25 / 31.8 / Spatial Geodatabase
More information回滚段探究
oracle oracle internal DBA oracle document oracle concepts oracle document oracle DBWR update t set object_id = '0' where object_id = '12344'; 1 row updated. commit; Commit complete. 0 12344 12344 0 10%
More information學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘
ITE 資 訊 專 業 人 員 鑑 定 資 料 庫 系 統 開 發 與 設 計 實 務 試 卷 編 號 :IDS101 注 意 事 項 一 本 測 驗 為 單 面 印 刷 試 題, 共 計 十 三 頁 第 二 至 十 三 頁 為 四 十 道 學 科 試 題, 測 驗 時 間 90 分 鐘 : 每 題 2.5 分, 總 測 驗 時 間 為 90 分 鐘 二 執 行 CSF 測 驗 系 統 -Client
More informationPowerPoint Presentation
数 据 库 培 训 项 目 研 究 Oracle 索 引 探 究 B*tree 索 引 与 位 图 索 引 的 特 点 作 者 : 赵 超 2008 年 12 月 18 日 实 验 环 境 Windows-server2003 内 存 :2G Oracle 10.2.0 ORACLE_SID=orcl 索 引 类 型 B*tree 索 引 ( 默 认 方 式 ) 位 图 索 引 (bitmap) 反
More informationOracle 4
Oracle 4 01 04 Oracle 07 Oracle Oracle Instance Oracle Instance Oracle Instance Oracle Database Oracle Database Instance Parameter File Pfile Instance Instance Instance Instance Oracle Instance System
More informationebook10-5
Oracle 7.x RDBMS 5 Oracle S Y S S Y S T E M O r a c l e 5.1 O r a c l e R D B M S O r a c l e O r a c l e 5.2 SYS SYSTEM S Y S S Y S T E M O r a c l e S Y S V $ D B A C O N N E C T R E S O U R C E S Y
More informationOracle Database 10g: SQL (OCE) 的第一堂課
商 用 資 料 庫 的 第 一 堂 課 中 華 大 學 資 訊 管 理 系 助 理 教 授 李 之 中 http://www.chu.edu.tw/~leecc 甲 骨 文 俱 樂 部 @Taiwan Facebook 社 團 https://www.facebook.com/groups/365923576787041/ 2014/09/15 問 題 一 大 三 了, 你 為 什 麼 還 在 這
More information6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM
CHAPTER 6 SQL SQL SQL 6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM 3. 1986 10 ANSI SQL ANSI X3. 135-1986
More information目錄 C ontents Chapter MTA Chapter Chapter
目錄 C ontents Chapter 01 1-1 MTA...1-2 1-2...1-3 1-3...1-5 1-4...1-10 Chapter 02 2-1...2-2 2-2...2-3 2-3...2-7 2-4...2-11...2-16 Chapter 03 3-1...3-2 3-2...3-8 3-3 views...3-16 3-4...3-24...3-33 Chapter
More information1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2
CHAPTER 1 Understanding Core Database Concepts 1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2 1 Understanding Core Database Concepts
More information11.2 overview
1 < 在 此 处 插 入 图 片 > Explain Plan 命 令 说 明 Maria Colgan 免 责 声 明 本 讲 座 旨 在 为 您 提 供 有 关 如 何 阅 读 SQL 执 行 计 划 的 说 明, 并 帮 助 您 确 定 该 计 划 是 否 满 足 您 的 要 求 本 讲 座 并 不 能 使 您 一 举 成 为 优 化 器 专 家, 也 无 法 使 您 具 备 轻 松 调 整
More informationuntitled
OO 1 SQL Server 2000 2 SQL Server 2000 3 SQL Server 2000 DDL 1 2 3 DML 1 INSERT 2 DELETE 3 UPDATE SELECT DCL 1 SQL Server 2 3 GRANT REVOKE 1 2 1 2 3 4 5 6 1 SQL Server 2000 SQL Server SQL / Microsoft SQL
More informationuntitled
Database System Principle Database System Principle 1 SQL 3.1 SQL 3.2-3.3 3.4 3.5 3.6 Database System Principle 2 3.1 SQL SQL Structured Query Language SQL Database System Principle 3 SQL 3.1.1 SQL 3.1.2
More informationuntitled
Chapter 01 1.0... 1-2 1.1... 1-2 1.1.1...1-2 1.1.2...1-4 1.1.2.1... 1-6 1.1.2.2... 1-7 1.1.2.3... 1-7 1.1.2.4... 1-7 1.1.2.5... 1-8 1.1.2.6... 1-8 1.1.3??...1-8 1.1.4...1-9 1.2...1-12 1.3...1-14 1.4...1-17
More information一步一步教你搞网站同步镜像!|动易Cms
一 步 一 步 教 你 搞 网 站 同 步 镜 像! 动 易 Cms 前 几 天 看 见 论 坛 里 有 位 朋 友 问 一 个 关 于 镜 像 的 问 题, 今 天 刚 好 搞 到 了 一 个, 于 是 拿 出 来 和 大 家 一 起 分 享 了! 1. 介 绍 现 在 的 网 站 随 着 访 问 量 的 增 加, 单 一 服 务 器 无 法 承 担 巨 大 的 访 问 量, 有 没 有 什 么
More informationSQL Server SQL Server SQL Mail Windows NT
... 3 11 SQL Server... 4 11.1... 7 11.2... 9 11.3... 11 11.4... 30 11.5 SQL Server... 30 11.6... 31 11.7... 32 12 SQL Mail... 33 12.1Windows NT... 33 12.2SQL Mail... 34 12.3SQL Mail... 34 12.4 Microsoft
More information数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护
数 据 库 系 统 基 础 1/54 数 据 库 系 统 基 础 哈 尔 滨 工 业 大 学 2011.~2012. 数 据 库 系 统 基 础 2/54 第 6 章 数 据 库 管 理 与 维 护 数 据 库 系 统 基 础 3/54 第 6 章 数 据 库 管 理 与 维 护 6.1 数 据 库 管 理 员 的 基 本 职 责 6.2 数 据 库 存 储 与 性 能 管 理 6.3 数 据 库
More information未命名
附录三 ADS- MySQL 基础语法偏表 类别语法偏类 MySQL 语法 ADS 语法备注 型 Utility DESCRIBE {DESCRIBE DESC} tbl_name [col_name wild] {DESCRIBE DESC} dbname.tbl_name EXPLAIN 负偏 {EXPLAIN} [explain_type] explainable_stmt {EXPLAIN}
More information目錄
資 訊 素 養 線 上 教 材 單 元 五 資 料 庫 概 論 及 Access 5.1 資 料 庫 概 論 5.1.1 為 什 麼 需 要 資 料 庫? 日 常 生 活 裡 我 們 常 常 需 要 記 錄 一 些 事 物, 以 便 有 朝 一 日 所 記 錄 的 事 物 能 夠 派 得 上 用 場 我 們 能 藉 由 記 錄 每 天 的 生 活 開 銷, 就 可 以 在 每 個 月 的 月 底 知
More informationSystem Global Area, Oracle Background process Oracle, Server Process user process, user process : SQL*PLUS SYSTEM SQL> select name from v$datafile; NA
ORACLE By Chao_Ping and Parrotao 1 Oracle9i, SGA 2 Oracle9i 3, 4, Oracle? Oracle??? Oracle 1 Overview Oracle, Datafile, Background process, System Global Area, Server Process User Process System Global
More informationKillTest 质量更高 服务更好 学习资料 半年免费更新服务
KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-814 Title : Sun Certified MySQL Associate Version : Demo 1 / 12 1.Adam works as a Database Administrator for a company. He creates a table
More information教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表 中 的 行 从 表 中 删 除 行 描 述 约 束 创 建
2 第 二 讲 创 建 和 管 理 表 与 简 单 记 录 操 作 Copyright SWFC-CISC, 2013. All rights reserved. 教 学 目 标 描 述 主 要 数 据 库 对 象 创 建 表 描 述 列 定 义 时 可 用 的 数 据 类 型 改 变 表 的 定 义 删 除 改 名 和 截 断 表 描 述 每 个 DML 语 句 插 入 行 到 表 中 更 新 表
More information习题1
习 题 1 数 据 库 系 统 基 本 概 念 1.1 名 词 解 释 DB DB 是 长 期 存 储 在 计 算 机 内 有 组 织 的 统 一 管 理 的 相 关 数 据 的 集 合 DB 能 为 各 种 用 户 共 享, 具 有 较 小 冗 余 度 数 据 间 联 系 紧 密 而 又 有 较 高 的 数 据 独 立 性 等 特 点 DBMS 是 位 于 用 户 与 操 作 系 统 之 间 的
More information支付宝2011年 IT资产与费用预算
OceanBase 支 持 ACID 的 可 扩 展 关 系 数 据 库 qushan@alipay.com 2013 年 04 月 关 系 数 据 库 发 展 1970-72:E.F.Codd 数 据 库 关 系 模 式 20 世 纨 80 年 代 第 一 个 商 业 数 据 库 Oracle V2 SQL 成 为 数 据 库 行 业 标 准 可 扩 展 性 Mainframe: 小 型 机 =>
More information基于UML建模的管理管理信息系统项目案例导航——VB篇
PowerBuilder 8.0 PowerBuilder 8.0 12 PowerBuilder 8.0 PowerScript PowerBuilder CIP PowerBuilder 8.0 /. 2004 21 ISBN 7-03-014600-X.P.. -,PowerBuilder 8.0 - -.TP311.56 CIP 2004 117494 / / 16 100717 http://www.sciencep.com
More informationebook46-23
23 Access 2000 S Q L A c c e s s S Q L S Q L S Q L S E L E C T S Q L S Q L A c c e s s S Q L S Q L I N A N S I Jet SQL S Q L S Q L 23.1 Access 2000 SQL S Q L A c c e s s Jet SQL S Q L U N I O N V B A S
More informationebook 165-5
3 5 6 7 8 9 [ 3. 3 ] 3. 3 S Q L S Q 4. 21 S Q L S Q L 4 S Q 5 5.1 3 ( ) 78 5-1 3-8 - r e l a t i o n t u p l e c a r d i n a l i t y a t t r i b u t e d e g r e e d o m a i n primary key 5-1 3 5-1 S #
More information季刊9web.indd
在 全 国 现 场 会 上 成 功 展 示 全 国 烟 叶 收 购 暨 现 代 烟 草 农 业 建 设 现 场 会 7 月 6 日 至 8 日 在 昆 明 召 开 在 国 家 局 的 领 导 下, 由 我 司 技 术 开 发 的 烟 站 ( 单 元 ) 烟 叶 管 理 信 息 系 统 在 现 场 会 上 成 功 展 示, 并 得 到 参 会 领 导 及 代 表 们 的 关 注 与 认 可 该 系 统
More information目錄... ivv...vii Chapter DETECT
... ivv...vii Chapter 1 1.1... 5 1.2... 6 1.3 DETECT... 11 1.3.1... 12 1.3.1.1...12 1.3.1.2...13 1.3.1.3...14 1.3.1.4...15 1.3.1.5...15 1.3.1.6...16 1.3.2 DETECT... 17 1.3.3... 19 1.3.4... 20... 22 Chapter
More informationMicrosoft PowerPoint - 05-SQL3-advanced.ppt
SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu Aggregate Functions Functions that take a set of tuples and compute an aggregated value. Five standard functions: count, min, max, avg, sum
More informationSQL: Interactive Queries (2)
SQL: Interactive Queries (2) Prof. Weining Zhang Cs.utsa.edu Aggregate Functions Functions that take a set of tuples and compute an aggregated value. Five standard functions: count, min, max, avg, sum
More information使用SQL Developer
使 用 SQL Developer 达 成 的 目 标 / 方 案 1 创 建 一 个 新 的 数 据 库 连 接 ; 2 在 SQL Developer 中 查 看 数 据 库 对 象 的 信 息 修 改 数 据 ; 3 在 SQL Developer 中 创 建 表 ; 4 在 SQL Developer 中 创 建 索 引 ; 5 在 SQL Developer 中 创 建 函 数 ; 6 在
More informationA API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内
A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内 容 分 发 网 络 Alibaba Cloud Content Delivery Network 一
More information錄...1 說...2 說 說...5 六 率 POST PAY PREPAY DEPOSIT 更
AX5000 Version 1.0 2006 年 9 錄...1 說...2 說...3...4 說...5 六...6 6.1 率...7 6.2 POST PAY...8 6.3 PREPAY DEPOSIT...9 6.4...10 6.5...11 更...12...12 LCD IC LED Flash 更 兩 RJ11 ( ) DC ON OFF ON 狀 狀 更 OFF 復 狀 說
More informationebook 132-2
2 SQL Server 7.0 SQL Server SQL Server 7 SQL Server 7 5 2.1 SQL Server 7 SQL Server 7 SQL Server SQL Server SQL Server 2.1.1 SQL Server Windows NT/2000 Windows 95/98 ( r a n d o m access memory R A M )
More informationR D B M S O R D B M S R D B M S / O R D B M S R D B M S O R D B M S 4 O R D B M S R D B M 3. ORACLE Server O R A C L E U N I X Windows NT w w
1 1.1 D B M S To w e r C D 1. 1 968 I B M I M S 2 0 70 Cullinet Software I D M S I M S C O D A S Y L 1971 I D M S containing hierarchy I M S I D M S I M S I B M I M S I D M S 2 2. 18 R D B M S O R D B
More informationRUN_PC連載_12_.doc
PowerBuilder 8 (12) PowerBuilder 8.0 PowerBuilder PowerBuilder 8 PowerBuilder 8 / IDE PowerBuilder PowerBuilder 8.0 PowerBuilder PowerBuilder PowerBuilder PowerBuilder 8.0 PowerBuilder 6 PowerBuilder 7
More information三. 发现表被删除, 开始着手解决 1. 该表所在表空间离线 ( 确保删除表所在位置不会被重写 ) SQL> alter tablespace raw_odu offline; Tablespace altered. 2. 通过 logmnr, 找出被删除的数据 data _object _id 1
使用 odu 恢复被 drop 表过程 一. 数据库版本 SQL> select * from v$version; BANNER ---------------------------------------------------------------- Oracle9i Enterprise Edition Release 9.2.0.8.0 - Production PL/SQL Release
More informationOracle Reports培训教程20.doc
HAND : : 2000 11 28 : 2000 11 28 : MD060 : 1 : 1 2 MD060 2000/02/2 1 1 1 1 ii MD060...ii...4...4...4...4...4...4...4...4 Date Model...4...4...4...4...4...4...4...4 Layout...4...4...4...4...4...4 Parameter
More informationuntitled
http://idc.hust.edu.cn/~rxli/ 1.1 1.2 1.3 1.4 1.5 1.6 2 1.1 1.1.1 1.1.2 1.1.3 3 1.1.1 Data (0005794, 601,, 1, 1948.03.26, 01) (,,,,,) 4 1.1.1 Database DB 5 1.1.1 (DBMS) DDL ( Create, Drop, Alter) DML(
More information软件测试(TA07)第一学期考试
一 判 断 题 ( 每 题 1 分, 正 确 的, 错 误 的,20 道 ) 1. 软 件 测 试 按 照 测 试 过 程 分 类 为 黑 盒 白 盒 测 试 ( ) 2. 在 设 计 测 试 用 例 时, 应 包 括 合 理 的 输 入 条 件 和 不 合 理 的 输 入 条 件 ( ) 3. 集 成 测 试 计 划 在 需 求 分 析 阶 段 末 提 交 ( ) 4. 单 元 测 试 属 于 动
More informationOlav Lundström MicroSCADA Pro Marketing & Sales 2005 ABB - 1-1MRS755673
Olav Lundström MicroSCADA Pro Marketing & Sales 2005 ABB - 1 - Contents MicroSCADA Pro Portal Marketing and sales Ordering MicroSCADA Pro Partners Club 2005 ABB - 2 - MicroSCADA Pro - Portal Imagine that
More informationMicrosoft Word - 序+目錄.doc
ORACLE 公 司 的 專 業 認 證 是 當 今 市 場 上 公 認 價 值 最 高, 最 具 鑑 別 力 的 認 證 目 前 全 球 有 超 過 50 萬 以 上 人 已 透 過 Oracle Certification Program 取 得 專 業 認 證, 成 為 職 場 新 鮮 人 的 首 選 認 證, 它 具 有 以 下 三 大 優 勢 : 一 更 多 的 工 作 機 會, 二 更
More informationoracle-Ess-05.pdf
5 135 1 3 6 O r a c l e 1 3 7 1 3 8 O r a c l e 1 3 9 C O N N E C T R E S O U R C E D B A S Y S O P E R S Y S D B A E X P _ F U L L _ D A T A B A S E 1 4 0 I M P _ F U L L _ D A T A B A S E D E L E T E
More informationebook140-9
9 VPN VPN Novell BorderManager Windows NT PPTP V P N L A V P N V N P I n t e r n e t V P N 9.1 V P N Windows 98 Windows PPTP VPN Novell BorderManager T M I P s e c Wi n d o w s I n t e r n e t I S P I
More informationP4i45GL_GV-R50-CN.p65
1 Main Advanced Security Power Boot Exit System Date System Time Floppy Drives IDE Devices BIOS Version Processor Type Processor Speed Cache Size Microcode Update Total Memory DDR1 DDR2 Dec 18 2003 Thu
More informationSA-DK2-U3Rユーザーズマニュアル
USB3.0 SA-DK2-U3R 2007.0 2 3 4 5 6 7 8 System Info. Manual Rebuild Delete RAID RAID Alarm Rebuild Rate Auto compare Temp Management Load Default Elapse time Event Log 0 2 3 4 2 3 4 ESC 5
More informationepub83-1
C++Builder 1 C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r 1.1 1.1.1 1-1 1. 1-1 1 2. 1-1 2 A c c e s s P a r a d o x Visual FoxPro 3. / C / S 2 C + + B u i l d e r / C
More informationPartition Key: 字 符 串 类 型, 表 示 当 前 Entity 的 分 区 信 息 这 个 Property 对 于 Table Service 自 动 纵 向 和 横 向 扩 展 至 关 重 要 Row Key: 字 符 串 类 型, 在 给 定 Partition Key 的
4.2 使 用 Table Service Table Service 相 对 来 说 是 三 个 Storage Service 中 最 好 理 解 和 最 易 于 接 受 的, 它 主 要 用 来 存 储 结 构 化 数 据 但 是 Table Service 却 并 不 是 一 个 关 系 型 数 据 库 Table Service 由 两 个 部 分 组 成 :Table 和 Entity
More informationRUN_PC連載_8_.doc
PowerBuilder 8 (8) Web DataWindow ( ) DataWindow Web DataWindow Web DataWindow Web DataWindow PowerDynamo Web DataWindow / Web DataWindow Web DataWindow Wizard Web DataWindow Web DataWindow DataWindow
More information( Version 0.4 ) 1
( Version 0.4 ) 1 3 3.... 3 3 5.... 9 10 12 Entities-Relationship Model. 13 14 15.. 17 2 ( ) version 0.3 Int TextVarchar byte byte byte 3 Id Int 20 Name Surname Varchar 20 Forename Varchar 20 Alternate
More information基于ECO的UML模型驱动的数据库应用开发1.doc
ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip
More informationMicrosoft Word - SupplyIT manual 3_cn_david.doc
MR PRICE Supply IT Lynette Rajiah 1 3 2 4 3 5 4 7 4.1 8 4.2 8 4.3 8 5 9 6 10 6.1 16 6.2 17 6.3 18 7 21 7.1 24 7.2 25 7.3 26 7.4 27 7.5 28 7.6 29 7.7 30 7.8 31 7.9 32 7.10 32 7.11 33 7.12 34 1 7.13 35 7.14
More informationuntitled
-JAVA 1. Java IDC 20 20% 5 2005 42.5 JAVA IDC JAVA 60% 70% JAVA 3 5 10 JAVA JAVA JAVA J2EE J2SE J2ME 70% JAVA JAVA 20 1 51 2. JAVA SUN JAVA J2EE J2EE 3. 1. CSTP CSTP 2 51 2. 3. CSTP IT CSTP IT IT CSTP
More information第4单元 创建数据类型和表
138 MCSE 2000 SQL 2000 8.1 Stored Procedures Microsoft SQL Server 2000 ( ) 8.1.1 Transact-SQL SQL Server (System Stored Procedures,sp_), master ( sp_prefix ) (Local Stored Procedures), (Temporary Stored
More information123
資 訊 管 理 系 資 料 庫 教 學 帄 台 MTA 資 料 庫 國 際 證 照 題 庫 分 析 指 導 教 授 : 馮 曼 琳 教 授 組 員 名 單 : 陳 雅 紋 學 號 998C030 蔡 宥 為 學 號 998C114 陳 韋 婷 學 號 998C168 中 華 民 國 一 零 三 年 五 月 I 誌 謝 本 專 題 報 告 得 以 順 利 完 成, 首 先 要 感 謝 恩 師 馮 曼
More information01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysa
6 01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS 6-1 06 228 6-1 SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysadmin 6-1 SQL Server 2008 SSIS SQL Server (dbo) master
More informationBusiness Objects 5.1 Windows BusinessObjects 1
Business Objects 5.1 Windows BusinessObjects 1 BusinessObjects 2 BusinessObjects BusinessObjects BusinessObjects Windows95/98/NT BusinessObjects Windows BusinessObjects BusinessObjects BusinessObjects
More informationJunos Pulse Mobile Security R1 2012, Juniper Networks, Inc.
Junos Pulse Mobile Security 4.0 2012 6 R1 2012, Juniper Networks, Inc. Junos Pulse Mobile Security Juniper Networks, Inc. 1194 North Mathilda Avenue Sunnyvale, California 94089 408-745-2000 www.juniper.net
More informationepub 61-2
2 Web Dreamweaver UltraDev Dreamweaver 3 We b We b We Dreamweaver UltraDev We b Dreamweaver UltraDev We b We b 2.1 Web We b We b D r e a m w e a v e r J a v a S c r i p t We b We b 2.1.1 Web We b C C +
More informationCDWA Mapping. 22 Dublin Core Mapping
(version 0.23) 1 3... 3 3 3 5 7 10 22 CDWA Mapping. 22 Dublin Core Mapping. 24 26 28 30 33 2 3 X version 0.2 ( ) 4 Int VarcharText byte byte byte Id Int 10 Management Main Code Varchar 30 Code Original
More informationRunPC2_.doc
PowerBuilder 8 (5) PowerBuilder Client/Server Jaguar Server Jaguar Server Connection Cache Thin Client Internet Connection Pooling EAServer Connection Cache Connection Cache Connection Cache Connection
More informationIBM Rational ClearQuest Client for Eclipse 1/ IBM Rational ClearQuest Client for Ecl
1/39 Balaji Krish,, IBM Nam LeIBM 2005 4 15 IBM Rational ClearQuest ClearQuest Eclipse Rational ClearQuest / Eclipse Clien Rational ClearQuest Rational ClearQuest Windows Web Rational ClearQuest Client
More informationWindows 2000/2003/xp (FRS) SYSVOL Domain Policies Scripts Staging Domain staging areas Domain name staging areas Domain name Policies Scripts AD 1.2 A
AD 1 AD AD AD 1.1 AD AD ----AD SYSVOL 1 AD Ntds.dit Edbxxxxx.log Edb.chk Res1.log Res2.log Ntds.dit (10 MB) Edb.log Edb.log Edb.log Edbxxxxx.log 00001 Active Directory edb.log Edbxxxxx.log Res1.log Res2.log
More information2 2 3 DLight CPU I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AM
Oracle Solaris Studio 12.2 DLight 2010 9 2 2 3 DLight 3 3 6 13 CPU 16 18 21 I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AMP Apache MySQL
More information自动化接口
基 于 文 件 的 数 据 交 换 的 注 意 事 项 1 SPI 2 COMOS Automation 操 作 手 册 通 用 Excel 导 入 3 通 过 OPC 客 户 端 的 过 程 可 视 化 4 SIMIT 5 GSD 6 05/2016 V 10.2 A5E37093378-AA 法 律 资 讯 警 告 提 示 系 统 为 了 您 的 人 身 安 全 以 及 避 免 财 产 损 失,
More informationEJB-Programming-4-cn.doc
EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session
More information1 o o o CPU o o o o o SQL Server 2005 o CPU o o o o o SQL Server o Microsoft SQL Server 2005
1 o o o CPU o o o o o SQL Server 2005 o CPU o o o o o SQL Server o Microsoft SQL Server 2005 1 1...3 2...20 3...28 4...41 5 Windows SQL Server...47 Microsoft SQL Server 2005 DBSRV1 Microsoft SQL Server
More informationMicrosoft Word - MTK平台生产软件使用说明.doc
MTK 1. 1.1 SMT BSN 1.2 1 IMEI 2. 2 2.1 MTK Flash Flash NAND FlashMP3 1 SMT SOFT Flash 2 SOFT MKT USB-RS232 921600 8 2.2 COPY 2.3 USB PCUSB USB 8 USB USB USB-RS232 (USB ) RS232 PCRS232 8 4V2A 2.4 DA File
More informationMicrosoft Word - template.doc
HGC efax Service User Guide I. Getting Started Page 1 II. Fax Forward Page 2 4 III. Web Viewing Page 5 7 IV. General Management Page 8 12 V. Help Desk Page 13 VI. Logout Page 13 Page 0 I. Getting Started
More informationPowerPoint 演示文稿
Hadoop 生 态 技 术 在 阿 里 全 网 商 品 搜 索 实 战 阿 里 巴 巴 - 王 峰 自 我 介 绍 真 名 : 王 峰 淘 宝 花 名 : 莫 问 微 博 : 淘 莫 问 2006 年 硕 士 毕 业 后 加 入 阿 里 巴 巴 集 团 淘 及 搜 索 事 业 部 ( 高 级 技 术 与 家 ) 目 前 负 责 搜 索 离 线 系 统 团 队 技 术 方 向 : 分 布 式 计 算
More informationDB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( ) SQL ( ) DB2 SQL DB2 DB2 SQL DB2 DB2 SQL DB2 ( DB2 ) DB2 DB2 DB2 SQL DB2 (1) SQL (2) S
9 DB2 优化器 DB2 SQL select c1 c2 from ( DB2 )??? DB2?!?, no no DB2 I/O ( transrate overhead ) SQL DML (INSERT UPDATE DELETE) DB2 (access plan) DB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( 728 747 ) SQL
More informationuntitled
2006 6 Geoframe Geoframe 4.0.3 Geoframe 1.2 1 Project Manager Project Management Create a new project Create a new project ( ) OK storage setting OK (Create charisma project extension) NO OK 2 Edit project
More informationuntitled
1 Access 料 (1) 立 料 [] [] [ 料 ] 立 料 Access 料 (2) 料 [ 立 料 ] Access 料 (3) 料 料 料 料 料 料 欄 ADO.NET ADO.NET.NET Framework 類 來 料 料 料 料 料 Ex MSSQL Access Excel XML ADO.NET 連 .NET 料.NET 料 料來 類.NET Data Provider
More informationKillTest 质量更高 服务更好 学习资料 半年免费更新服务
KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 000-544 Title : DB2 9.7 Advanced DBA for LUW Version : DEMO 1 / 10 1. A DBA needs to create a federated database and configure access to join
More informationAL-MX200 Series
PostScript Level3 Compatible NPD4760-00 TC Seiko Epson Corporation Seiko Epson Corporation ( ) Seiko Epson Corporation Seiko Epson Corporation Epson Seiko Epson Corporation Apple Bonjour ColorSync Macintosh
More informationPROFIBUS3.doc
PLC PLC ProfiBus 3. PROFIBUS-DP PROFIBUS-DP PROFIBUS-DP PROFIBUS S7 STEP7 SIMATIC NET S5 COM PROFIBUS COM5431 PROFIBUS-DP GSD GSD *.GSD *. GSE GSD S7 STEP7 PROFIBUS DP S7-400 CPU416-2DP S7-200 PROFIBUS
More informationRAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming Media, Transaction, Bulk dat
Realtime Application QOS Monitoring (RAQMON) Dan Romascanu dromasca@avaya.com 1 RAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming
More information10
10 08 10 Periodical Report 1 4 8 1 1 4 8 Batch Job Index DBA Index SQL WHERE Execution Plan SQL 4 8 SQL 10.3 10.4 SQL 318 08 5 SQL SQL Server Oracle 20--03 16:30:52 2003163052 Orders_Big SQL T-SQL 20-01-01
More informationf2.eps
前 言, 目 录 产 品 概 况 1 SICAM PAS SICAM 电 力 自 动 化 系 统 配 置 和 使 用 说 明 配 置 2 操 作 3 实 时 数 据 4 人 机 界 面 5 SINAUT LSA 转 换 器 6 状 态 与 控 制 信 息 A 版 本 号 : 08.03.05 附 录, 索 引 安 全 标 识 由 于 对 设 备 的 特 殊 操 作 往 往 需 要 一 些 特 殊 的
More informationBasic System Administration
基 本 系 统 管 理 ESX Server 3.5 ESX Server 3i 版 本 3.5 Virtual Center 2.5 基 本 管 理 指 南 基 本 管 理 指 南 修 订 时 间 :20080410 项 目 :VI-CHS-Q208-490 我 们 的 网 站 提 供 最 新 的 技 术 文 档, 网 址 为 : http://www.vmware.com/cn/support/
More informationUser ID 150 Password - User ID 150 Password Mon- Cam-- Invalid Terminal Mode No User Terminal Mode No User Mon- Cam-- 2
Terminal Mode No User User ID 150 Password - User ID 150 Password Mon- Cam-- Invalid Terminal Mode No User Terminal Mode No User Mon- Cam-- 2 Mon1 Cam-- Mon- Cam-- Prohibited M04 Mon1 Cam03 Mon1 Cam03
More informationebook140-11
11 VPN Windows NT4 B o r d e r M a n a g e r VPN VPN V P N V P N V P V P N V P N TCP/IP 11.1 V P N V P N / ( ) 11.1.1 11 V P N 285 2 3 1. L A N LAN V P N 10MB 100MB L A N VPN V P N V P N Microsoft PPTP
More informationch_code_infoaccess
地 產 代 理 監 管 局 公 開 資 料 守 則 2014 年 5 月 目 錄 引 言 第 1 部 段 數 適 用 範 圍 1.1-1.2 監 管 局 部 門 1.1 紀 律 研 訊 1.2 提 供 資 料 1.3-1.6 按 慣 例 公 布 或 供 查 閱 的 資 料 1.3-1.4 應 要 求 提 供 的 資 料 1.5 法 定 義 務 及 限 制 1.6 程 序 1.7-1.19 公 開 資
More informationWindows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco
Windows RTEMS 1 Danilliu MMI TCP/IP 80486 QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos ecos Email www.rtems.com RTEMS ecos RTEMS RTEMS Windows
More informationOOAD PowerDesigner OOAD Applying PowerDesigner CASE Tool in OOAD PowerDesigner CASE Tool PowerDesigner PowerDesigner CASE To
PowerDesigner Applying PowerDesigner CASE Tool in OOAD albertchung@mpinfo.com.tw PowerDesigner CASE Tool PowerDesigner PowerDesigner CASE Tool PowerDesigner CASE Tool CASE Tool PowerDesignerUnified ProcessUMLing
More informationIP505SM_manual_cn.doc
IP505SM 1 Introduction 1...4...4...4...5 LAN...5...5...6...6...7 LED...7...7 2...9...9...9 3...11...11...12...12...12...14...18 LAN...19 DHCP...20...21 4 PC...22...22 Windows...22 TCP/IP -...22 TCP/IP
More informationGo构建日请求千亿微服务最佳实践的副本
Go 构建 请求千亿级微服务实践 项超 100+ 700 万 3000 亿 Goroutine & Channel Goroutine Channel Goroutine func gen() chan int { out := make(chan int) go func(){ for i:=0; i
More informationAL-M200 Series
NPD4754-00 TC ( ) Windows 7 1. [Start ( )] [Control Panel ()] [Network and Internet ( )] 2. [Network and Sharing Center ( )] 3. [Change adapter settings ( )] 4. 3 Windows XP 1. [Start ( )] [Control Panel
More information入學考試網上報名指南
入 學 考 試 網 上 報 名 指 南 On-line Application Guide for Admission Examination 16/01/2015 University of Macau Table of Contents Table of Contents... 1 A. 新 申 請 網 上 登 記 帳 戶 /Register for New Account... 2 B. 填
More information「人名權威檔」資料庫欄位建置表
( version 0.2) 1 3 3 3 3 5 6 9.... 11 Entities - Relationship Model..... 12 13 14 16 2 ( ) Int Varchar Text byte byte byte Id Int 20 Name Surname Varchar 20 Forename Varchar 20 Alternate Type Varchar 10
More information國家圖書館典藏電子全文
EAI EAI Middleware EAI 3.1 EAI EAI Client/Server Internet,www,Jav a 3.1 EAI Message Brokers -Data Transformation Business Rule XML XML 37 3.1 XML XML XML EAI XML 1. XML XML Java Script VB Script Active
More informationDR2010.doc
DR/2010 HACH 11-8-96-2 HACH. DR/2010, / UL E79852 CSA C22.223 LR 58275 VDE GS 1015-92 FCC"A" 15 : AMADOR CORP, HACH. EN50 011/CISPR 11 "B" (EMI)/89/336/EEC/EMC: AMADOR CORP, HACH.. EN50 082-1( )/89/226/EEC
More informationValue Chain ~ (E-Business RD / Pre-Sales / Consultant) APS, Advanc
Key @ Value Chain fanchihmin@yahoo.com.tw 1 Key@ValueChain 1994.6 1996.6 2000.6 2000.10 ~ 2004.10 (E- RD / Pre-Sales / Consultant) APS, Advanced Planning & Scheduling CDP, Collaborative Demand Planning
More informationMicrosoft Word - ORA-04031.doc
如 何 解 决 ORA-04031 错 误 翻 译 :Fenng 文 章 内 容 1. 和 共 享 池 (shared pool) 相 关 的 实 例 参 数 2. 诊 断 ORA-04031 错 误 3. 解 决 ORA-04031 错 误 已 知 的 Oracle BUG 共 享 池 碎 片 o V$SQLAREA 视 图 o X$KSMLRU 视 图 小 的 共 享 池 尺 寸 o 库 高 速
More informationebook 132-6
6 SQL Server Windows NT Windows 2000 6.1 Enterprise Manager SQL Server Enterprise Manager( ) (Microsoft Management C o n s o l e M M C ) Enterprise Manager SQL Server Enterprise Manager 6.1.1 Enterprise
More information