整理的ORACLE DBA 题目

1.简单描述table / segment / extent / block之间的关系

 

   table创建时,默认创建了一个 data segment

  每个data segment 含有 min extents 指定的extents数

  每个extents根据表空间的存储参数分配一定数量的blocks

2.描述tablespace 和 datafile之间的关系

   一个tablespace 可以有一个或者多个datafile,每个datafile只能属于一个tablespace

   tablespace是逻辑上的概念,datafile则在物理上存储了数据库的对象

   table中的数据,通过hash算法分布在tablespace中的各个datafile中

3.回滚段的作用是什么

   事务回滚:当事务修改表中的数据的时候,该数据修改前的值(即前影像)会存放在回滚段中,当用户回滚事务ROLLBACK时,oracle将会利用回滚段中的数据前影像来将修改的数据恢复到原来的值;

   事务恢复:当事务正在处理的时候,例程失败,回滚段的信息保存在UNDO表空间中,oracle将在下次打开数据库时,利用回滚来恢复未提交的数据;

   读一致性:当一个会话正在修改数据时,其它的会话将看不到该会话未提交的修改,当一个语句正在执行时,该语句将看不到从该语句开始执行后的未提交的修改(语句级读一致性),当oracle执行select语句时,oracle依照当前的系统改变号system change number-scn来保证任何前于当前scn的未提交的改变不被该语句处理

  4.日志的作用是什么

    记录数据库事务,最大限度地保证数据库的一致性与安全性;

    重做日志文件:含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复,一个数据库至少需要2个重做日志文件;

    归档日志文件:是重做日志文件的脱机副本,这些副本对于从介质失败中进行恢复很必要;

   5.sga主要有哪些部分,主要作用是什么

    sga:db_cache,shared_pool,large_pool,java_pool

    db_cache:数据库缓存block buffer 对于orale数据库的运转和性能起着非常关键的作用;

    shared_pool:共享池,共享池中保存数据字典告诉缓冲和完全解析货编译的pl/sql块 和 SQL语句及控制结构;

    large_pool:使用MTS配置时,因为要在sga中分配uga来保持用户的会话,就是用large_pool保存这个会话,使用rman做备份的时候,要使用这个内存结构来做磁盘i/o缓存器;

   java_pool:为java procedure预备的内存区域,如果没有使用java proc ,java_pool不是必须的;

6.oracle系统进程主要有哪些,作用是什么

 

   数据写进程dbwr:负责将更改的数据从数据库缓冲区高速缓存写入数据文件

   日志写进程lgwr:负责将重做日志缓冲区的更改写入在线重做日志文件

   系统监控smon:检查数据库的一致性,如果有必要还会在数据库打开时启动数据库的恢复

   进程监控(pmon) :负责在一个Oracle 进程失败时清理资源

   检查点进程(chpt):负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。 
   归档进程(arcn) :在每次日志切换时把已满的日志组进行备份或归档 
   作业调度器(cjq) :负责将调度与执行系统中已定义好的job,完成一些预定义的工作

   复进程(reco) :保证分布式事务的一致性,在分布式事务中,要么同时commit,要么同时rollback

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值