数据库试题2




1.FACT Table上需要建立何种索引?
解答:位图索引(bitmap index)

2.解释归档和非归档模式之间的不同和它们各自的优缺点
解答:归档模式是指你可以备份所有的数据库 transactions并恢复到任意一个时间点。非归档模式则相反,不能恢复到任意一个时间点。但是非归档模式可以带来数据库性能上的少许提高。

3.如何建立一个备份控制文件?
解答:Alter database backup control file to trace.

4. 解释GLOBAL_NAMES设为TRUE的用途:
解答:GLOBAL_NAMES指明联接数据库的方式。如果这个参数设置为TRUE,在建立数据库链接时就必须用相同的名字连结远程数据库.

5.如何加密PL/SQL程序?
解答:WRAP

6. 解释FUNCTION,PROCEDURE和PACKAGE区别
解答:function 和procedure是PL/SQL代码的集合,通常为了完成一个任务。
procedure 不需要返回任何值而function将返回一个值在另一方面,Package是为了完成一个商业功能的一组function和proceudre的集合。

7. 解释TABLE Function的用途:
解答:TABLE Function是通过PL/SQL逻辑返回一组纪录,用于普通的表/视图。他们也用于pipeline和ETL过程。

8. 举出3种可以收集three advisory statistics
解答:Buffer Cache Advice, Segment Level Statistics, Timed Statistics

9. Audit trace 存放在哪个oracle目录结构中?
解答:unix $ORACLE_HOME/rdbms/audit

10. 解释materialized views的作用
解答:Materialized views 用于减少那些汇总,集合和分组的信息的集合数量。它们通常适合于数据仓库和DSS系统。

11. 当用户进程出错,哪个后台进程负责清理它:

解答: PMON

12. 哪个后台进程刷新materialized views?
解答:The Job Queue Processes.

13. 如何判断哪个session正在连结以及它们等待的资源?
解答:V$SESSION / V$SESSION_WAIT

14. 描述什么是 redo logs:

解答:Redo Logs 是用于存放数据库数据改动状况的物理和逻辑结构。可以用来修复数据库.

15. 如何进行强制LOG SWITCH?
 解答:ALTER SYSTEM SWITCH LOGFILE;

16. 举出两个判断DDL改动的方法?
解答:你可以使用 Logminer 或 Streams

17. Coalescing做了什么?

解答:Coalescing针对于字典管理的tablespace进行碎片整理,将
临近的小extents合并成单个的大extent.

18. TEMPORARY tablespace和PERMANENT tablespace 的区别是?
解答:A temporary tablespace 用于临时对象例如排序结构而 permanent tablespaces用来存储那些'真实'的对象(例如表,回滚段等)

19. 创建数据库时自动建立的tablespace名称?
解答:SYSTEM tablespace.

19. 哪个column可以用来区别V$视图和GV$视图?
解答: INST_ID 指明集群环境中具体的某个instance .

20. 如何生成explain plan?
解答:运行utlxplan.sql. 建立plan 表
针对特定SQL语句,使用 explain plan set statement_id = 'tst1' into plan_table
运行utlxplp.sql 或 utlxpls.sql察看explain plan

21.ORACLE的临时表:
create global temporary table tablename (
col1 varchar2(),
col2 number
) on commit preserve(delete) rows;
这种临时表不占用表空间,而且不同的SESSION之间互相看不到对方的数据在会话结束后表中的数据自动清空,如果选了DELETE ROWS,则在提交的时候即清空数据,PRESERVE则一直到会话结束。
可以创建以下两种临时表:
1)会话特有的临时表
create global temporary <table_name> (<column specification>)
on commit preserve rows;
2)事务特有的临时表
create global temporary <table_name> (<column specification>)
on commit delete rows;
--ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行)
--ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表;
临时表只是保存当前会话(session)用到的数据,数据只在事务或会话期间存在;可以对临时表创建索引,视图,出发器,可以用export和import工具导入导出表的定义,但是不能导出数据。表的定义对所有的会话可见。


22.回滚段不够的处理方法
(1)、先使回滚段脱机一个,如果不好用,则再脱机一个。直至好用。
   ALTER rollback segment rollbackname offline;
(2)、增加回滚段数据文件的大小:
alter database datafile 'datafile' resize 200M;




你可能感兴趣的:(数据结构,oracle,sql,cache,unix)