知识大全 Oracle新手入门: Oracle问答精选

Posted

篇首语:自己打败自己是最可悲的失败,自己战胜自己是最可贵的胜利。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Oracle新手入门: Oracle问答精选相关的知识,希望对你有一定的参考价值。

Oracle新手入门: Oracle问答精选  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Q: 如 何 使 用 Cost Based 优 化 器 优 化 查 询 操 作?  A: Oracle Server 提 供 了 基 于 成 本(Cost Based) 和 基 于 规 则(Rule Based) 两 种 优 化 器 简 称 为 CBO 和 RBO 用 于 确 定 查 询 操 作 的 执 行 计 划 Cost Based 优 化 器 将 计 算 各 种 执 行 计 划 的 开 销 然 后 选 出 最 低 成 本 的 执 行 计 划 可 使 用 下 列 方 法 选 择 使 用 CBO: 方 法 1 在 INIT<sid> ORA 文 件 中 设 置 参 数 OPTIMIZER_MODE=choose  方 法 在 Session 级 设 置  OPTIMIZER_GOAL=FIRST_ROWS 或 ALL_ROWS 例 如 alter session set optimizer_goal=first_rows; 方 法 在 查 询 语 句 中 使 用 Hint 包 括 CHOOSE ALL_ROWS FIRST_ROWS 等     Q: 如 何 确 定 某 个 查 询 使 用 了 哪 一 种 优 化 器?  A: 使 用 EXPLAIN PLAN 命 令 生 成 该 查 询 语 句 的 执 行 计 划 然 后 检 查 PLAN_TABLE 表 中 POSITION 字 段 如 果 值 为 Null 说 明 使 用 了 Rule Based 优 化 器 否 则 表 明 使 用 了 Cost B ased 优 化 器 例 如   SELECT decode(nvl(position ) RBO CBO )  FROM plan_table  WHERE id= ;    Q: 我 的 查 询 上 周 的 性 能 很 好 为 什 么 现 在 查 询 速 度 很 慢?  A: 这 是 由 于 执 行 计 划 被 改 变 而 造 成 的 下 列 因 素 将 会 改 变 一 个 执 行 计 划    ) INIT<sid> ORA 文 件 中 的 参 数 OPTIMIZER_MODE 被 改 变 ) 表 上 定 义 或 改 变 了 并 行 查 询 度 ) 使 用 ANALYZE 命 令 重 新 分 析 了 表 而 且 使 用 了 ESTIMATE 方 式 因 这 种 方 式 选 择 不 同 的 百 分 比 可 产 生 不 同 的 分 析 结 果    ) DB_FILE_MULTIBLOCK_READ_COUNT 参 数 被 修 改    ) SORT_AREA_SIZE 参 数 被 修 改    Q: 为 什 么 我 的 执 行 计 划 不 是 最 好 的?  A: CBO 是 依 赖 表 的 一 些 统 计 信 息 来 选 择 出 最 低 成 本 的 执 行 计 划 当 这 些 统 计 信 息 不 准 确 时 产 生 的 计 划 便 可 能 不 是 最 佳 的 因 而 应 使 用 ANALYZE 命 令 及 时 对 表 进 行 分 析 统 计     Q: 当 使 用 ESTIMATE 方 式 对 表 进 行 分 析 时 选 用 什 么 百 分 比 最 好?  A: 经 测 试 证 明 使 用 % 的 的 比 例 较 好 即 提 高 了 分 析 效 率 又 保 证 分 析 结 果 的 准 确 性     Q: 如 何 在 Oracle 数 据 库 中 创 建 Partition Table?  A: 使 用 CREATE TABLE 命 令 并 指 定 Partition Key 和 每 个 Partition 的 分 区 范 围 Partition 名 为 可 选 项 如 未 指 定 系 统 将 自 动 产 生 Partition 名 例 如 CREATE TABLE emp  (EMPNO NUMBER( )    )  PARTITION BY RANGE(EMPNO)   emp_p VALUES LESS THAN ( )   emp_p VALUES LESS THAN ( )  emp_p VALUES LESS THAN (MAXVALUE);    Q: Partition Table 有 何 限 制?  A: ) 数 据 类 型 限 制   Partition Table 不 能 包 含 LONG LONG RAW LOB 及 OBJECT 类 型 的 字 段 ) Cluster 不 能 被 分 区 ) Bitmap 索 引 Bitmap 索 引 必 须 是 LOCAL 索 引 不 能 是 GLOBAL 索 引 ) 优 化 器   Oracle 中 Cost Based 优 化 器 支 持 Partitions 而 Rule Based 优 化 器 对 Partitions 不 敏 感 无 法 通 过 Partitions 获 得 性 能 的 提 高    ) Partition Tables 不 能 跨 多 个 数 据 库 所 有 的 Partition 必 须 存 在 于 一 个 数 据 库 中    Q: 如 何 建 立 一 个 与 现 存 数 据 库 相 同 但 不 包 含 数 据 的 空 库?  A: 对 全 库 作 Export 或 Import 时 使 用 参 数 ROWS=Y  例 如 exp system/manager full=Y rows=N file=full dmp  imp system/manager full=Y rows=N file=full dmp    Q: 当 Exporting Procedures 和 Packages 时 是 否 会 改 变 其 时 间 标 签 (Timestamp) ?  A: 不 改 变 这 是 为 避 免 不 必 要 的 重 编 译     Q: Exp 的 参 数 VOLSIZE 能 否 用 于 所 有 的 平 台?  A: VOLSIZE 只 能 用 于 UNIX 系 统 将 数 据 exporting 至 外 部 介 质 上(如 磁 带)    Q: 如 何 通 过 SQL*PLUS 往 表 中 插 入 如 往 表 中 插 入 i m   A: 在 SQL*PLUS 中 我 们 可 以 用 chr( ) 来 表 示 例 如 :  sql>create table test (col varchar ( ));  sql>insert into test values( i ||chr( )|| m );  sql>select * from test;  col      i m    Q: 在 win 或 windows NT 上 运 行 oracle Net Assistant 或 Net Easy Configuration 时 报 错 unhandled exception error in Java exe   A oracle Net Assistant 或 Net Easy Configuration 调 用 了 Java 而 Java 在 win 或 windows NT 上 运 行 对 系 统 的 分 辨 率 和 颜 色 都 有 要 求 应 把 系 统 的 分 辨 率 调 到 大 于 x 把 系 统 的 颜 色 调 到 大 于 色 但 不 能 设 置 成 true color     Q: 安 装 oracle for windows NT 需 要 NT 的 那 种 service pack?  A: 安 装 oracle for windows NT 需 要 NT 的 service pack     Q:Delphi 是 否 支 持 oracle ?  A Delphi 只 有 oracle 的 driver 所 以 不 支 持 oracle   Delphi x 有 oracle 的 driver 所 以 支 持 oracle     Q: 怎 样 在 oracle 和 oracle 之 间 export/import 数 据 ?  A: 必 须 先 在 oracle 数 据 库 上 以 internal 或 sys 用 户 运 行 catexp sql  svrmgr>connect internal  svrmgr>@?/rdbms/admin/catexp sql    Q: 怎 样 为 远 程 用 户 设 置 internal 的 口 令 ?  A: 先 在 数 据 库 端 的 init<sid> ora 文 件 中 设 置  remote_login_passwordfile=exclusive  并 且 为 oracle owner 设 置 环 境 变 量  ORA_<SID>_PWFILE=orapw<sid> pwd  然 后 以 oracle owner 运 行 以 下 命 令  $cd $ORACLE_HOME/dbs  $orapwd file=orapw<sid> pwd password=<passwd> entries=     Q: 如 何 手 工 安 装 sqlplus 的 help facility?  A: 以 oracle 用 户 运 行 以 下 命 令  $cd $ORACLE_HOME/bin  $SYSTEM_PASS=system/manager;export SYSTEM_PASS  $helpins    Q: 如 何 查 出 前 台 正 在 发 出 的 sql 语 句?  A: 先 查 出 正 在 运 行 的 前 台 程 序 的 sid:  sql>select sid serial# username program  from v$session  where status= ACTIVE ;  然 后 根 据 上 面 得 到 的 sid 可 查 出 正 在 运 行 的 前 台 程 序 发 出 的 sql 语 句 :  sql>select user_name sql_text  from v$open_cursor  where sid=xx;    Q: 在 oracle 中 如 何 使 用 shared library 来 编 译 pro*c 程 序 ?  A: 首 先 以 oracle owner 创 建 shared library  $cd $ORACLE_HOME/rdbms/lib  $make f ins_rdbms mk client_sharedlib  然 后 设 置 LIBPATH 环 境 变 量 ( 有 的 平 台 用 LD_LIBRARY_PATH 请 参 见 手 册 ):  $LIBPATH=$ORACLE_HOME/lib;export LIBPATH  最 后 编 译 你 的 pro*c 程 序 :  $make f demo_proc mk build OBJS=yourprog o EXE=yourprog    Q: 在 数 据 库 一 级 设 置 SQL Trace  A: 在 init ora 中 加 入 参 数 sql_trace=true 然 后 重 新 启 动 数 据 库     Q: 在 SQL*PLUS 中 对 某 一 session 设 置 SQL trace   A: sql*plus>alter session set sql_trace true;  在 产 生 Trace 之 后 使 用 如 下 命 令 关 闭 Trace   sql*plus>alter session set sql_trace false; :    Q: 在 PL/SQL 中 设 置 和 关 闭 SQL Trace   A: dbms_session set_sql_trace(true);  dbms_session set_sql_trace(false);  如 果 你 不 能 发 现 这 个 package 首 先 用 SYS 用 户 执 行  dbmsutil sql 这 个 脚 本     Q: 怎 样 设 置 redo log 文 件 的 大 小   A: 设 置 redo log 文 件 的 原 则 就 是 要 保 证 分 钟 之 内 进 行 log switch   log switch 的 信 息 被 记 录 在 alertSID log 中      Mon May : :   Thread advanced to log sequence   Current log# seq# mem# : /u /dbs/log ween dbf       如 果 两 次 switch 的 时 间 是 分 钟 你 需 要 增 加 redo log 文 件  到 三 倍 的 尺 寸   如 果 两 次 switch 的 时 间 是 分 钟 你 需 要 增 加 redo log 文 件  到 两 倍 的 尺 寸   如 果 两 次 switch 的 时 间 超 过 分 钟 你 不 需 要 需 要 增 加 redo  log 文 件 的 尺 寸     同 时 设 置 CHECK_POINT_INTERVAL 大 于 redo log 文 件 的 大 小     Q: 怎 样 检 查 是 否 一 个 数 cha138/Article/program/Oracle/201311/18116

