数据库DBA面试与笔试必备知识详解

3星 · 超过75%的资源 需积分: 41 7 下载量 76 浏览量 更新于2024-07-24 收藏 79KB DOC 举报
"这篇资料是关于数据库DBA的笔试题集合,涵盖了SQL调优、数据库基本概念、备份恢复、系统管理和综合知识等多个方面,旨在帮助求职者了解企业对DBA的技术要求。" **一、SQL优化类** 1. 表连接方式主要包括:`INNER JOIN`(内连接)、`OUTER JOIN`(外连接,包括`LEFT JOIN`、`RIGHT JOIN`、`FULL JOIN`)、`CROSS JOIN`(交叉连接)以及哈希连接(Hash Join)、归并连接(Merge Join)和嵌套循环连接(Nested Loop Join)。 2. 使用`EXPLAIN PLAN`或`DBMS_XPLAN.DISPLAY`可以在不借助第三方工具的情况下查看SQL的执行计划,以理解查询的执行步骤和资源使用情况。 3. CBO(Cost-Based Optimizer)是Oracle的一种优化器,它基于统计信息和成本模型来选择执行计划,而RULE则是基于预定义的规则来决定执行路径。CBO通常能提供更优的执行计划,但需要准确的统计信息。 4. 使用`V$SQL`视图、`AWR`报告或`ASH`分析可以定位消耗资源多的SQL语句。 5. `V$SESSION`视图可以跟踪特定session的SQL执行,结合`DBMS_SESSION`包中的函数可以进一步控制和分析。 6. SQL调整最关注的是查询性能、资源消耗和数据一致性。应优化执行计划,减少全表扫描,利用合适的索引,降低磁盘I/O。 7. 索引由B树结构组成,可以加速查询速度,但会影响DML操作(插入、更新、删除)。非唯一索引可能导致数据冗余,唯一索引确保数据唯一性。过度使用索引可能导致额外的维护开销。 8. 不一定,索引查询是否提高性能取决于查询条件、数据分布和索引类型。对于全表扫描或索引扫描比例较低的查询,可能不适用。 9. 绑定变量是参数化查询中的占位符,可以提高SQL重用率,减少硬解析,优点是性能提升,缺点是可能因绑定变量的不一致导致执行计划波动。 10. 使用`SQL profile`或`SQL Plan Baseline`可以稳定执行计划,避免因数据变化导致的执行计划选择错误。 11. 在8i和9i中,排序相关的内存通过`SORT_AREA_SIZE`等参数调整。临时表空间用于存储排序和临时结果,当内存不足以完成排序时,会溢出到磁盘。 12. SQL示例:`SELECT * FROM T WHERE c ORDER BY c OFFSET 20 ROWS FETCH NEXT 10 ROWS ONLY;` **二、数据库基本概念类** 这部分涉及数据库的元数据结构、存储管理、事务处理、日志和内存架构等基础概念。 **三、备份恢复类** 涵盖备份类型(如冷备份、热备份、逻辑备份、RMAN备份等)、归档、恢复策略以及RMAN和备用数据库的概念和特点。 **四、系统管理类** 系统性能诊断、性能监控工具(如Statspack)、索引创建策略、RAID配置以及应对性能问题的思路。 **五、综合随意类** 这部分涉及个人专长、对Oracle的兴趣和挑战,以及成为DBA的原因,反映了求职者的个人背景和职业态度。 这些题目全面覆盖了DBA所需的核心技能,有助于求职者准备面试和提升专业能力。