DBA面试题及参考答案.pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、 SQL tuning 类 1、列举几种表连接方式? 嵌套循环连接( NESTED LOOP JOIN ) 群集连接 (CLUSTER JOIN ) 排序合并连接( SORT MERGE JOIN ) 笛卡尔连接( CARTESIAN JOIN ) 哈希连接( HASH JOIN ) 索引连接( INDEX JOIN ) 2 、不借助第三方工具,怎样查看 sql 的执行计划? 检察表 plan_table 是否存在,若无用 utlxplan.sql 创建该表。 set autotrace on explain plan set statement_id = &item_id for &sql; select * from table(dbms_xplan.display); 3 、如何使用 CBO,CBO 与 RULE 的区别? 在实例 / 会话级设置 OPTIMIZER_MODE=CHOOSE,也可以在语句级别用 Hint (/*+ ... */ ) 来设定。如此,如果表有统计信息 ( 分区表外 ), 优化器将选择 CBO,否则选 RBO。 RBO遵循 ORACLE内定规则 , 当接收到查询, 优化器将估算使用到的要点数目 , 然后选择 最佳级别 ( 最少的数量 ) 的执行计划查询。 CBO 尝试找到最低成本的数据访问方法 , 为最大吞吐量或最快响应时间 , 计算使用不同 执行计划的成本,并选择成本最低那个 , 依赖与表的统计信息。 4 、如何定位重要 (消耗资源多 ) 的 SQL ? SELECT * FROM (SELECT sql_text,buffer_gets,disk_reads FROM v$sql ORDER BY buffer_gets,disk_reads DESC) WHERE ROW NUM<=10; 5 、如何跟踪某个 session 的 SQL ? exec dbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace); 1 select sid,serial# from v$session where sid = (select sid from v$mystat where rownum = 1); exec dbms_system.set_ev(&sid,&serial#,&event_10046,&level_12,''); 6 、SQL 调整最关注的是什么? 调整的目的就是为了消耗最小的资源来完成功能, 通过查看执行计划和各种统计信息来 分辨调整后的 sql 对资源的耗费情况;查看该 SQL 的 response time(db block gets/consistent gets/physical reads/sorts (disk)) 7 、说说你对索引的认识 (索引的结构、对 dml 影响、为什么 提高查询性能 ) ? b-tree index bitmap index function index patitional index(local/global) 索引通常能提高 select/update/delete 的性能 ,会降低 insert 的速度。 8 、使用索引查询一定能提高查询的性能吗

文档评论(0)

151****6636 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档