相关参考

知识大全 裸设备和Oracle问答20例

裸设备和Oracle问答20例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  什么叫做裸设备? 

知识大全 oracle 10g常见问题精选

  一怎样配置EM使其支持SSL协议    GEM中的OMSDBConsoleAgent都支持SSL协议    具体操作:    如果没有环境变量ORACLE_SID请先配置或者直接敲入setORAC

知识大全 Oracle DBA创建数据库试题精选

OracleDBA创建数据库试题精选  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Q:This

知识大全 ORACLE入门之ORACLE的备份

ORACLE入门之ORACLE的备份  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一意义  当

知识大全 Oracle DBA数据库结构试题精选(2)

OracleDBA数据库结构试题精选(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Q:W

知识大全 ORACLE入门之如何增加ORACLE连接数

ORACLE入门之如何增加ORACLE连接数  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  OR

知识大全 Oracle入门教程,新手必读

Oracle入门教程,新手必读  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  删除表的注意事项 

知识大全 oracle 基础入门

  一ORACLE的表的分类  REGULARTABLE普通表ORACLE推荐的表使用很方便人为控制少  PARTITIONEDTABLE分区表人为控制记录的分布将表的存储空间分为若干独立的分区记录按

知识大全 新手必须了解的oracle入门知识

  oracle入门知识  一个表空间只能属于一个数据库每个数据库最少有一个控制文件(建议个分别放在不同的磁盘上)  每个数据库最少有一个表空间(SYSTEM表空间)  建立SYSTEM表空间的目的是

知识大全 VC++ Oracle 开发入门教程

VC++Oracle开发入门教程  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ORACLE数据