2oracle9i体系结构

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

辽宁工程技术大学电子与信息工程学院第2章Oracle9i体系结构2.1Oracle9i体系结构概述2.2Oracle9i的物理结构2.3Oracle9i的逻辑结构2.4数据库例程2.5Oracle9i的内存结构2.6Oracle9i的进程结构2.7数据字典辽宁工程技术大学电子与信息工程学院2.1Oracle9i体系结构概述例程SGA辽宁工程技术大学电子与信息工程学院2.1Oracle9i体系结构概述辽宁工程技术大学电子与信息工程学院口令文件例程SGA重做日志缓冲区共享池数据字典高速缓存库高速缓存DBWRSMONPMONCKPTLGWR其它用户进程服务器进程PGA控制文件数据文件数据库数据库缓冲区高速缓存重做日志文件Java池大型共享池参数文件归档日志文件辽宁工程技术大学电子与信息工程学院2.2Oracle9i的物理结构数据库的物理(存储)结构是指构成数据库的操作系统文件Oracle数据库的物理结构主要包括四种文件数据文件日志文件控制文件配置文件辽宁工程技术大学电子与信息工程学院2.2.1数据文件用于存放数据库中所有的数据一个数据库可包含多个数据文件一个数据文件只能属于一个数据库数据文件的后缀是.DBF辽宁工程技术大学电子与信息工程学院2.2.1数据文件查看数据文件selecttablespace_name,file_namefromdba_data_files;coltablespace_nameformata20;colfile_nameformata50;selecttablespace_name,file_namefromdba_data_files;selecttablespace_name,bytes/1024/1024,autoextensible,file_namefromdba_data_files;setlinesize200;selectnamefromv$datafile;辽宁工程技术大学电子与信息工程学院日志文件又称重做日志文件或联机重做日志文件(OnlineRedoLogFile)日志文件记录所有对数据库进行的修改,以便在系统发生故障时,用它对数据库进行恢复。日志文件的后缀是.LOG2.2.2日志文件辽宁工程技术大学电子与信息工程学院每一个数据库至少包含两个日志文件组。每一个日志文件组至少包含一个日志文件成员。每一个日志文件成员对应一个物理文件。日志文件组以循环方式进行写操作。日志文件的特点:2.2.2日志文件辽宁工程技术大学电子与信息工程学院LogFile1.logLogFile2.logGroup1Group2Member2.1Member1.12.2.2日志文件日志文件工作原理辽宁工程技术大学电子与信息工程学院镜像日志文件是为防止日志文件丢失,在不同磁盘上同时维护两个或多个联机日志文件的副本。2.2.2日志文件辽宁工程技术大学电子与信息工程学院2.2.2日志文件Group1Group2Logfile1.logLogfile2.logMember2.1Member1.1Logfile3.logLogfile4.logMember2.2Member1.2Disk1Disk2镜像日志文件工作原理辽宁工程技术大学电子与信息工程学院根据在事务信息将被覆盖时,是否应该将文件归档,数据库分为以下两种归档模式:归档日志模式(Archivelog):全恢复模式,适合银行系统等非归档日志模式(NoArchivelog):适合对数据库中数据要求不高的场所2.2.2日志文件辽宁工程技术大学电子与信息工程学院2.2.2日志文件ARCH存储介质LogFile1LogFile2Group1Group2Member2.1Member1.1归档日志模式辽宁工程技术大学电子与信息工程学院查看日志文件SELECT*FROMV$LOGFILE;SELECT*FROMV$LOG;selectname,log_modefromv$database;archiveloglist;2.2.2日志文件辽宁工程技术大学电子与信息工程学院是一个较小的二进制文件,用于打开、存取控制数据库控制文件记录了数据库的物理结构,如数据库名、数据文件和日志文件的名字及位置等信息。控制文件的后缀是.CTL控制文件对于数据库的成功启动和正常运行至关重要。2.2.3控制文件辽宁工程技术大学电子与信息工程学院在启动数据库时,必须先找到控制文件,以确定数据文件和日志文件,只有控制文件一切正常,才能打开数据库。并且在数据库运行过程中,控制文件必须始终保持可用状态,以接受对数据库物理结构所做的任何修改信息。如果打开数据库时找不到可用的控制文件,或控制文件所记录的信息出错,则无法打开数据库。控制文件的内容只能由Oracle自身来修改。每个数据库至少要有一个控制文件。2.2.3控制文件辽宁工程技术大学电子与信息工程学院查看控制文件Select*fromv$controlfile;2.2.3控制文件辽宁工程技术大学电子与信息工程学院2.2.4配置文件配置文件(也叫参数文件),用于在启动数据库对数据库和例程进行配置。配置文件的后缀是.ORAOracle9i有两个参数文件init.ora(E:\oracle\admin\ora9db\pfile)SPFILEORA9DB.ORA(E:\oracle\ora90\database)辽宁工程技术大学电子与信息工程学院2.2.4配置文件如何判断当前数据库使用的是哪个配置文件?selectname,valuefromv$parameterwherename='spfile';value的值为空,说明使用的配置文件是init.oravalue的值不为空,说明使用的是spfile***.ora辽宁工程技术大学电子与信息工程学院2.2.4配置文件如何判断当前数据库使用的是哪个配置文件?showparameterspfilevalue的值为空,说明使用的配置文件是init.oravalue的值不为空,说明使用的是spfile***.ora辽宁工程技术大学电子与信息工程学院2.2.5其他文件口令文件用于保存具有SYSDBA、SYSOPER权限的用户名select*fromv$pwfile_users;归档日志文件用于保存已经写满的重做日志文件辽宁工程技术大学电子与信息工程学院2.3Oracle9i的逻辑结构Oracle的逻辑结构是由一个或多个表空间组成的一个表空间由若干个段组成一个段由若干个区组成一个区由若干数据库块组成一个数据库块对应一个或多个OS块辽宁工程技术大学电子与信息工程学院Oracle数据库的存储结构数据库逻辑物理表空间数据文件O/S块数据块段范围日志文件控制文件配置文件数据库2.3Oracle9i的逻辑结构辽宁工程技术大学电子与信息工程学院表空间段块区段Oracle数据库的逻辑结构辽宁工程技术大学电子与信息工程学院表空间分类SYSTEM表空间–自动建立(随数据库创建)–存放数据字典–存储过程、包、函数和触发器的定义–存储数据库对象的定义2.3.1表空间辽宁工程技术大学电子与信息工程学院表空间分类回滚表空间–回滚表空间(RollBackTableSpace)是用于存放回滚段信息的表空间。–回滚段中的信息是临时的、未提交的事务信息,当需要回滚事务时,从回滚段表空间中提取回滚信息撤销事务。–回滚表空间只能建立回滚段,不能在回滚表空间创建数据库对象。2.3.1表空间辽宁工程技术大学电子与信息工程学院表空间分类临时表空间–临时表空间(TempTableSpace)一般用于存放例程运行过程中产生的临时数据(如执行用于排序、连接查询和建立索引的SQL语句时产生的临时数据)。–如果数据库使用过程中的临时数据较多且频繁,则应当在数据库中创建一个专门用来存储临时数据的临时表空间。否则临时数据会存储在SYSTEM表空间中,影响整个系统的性能。2.3.1表空间辽宁工程技术大学电子与信息工程学院表空间分类用户表空间–用于存放用户的私有信息。2.3.1表空间辽宁工程技术大学电子与信息工程学院select*fromv$tablespace;select*fromdba_tablespaces;selecttablespace_name,file_namefromdba_data_files;查看表空间2.3.1表空间辽宁工程技术大学电子与信息工程学院段有多种不同的类型,对应于不同类型的数据对象,常见的有:数据段(DataSegment)索引段(IndexSegment)回滚段(RollbackSegment)临时段(TemporarySegment)2.3.2段Copyright©OracleCorporation,2001.Allrightsreserved.段的分类辽宁工程技术大学电子与信息工程学院事务回滚事务恢复回滚段读一致性控制文件数据文件重做日志回滚段作用当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。2.3.2段辽宁工程技术大学电子与信息工程学院是数据库空间分配的逻辑单位,一个区由若干数据库块组成缺省情况下,数据库会使用表空间中存储的存储参数来管理它们的分区分配给段的第一个区称初始分区,以后分配的区称增量分区2.3.3区辽宁工程技术大学电子与信息工程学院主要的几个存储参数:INITIAL:段建立时分配的第一个区的大小(单位:字节)NEXT:段内分配的下一个增量区大小(单位:字节)MAXEXTENTS:分配给段的区总数MINEXTENTS:建立段时分配的区总数,也就是段的最小区数量PCTINCREASE:为段分配的每个增量区超过上一个区的百分比2.3.3区辽宁工程技术大学电子与信息工程学院存储子句优先级Oracle缺省设置表空间段(表/索引)2.3.3区辽宁工程技术大学电子与信息工程学院数据库块又称逻辑块或Oracle块。一个数据库块对应一个或多个物理块(OS块)数据库块的大小由参数DB_BLOCK_SIZE确定。2.3.4数据库块辽宁工程技术大学电子与信息工程学院2.4数据库例程数据库例程(instance),也叫数据库实例,是OracleDBMS中用来访问数据库文件集的存储结构以及后台进程的集合,它是存取和控制数据库的软件机制。数据库例程是运行数据库时后台运行的程序、占用的内存等的集合。数据库例程是用户进程与数据文件之间的桥梁,它由SGA(一系列的内存区)与后台进程组成,用户进程必须通过例程才能读写数据文件。辽宁工程技术大学电子与信息工程学院2.4数据库例程数据库由一些文件组成,用户不能直接理解数据库数据文件的内容,例程能理解这些信息,并把数据库里的数据取出来,翻译后展现给用户。例程还能把修改的数据,以数据库的格式存到数据文件中。另外例程还有监视进程、存档等功能辽宁工程技术大学电子与信息工程学院2.4数据库例程口令文件例程SGA重做日志缓冲区共享池数据字典高速缓存库高速缓存DBWRSMONPMONCKPTLGWR其它用户进程服务器进程PGA控制文件数据文件数据库数据库缓冲区高速缓存重做日志文件Java池大型共享池配置文件归档日志文件OracleServerOracle服务器辽宁工程技术大学电子与信息工程学院2.4数据库例程通常数据库与例程是一一对应的,即一个数据库对应一个例程;在并行数据库服务器结构中,数据库与例程是一对多关系,即一个数据库对应多个例程;多个例程同时驱动一个数据库的架构称作“集群”,同一时间一个用户只能与一个例程联系,当某一个例程出现故障时,其他例程照常运行,从而保证了数据库的安全运行。辽宁工程技术大学电子与信息工程学院2.4数据库例程例程数据库单例程数据库系统例程1数据库多例程(集群)数据库系统例程2例程3例程4辽宁工程技术大学电子与信息工程学院Oracle的内存结构由四个内存区组成,分别是:•系统全局区(SGA)•程序全局区(PGA)•排序区•软件代码区2.5Oracle9i的内存结构辽宁工程技术大学电子与信息工程学院2.5.1系统全局区系统全局

1 / 85
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功