ITPub博客

首页 > 数据库 > Oracle > OCP学习笔记8——Oracle Database体系结构概述(1Z0-052)

OCP学习笔记8——Oracle Database体系结构概述(1Z0-052)

Oracle 作者:martingoo 时间:2013-11-06 18:12:49 0 删除 编辑
① 就RAC数据库而言,它会在数据库实例所在的每个节点上运行Database Control进程。这些进程互相通信,所以都能全面了解RAC的状态。

② 胖JAVA客户端具有Oracle感知功能,它试用提供的OCI类库连接到数据库。Java胖客户端应用程序可以充分利用数据库,但无法使用第三方产品。而且要求安装OCI客户端软件。(OCI - Oracle Call Interface)
   瘦JAVA客户端并不知道运行时连接到了哪个数据库:允许运行它的容器将虚拟数据库映射到Oracle数据库。瘦JAVA客户端应用程序可以在不经心任何更改的情况下部署到非Oracle环境。但是,不属于Java数据库连接标准(JDBC)部分的Oracle功能将无法使用。

③ 常用的Oracle公司提供的开发工具:Oracle Forms Developer、Oracle Reports、Oracle Discoverer、Oracle E-business Suite、Oracle Collboration Suite、Oracle Application Sever

④ SGA内存由所有后台和前台进程共享,PGA内存仅供分配到的会话的前台进程访问。SGA和PGA内存都可以实现自动管理。

⑤ 分布式系统体系结构:实时应用集群(RAC),多个实例打开一个数据库。
       流,多个Oracle服务器相互之间传播事务。
       数据保护,住数据库更新备用数据库。

⑥ SGA中:数据库缓冲区缓存、日志缓冲区和共享池是必须的,而大池、Java池和流池是可选的。

⑦ 日志缓冲区 在Oracle体系结构中,将日志缓冲区转储到磁盘是基本瓶颈之一。DML的速度不能超过LGWR讲变更响亮转储到联机重做日志文件的速度。
   如果重做生成是限制数据库性能的因素,唯一的选项是使用RAC。在RAC数据库中,每个实例都有自己的日志缓冲区和自己的LGWR。这是将重做数据并行写入磁盘的唯一办法。
   日志缓冲区的大小固定不变,在启动实例实例时被设置为固定值。无法对其进行自动管理。

⑧ 共享池
1.库缓存 用于在库缓存中查找SQL的算法基于构建此语句的字符的ASCII值,最不起眼的差别也意味着语句不匹配,要再次分析。
2.数据字典缓存 
3.PL/SQL区 PL/SQL可以从用户进程faculty,而不存储在数据字典中。这称为匿名PL/SQL。匿名PL/SQL不能被缓存和重用,但必须动态编译。与存储的PL/SQL相比,其性能表现始终较差。
4.SQL查询和PL/SQL函数结果缓存 结果缓存是11g版本的新功能。结果缓存机制具有足够的智能,跟踪查询运行锁针对的表是否发生了更新。如果有了更新,则查询结果讲失效,并发出下一次查询,重新运行查询。因此,不存在接收到过时缓存结果的风险。默认方式下,将禁用SQL查询和PL/SQL函数结果缓存。

⑨ 大池 大池的一个主要用途是供共享的服务器进程试用,另外,有些I/O进程也使用大池,如Recovery Manger在备份到磁带设备时使用的进程就是如此。大池的大小可以动态调整,而且可以自动管理。

⑩ JAVA池用作实例化JAVA对象所需的堆空间。JAVA池的大小是动态的,而且可以自动管理。

⑪ 实例进程结构:
   SMON 安装和打开数据库。打开数据库并使数据库处于使用状态后,SMON就负责执行各种内部管理任务,如合并数据文件中的可用空间。
   PMON 监视所有服务器进程,并检测会话中的任何问题。如果会话异常终止,PMON将销毁服务器进程,将其PGA内存返回给操作系统的空闲内存池,并回滚任何尚在进行的未完成事务。
   DBWn 一个实例可以有不超过20个的数据库写入器。默认数量是每8个CPU对应一个数据库写入器。
   以下四种情况,DBWn将执行写操作:没有任何可用缓冲区、脏缓冲区过多(内部阀值决定)、遇到三秒超时、遇到检查点。
   LGWR 三种情况下,LGWR将转储日志缓冲区:会话发出COMMIT、日志缓冲区占用率达到1/3、DBWn要写入脏缓冲区。DBWn完全可能将未提交的事务写入数据文件。只要一定能够获得反转事务所需的撤销数据,这就不成问题。
   MMON 是数据库版本10g引入的进程,每次MMON收集一组统计数据(称为快照)时,它还启动Automatic Database Diagnostic Monitor(ADDM)。默认情况下,MMON每小时手机一次快照并启动ADDM。除了收集快照外,MMON还持续监视数据库和实例,来确定是否应该发出任何警报。使用警报系统属于第二场OCP考试的范畴。
   MMNL 是MMON的辅助进程。用于收集此信息的内存缓冲区变满,那么,MMNL将担当起转储数据的职责。
   MMAN 用来支持内存分配的自动管理。观察PGA内存和SGA内存的需要,并根据需要将内存分配给会话和SGA结构,同时将内存分配总量保持在DBA设定的限制范围内。
⑫ ARCn LGWR对联机日志文件中执行写操作,ARCn读取联机日志文件,其他任何进程根本不接触此类文件。必须监视ARCn进程的进度及写入目标的状态。如果归档操作失败,数据库最终会挂起。可以通过警报系统完成监视操作。
   RECO RECO(Recover Process)进程负责取消提交,回滚数据库的工作。

⑬ 数据库包括三类必须的文件:控制文件,联机重做日志文件,数据文件。通常所说的外部文件是参数文件、口令文件、归档重做日志文件以及任意数量的数据文件。
   控制文件包含指向数据库其余部分的指针:联机重做日志文件和数据文件的位置,以及更新的归档日志文件的位置。它还存储着维护数据库完整性所需要的信息:例如各种重要的序列号和时间戳。控制文件副本的最小数量是1,最大是8。
   联机重做日志文件包括:联机重做日志文件和归档日志文件。每个数据库至少有两个联机重做日志文件。联机重做日志包含多组联机重做日志文件,每个文件都称为一个成员。一个组可以接受当前更改,另一个组可以用于归档。
就每个数据库而言,要保证其正常运行,至少必须有两个联机重做日志文件组;要保证安全,魅族至少要有两个成员。
   数据文件 数据库至少需要两个数据文件。一个用于SYSTEM表空间(存储数据字典),一个用于SYSAUX表空间(存储数据字典的辅助数据)。
块中存在头部分和数据区域,还可能有一些空闲空间。头部分包含诸如行目录的信息,行目录列出块中行数据区域中的未知,还包含行锁定信息(如果有事务正在处理块中的行)
   实例参数文件,启动Oracle实例时,SGA结构会根据此参数文件的设置内置到内存,参数有数百个,但只有一个是必须的,它就是DB_NAME参数。
   口令文件 它包含存在于数据字典之外的少量用户名和口令(通常少于6个)。
   归档重做日志文件
   警报日志和跟踪文件

⑭ 数据字典 通过数据定义语言命令对其进行维护。
   Oracle提供了一组视图来查询字典。大部分视图带有三种前缀DBA、ALL、USER。
   DBA_TABLE将显示数据库中所有的表。

<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1703193/viewspace-1117110/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论