【Oracle面试500题解析】 1. **冷备份与热备份**: - **冷备份**:在数据库关闭后进行,适用于所有模式,备份和恢复简单,无需归档日志,性能较好,但不能实现在线备份。 - **热备份**:在数据库运行时进行,仅适用于归档模式,允许数据库持续服务并能恢复到任意时间点,但可能增加I/O负载。 2. **无控制文件恢复**:当没有控制文件时,需重建控制文件,然后使用`RECOVER DATABASE USING BACKUP CONTROLFILE`命令恢复数据库。 3. **PFILE转SPFILE**:通过`CREATE SPFILE FROM PFILE`命令,将初始化参数文件(PFILE)转换为服务器参数文件(SPFILE)。 4. **数据存储单位**: - **Data Block**:是最小的逻辑存储单位,包含实际的数据。 - **Extent**:一组连续的Data Blocks,用于扩展数据库对象的存储。 - **Segment**:一个数据库对象(如表、索引)的所有Extents的集合。 5. **检查表结构**: - `DESCRIBE`:显示表的列名、数据类型等信息。 - `DBMS_METADATA.GET_DDL`:获取表的DDL语句,包括完整定义。 6. **查看错误日志**:通过Alert Log查看数据库引擎的错误信息。 7. **TRUNCATE与DELETE的区别**: - `TRUNCATE`:删除所有记录,不记录回滚信息,速度快。 - `DELETE`:删除记录,记录在回滚段中,可回滚,速度较慢。 8. **使用索引的理由**:索引提供快速的数据访问,减少全表扫描,提升查询效率。 9. **STAR SCHEMA中的表类型**: - **Fact Table**:包含核心业务数据,如销售记录。 - **Dimension Table**:存储描述性信息,如日期、产品、地区等。 10. **Fact Table上的索引**:通常使用位图索引,适用于低基数(非唯一值)的列。 11. **相关约束**: - **主键**:确保表中记录的唯一性。 - **外键**:建立表间关联,确保数据完整性。 12. **重建母表**:临时禁用子表的外键约束,重建母表后再启用。 13. **归档与非归档模式**: - **归档模式**:允许恢复到任意时间点,但需要归档日志,占用更多存储。 - **非归档模式**:无法恢复到任意时间点,但可能提高性能。 14. **创建备份控制文件**:执行`ALTER DATABASE BACKUP CONTROLFILE TO TRACE`。 15. **数据库启动状态**: - **STARTUP NOMOUNT**:实例启动,未加载数据库。 - **STARTUP MOUNT**:数据库加载,但未打开。 - **STARTUP OPEN**:数据库完全打开,可读写。 16. **V$与GV$视图区别**:`INST_ID`字段区分,GV$包含集群环境中的所有实例信息。 17. **生成Explain Plan**: - 运行`utlxplan.sql`创建计划表。 - 使用`EXPLAIN PLAN SET STATEMENT_ID = 'tst1' INTO plan_table`。 - 运行`utlxplp.sql`或`utlxpls.sql`查看计划。 18. **提高Buffer Cache命中率**:使用Buffer Cache Advisory,分析`V$DB_CACHE_ADVICE`,根据需要调整`DB_CACHE_SIZE`。 19. **处理ORA-01555**:通常是回滚段不足导致,可通过增大回滚段解决,同时检查引起错误的SQL。 20. **$ORACLE_HOME与$ORACLE_BASE**: - `$ORACLE_BASE`:Oracle软件安装的基目录。 - `$ORACLE_HOME`:具体产品或版本的目录。 21. **确定数据库时区**:执行`SELECT DBTIMEZONE FROM DUAL;`查询。 22. **GLOBAL_NAMES**:用于强制分布式事务中数据库实例间的名称匹配,用于确定是否跨实例连接。 以上是对Oracle面试题中部分知识点的详细解释,涵盖了数据库备份、恢复、表结构、索引、性能优化等多个方面,有助于理解Oracle数据库的核心概念和技术。
剩余6页未读,继续阅读
- 粉丝: 0
- 资源: 9
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助