oracle体系结构的个人总结

Posted qyhyy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle体系结构的个人总结相关的知识,希望对你有一定的参考价值。

  1. Oracle体系结构主要包括:数据库实例和数据库文件。如下图:
  2. 技术图片

     

  3. 数据库实例包括:内存(SGA)和后台一堆进程
  4. 数据库文件包括:参数文件、日志文件、控制文件、数据文件、密码文件
  5. SGA则包括:
  6. 共享池:主要的作用是让相同的SQL语句不需要在做编译、语法的校验,执行计划的判断的。提升SQL的运行效率。
  7. 数据缓冲区:缓存从磁盘读取的数据,提升了查询速度。常见的场景是同一个SQL语句执行,第一次查询很慢,第二次就很快的原因。
  8. 日志缓冲区:提升了数据增、删、改的速度,减少磁盘的读写从而加快速度。
  9. 后台进程包括:
  10. 数据库写进程【DBWn】:将数据缓冲区的内容写入到数据文件中。DBWn进程负责将在buffer cache中那些被修改的的数据,也就是脏数据写入磁盘。什么时候开始写入了?a、当内存不够时,DBWn就会进行写入。b、每三秒自动进行一次写入c、检查点CKPT。设置:DW_WRITER_PROCESS用来定义DBWn进程数,commit命令是把记录修改写入日志文件,不是把修改后的数据写入数据文件。
  11. 日志写进程[LGWR]:将日志缓冲区的内容写入到联机的日志文件中。(劳模,很重要很忙碌的一个进程)。什么时候开始写入了?  a、三秒定时唤醒  b、日志缓冲区超过1/3,或日志文件量超过1M  c、联机日志切换也会出发LGWR d、用户提交事务时,Commit  e、  DBWR执行写入之前
  12. 系统监控进程【SMON】:
    1、负责实例恢复,前滚(Roll Forward)恢复到实例关闭的状态,使用最后一次检查点后的日志进程重做。这时包括提交和未提交的事务。打开数据库,进行回滚(Roll Back):回滚未提交的事务。(oracle承诺commit之后数据不会丢失,现在我们可以大致的了解是如何实现这个承诺,以及在数据的安全性和数据库性能之间的平衡选择。)
     2、负责清理临时段,以释放空间
  13. 检查点进程【CKPT】:维护数据的一致性。检查数据文件和SGA内容的一致性。触发条件是:1联机日志文件切换时2关闭实例(shutdown abort除外)3手工检查点操作(alter  system  checkpoint)
  14. 进程监控进程【PMON】:发现用户进程异常终止,并进行清理。释放占用资源。(清理异常终止用户使用的锁)
  15. 归档进程【ARCn】:当联机日志切换时,把写满的联机日志数据拷贝到归档文件里。(LGWR写日志写到需要覆盖重写的时候,触发ARCH进程去转移日志文件,复制出去形成归档日志文件,以免日志丢失)用于事后数据的恢复
  16. 数据库文件:
  17. 日志文件:“先记后写”,重做日志用于记录数据库的变化,当进行例程恢复或介质恢复时需要使用重做日志
  18. 数据文件:永远存储数据库的数据,包括字典、用户数据(表、索引)、undo数据等。
  19. 参数文件:定义启动实例所需要的初始化参数,包括文本参数文件(pfile)和服务器参数文件(spfile)
  20. 控制文件:控制文件用于记录和维护数据库的物理结构,并且每个Oracle数据库至少要包含一个控制文件。
  21. 口令文件:用于验证特权用户(具有SYSDBA、SYSOPER权限的特殊数据库用户)
  22. 归档日志(Archive log):是非活动(Inactive)重做日志的备份。

 

以上是关于oracle体系结构的个人总结的主要内容,如果未能解决你的问题,请参考以下文章

Oracle数据库知识总结

Oracle 数据库命令个人总结

oracle中LPAD和RPAD函数的使用方法(加个人总结)

个人年度工作总结

alpha阶段个人总结(201521123034陈凯欣)

数据结构笔试的公式,定理,知识点 个人总结