版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2.1物理结构2.2逻辑结构2.3内存结构2.4数据库实例与进程2.5数据字典第二章Oracle体系结构Oracle9i数据库总总体结构构DatabaseInstanceSGARedologbufferDatabuffercacheSharedpoolDatadict.
cacheLibrarycachePMONDBWRSMONLGWRCKPTOthersUserprocessServerprocessPGAControlfilesDatafilesRedologfilesArchivedlogfilesParameterfilePasswordfile2.1..1数据文件件2.1..2日志文件件2.1..3控制文件件2.1..4配置文件件2.1物物理结构构数据文件件是用于于存储数数据库数数据的文文件,如基表、、索引数数据等都都物理地地存储于于数据文文件之中中,同时时数据文文件也是是Oracle三类文件件中占用用磁盘空空间最大大的一类类文件。。存储了数数据库的的全部数数据,数数据文件件一旦添添加到数数据库中中,则不不能删除除,除非非删除表表空间。。特征如如下:1、一个数数据文件件只与一一个数据据库相联联系。2、数据文文件大小小是动态态可以改改变的。。3、一个表表空间由由一个或或多个数数据文件件组成。。查询数据据文件信信息,dba__data_files、v$datafile。selecttablespace_name,bytes/1024//1024““bytes((m)””autoextensible,file_namefromdba__data_files;selectfile#,,chekpoint_change#fromv$datafile;2.1..1数据文件件(datafiles)RedoLog文件记录录对于数数据库的的所有修修改,用用于数据库的恢恢复如果对于于日志文文件进行行镜像,,则相同同的RedoLog信息被写写入多个个联机的的RedoLog文件中数据库分分为以下下两种归归档模式式:ARCHIVELOG(归档日日志)或或NOARCHIVELOG(非归档档日志))模式。。Oracle运运行NOARCHIVELOG时只有历历史日志志,没有有归档日日志2.1..2日志文件件每个Oracle数据库至至少有两两个RedoLog日志文件件组,每每组有一一个或多多个日志志文件建议对RedoLog文件进行行镜像,,以保证证数据库库安全运运行建议使用用至少三三个RedoLog文件组,,每组2或3个日志文文件组内RedoLog文件位于于不同磁磁盘RedoLog文件是循循环使用用的ServersUsersDataFilesRedoLogFilesDatabaseBufferCacheSharedPoolRedoLogBufferSGA((SystemGlobalArea)DBWRARCHLGWR日志产生生过程123RedoLog文文件镜像像一个日志志组中RedoLog文件具有有相同的的信息选择合适适的日志志文件大大小组中的成成员同时时被更新新每组应包包含与其其他组中中数目相相同的日日志成员员镜像的RedoLog文件可以以防止RedoLog文件丢失失RedoLog文件组Group1MemberAGroup2MemberAGroup3MemberAGroup1MemberBGroup2MemberBGroup3MemberBGroup1MemberCGroup2MemberCGroup3MemberCLogFile1LogFile2LogFile3日志切换换当ORACLE从一个RedoLog文件切换换到另一一个日志志文件时时发生日日志切换换当LGWR写满一组组日志文文件时发发生日志志切换DBA可强制日日志切换换数据库关关闭时发发生日志志切换日志切换换时,当当前日志志文件被被赋予一一个新的的日志序序列号,,用于标标识其中中的信息息日志切换换时产生生检查点点CKPT(Checkpoint))控制文件件是描述述数据库库结构的的二进制制文件所有必须须的数据据文件和和日志文文件在控控制文件件中标识识数据库名名存储在在控制文文件中控制文件件用于打打开和存存取数据据库数据库恢恢复所需需的同步步信息存存储在控控制文件件中数据库的的物理组组成与控控制文件件中的记记录不同同时,系统则则不能正正常启动动或发生生down机现象建议设置置:至少使用用两个控控制文件件,并存放放于不同同磁盘参数Control_Files指明控制制文件控制文件件的镜像像可以在在数据库库创建或或创建完完成后进进行2.1..3控制文件件2.1..4配置文件件配置文件件是一个个ASCII文本文件件,记录录Oracle数据库运运行时的的一些重重要参数数。名字字通常为为initsid*.ora格式,如如:initCIMS.ora,SID相当于它它所控制制的数据据库的标标识符。。每个Oracle数据库和和实例都都有它自自己惟一一的init.ora文件。Oracle9i新引入一一个服务务器参数数文件((SPFILE),一个个服务器器参数文文件(SPFILE)可以被被认为是是在Oracle数据库服服务器端端的初始始化参数数文件。。存储在在一个服服务器参参数文件件的初始始化参数数是永久久的,它它提供了了由Oracle数据库服服务器自自我调节节的一个个基础。。服务器器参数文文件是二二进制文文件,不不能使用用一个文文本编辑辑器浏览览或编辑辑。2.2..1表空间2.2..2段2.2..3区区2.2..4数数据库库块2.2逻辑结构构2.2..5模式对象象Oracle数据库存存储结构构DatabaseTablespaceOsBlockDataFileSegmentExtentOraclebolckLogicalPhysical1.表空间的的分类2.表空间的的使用3.表空间中中对象的的存储2.2..1表空间按功能分分:Oracle中除了用用户创建建的存放放数据对对象的数数据表空空间外,,还有以以下类型型的表空空间:(1)System表空间(2)回滚表表空间((RollBackTableSpace)(3)临时表表空间((TempTableSpace)(4)用户表表空间按区的管管理方式式分:(1)本地化化管理表表空间(2)数据字字典管理理表空间间1.表空间间的分类类在数据库库中使用用多个表表空间具具有如下下优势::(1)能够将将数据字字典与用用户数据据分离开开来,避避免由于于字典对对象和用用户对象象保存在在同一个个数据文文件中而而产生的的I/O冲突。(2)能够将将回退数数据与用用户数据据分离开开来,避避免由于于硬盘损损坏而导导致永久久性的数数据丢失失。(3)能够将将表空间间的数据据文件分分散保存存到不同同硬盘上上,平均均分布物物理I/O操作。2.表空间间的使用用(4)能够将将某个表表空间设设置为脱脱机状态态或联机机状态,,以便对对数据库库的一部部分进行行备份和和恢复。。(5)能够将将某个表表空间设设置为只只读状态态,从而而将数据据库的一一部分设设置为只只读状态态。(6)能够为为某种特特殊用途途专门设设置一个个表空间间,比如如临时表表空间等等,以优优化表空空间的使使用效率率。(7)能够更更加灵活活地为用用户设置置表空间间限额。。如果表空空间只对对应一个个数据文文件,该该表空间间中所有有的对象象都存储储在此数数据文件件中。如如果表空空间对应应于多个个数据文文件,可可将一个个对象的的数据存存储在该该表空间间的任意意一个数数据文件件中,也也可将同同一个对对象的数数据分布布在表空空间的多多个数据据文件中中。3.表空间间中对象象的存储储1.数据段2.2..2段2.索引段3.临时段4.回退段数据段中中保存的的是表中中的记录录。1.数据段段在Oracle数据库中中每个未未分区索索引都有有一个索索引段保保存索引引中的索索引条目目。对于于一个分分区索引引,每个个分区都都有一个个索引段段保存它它的数据据。2.索引段段当处理查查询时,,Oracle可能会需需要使用用到一些些临时存存储空间间,用于于临时保保存解析析过的查查询语句句以及在在排序过过程中产产生的临临时数据据。Oracle会自动在在专门用用于存储储临时数数据的表表空间为为操作分分配临时时段。3.临时段段回退段用用于存放放数据修修改之前前的旧值值(包括括数据修修改之前前的位置置和值))。回滚段的的作用主主要有以以下几方方面:(1)事务回回滚(2)事务恢恢复(3)读一致致性4.回退段段区是由很多多连续的的数据块块组成的的数据库库存储空空间。缺省情况况下,数数据库会会使用表表空间中中存储的的存储参参数来管管理他们们的区。。2.2..3区主要的几几个存储储参数::INITIAL:段建立立时分配配的第一一个区的的大小((单位::字节))NEXT:段内分分配的下下一个增增量区大大小(单单位:字字节)MAXEXTENTS:分配给给段的区区总数。。MINEXTENTS:建立段段时分配配的区的的总数,,也就是是段的最最小区数数量。PCTINCREASE:为段分分配的每每个增量量区超过过上一个个区的百百分比。。INITRANS:初始数数量的DML事务条目目(并发发访问数数据块中中的行))保留的的预分配配空间数数量。NTKXTRANS:当多个个事务同同时访问问同一数数据块的的行时,,为数据据块中每每个DML事务的条条目分配配的空间间。数据库块块也称逻辑辑块或Oracle块块,它对对应磁盘盘上一个个或多个个物理块块,它的的大小由由初始化化参数db_block_size(在文文件init..ora中)决决定,典典型的大大小是2k。2.2..4数据库块块Pctfree和Pctused两个参数数用来优优化数据据块空间间的使用用。PCTFREE:块中保保留用于于UPDATE操作的空空间百分分比,当当数据占占用的空空间达到到此上限限时,新新的数据据将不能能再插入入到此块块中;PCTUSED:指定块块中数据据使用空空间的最最低百分分比;Oracle数数据库的的模式对对象包括括表、视视图、序序列、同同义词、、索引、、触发器器、存储储过程等等。2.2..5模式对象象2.3内存结构构2.3..1系系统全全局区2.3..2程程序全全局区2.3..3排排序区区2.3..4软软件代代码区系统全局局区(SGA,SystemGlobalArea.)是是内存结结构的主主要组成成部分,,是Oracle为一一个实例例分配的的一组共共享内存存缓冲区区,保存存着Oracle系统统与所有有数据库库用户的的共享信信息,包包括数据据维护、、SQL语句分分析,重重做日志志管理等等。是实实例的主主要部分分。2.3..1系统全局局区数据块缓缓冲区中中存放着着Oracle系统最近近从数据据文件中中读取的的数据块块。数据块缓缓冲区又又称用户户数据高高速缓冲冲区,为为所有与与该实例例相链接接的用户户进程所所共享。。1.数据块块缓冲区区数据块缓缓冲区的的容量受受物理容容量限制制。在Oracle9i中,数据据库缓存存的大小小可以直直接由初初始化参参数DB_CACHE_SIZE指定,该该参数可可以直接接以K字节或M字节为单单位来设设置数据据库缓存存的大小小。
字典缓冲冲区用于于保存数数据字典典中的行行。数据字典典缓冲区区也通过过最近最最少使用用(LRU)算法来来管理。。大小由由数据库库内部管管理。字字典缓存存区是SQL共享池的的一部分分,共享享池的大大小(以以字节为为单位))由数据据库文件件init.ora中的SHARED__POOL_SIZE参数来设设置。2.字典缓缓冲区对数据库库进行修修改的任任何事务务(Transaction)在记录录到重做做日志之之前都必必须首先先放到重重做日志志缓冲区区(RedoLogBuffer..)中。重重做日志志缓冲区区是专为为此开辟辟的一块块内存区区域,重重做日志志缓存中中的内容容将被LGWR后台进程程随时写写入重做做日志文文件。3.重做日日志缓冲冲区重做日志志缓存是是一个循循环缓存存区,在在使用时时从顶端端向底端端写入数数据,然然后再返返回到缓缓冲区的的起始点点循环写写入。重重做日志志缓冲区区的大小小(以字字节为单单位)由由init.ora文件中的的LOGBUFFER参数决定定。共享SQL池(SharedSQLPool)相当于于程序高高速缓冲冲区,所所有的用用户程序序都存放放在共享享SQL池中。SQL共享池包包括库高高速缓存存、数据据字典高高速缓存存和服务务器控制制结构。。4.共享SQL池共享池的的大小取取决于init.ora文件参数数SHARED__POOL_SIZE,它是以以字节为为单位的的。用户户必须将将这个值值设得足足够大,,以确保保有足够够的可用用空间来来装载和和存储PL/SQL块和SQL语句。Java池为Java命令提供供语法分分析。5.Java池缓冲池把把大数据据集与其其他的应应用程序序分开,,以减少少它们争争夺数据据块缓冲冲区内相相同的资资源。可可以在SGA中创建多多个缓冲冲池。。6.多缓冲冲池程序全局局区PGA(ProgramGlobalArea,PGA),是单单个Oracle进程使用用的内存存区域,,不属于于实例的的内存结结构。它它含有单单个进程程工作时时需要的的数据和和控制信信息,PGA是非共享享的,只只有服务务进程本本身才能能够访问问它自己己的PGA区。2.3..2程序全局局区排序区存在于请请求排序序的用户户进程的的内存中中,由于于排序需需要内存存空间,,Oracle利用该内内存排序序数据,,这部分分空间称称为排序序区。该该空间的的大小为为适应排排序数据据量的大大小,可可增长,,但受初初始化参参数SORT_AREA__SIZER所限制。。2.3..3排序区软件代码码区(SoftwareCodeArea)用于存存储正在在执行的的或可以以执行的的程序代代码。软软件代码码区是只只读,可可安装成成共享或或非共享享。Oracle系统程序序是共享享的,多多个Oracle用户可存存取它,,而不需需要在内内存有多多个副本本。用户户程序可可以共享享也可以以不共享享。2.3..4软软件代代码区2.4数据库实实例与进进程2.4..1Oracle数据库库实例2.4..2进进程数据库是指物理理上的数数据库文文件或逻逻辑上的的数据库库结构。。基于之上上管理和和控制物物理数据据库的软软件系统统,称为为数据库管管理系统统(DBMS)。数据库实实例是指软件件系统中中用来访访问数据据库文件件集的存存储结构构以及后后台进程程的集合合,它是是存取和和控制数数据库的的软件机机制。2.4..1Oracle数据库库实例进程又称任务务,是操操作系统统中一个个极为重重要的概概念。一一个进程程执行一一组操作作,完成成一个特特定的任任务。对对Oracle数据库管管理系统统来说,,进程由由用户进进程、服服务器进进程和后后台进程程所组成成。进程与程程序的区区别在于前者者是一个个动态概概念,后后者是一一个静态态实体;;程序仅仅仅是指指令的有有序集合合,而进进程则强强调执行行过程。。进程可可以动态态地创建建,完成成任务后后即会消消亡。2.4..2进程当用户运运行一个个应用程程序时,,系统就就为它建建立一个个用户进进程。用用户进程程执行的的是一个个应用程程序或Oracle工具程序序的代码码,以完完成用户户所指定定的任务务。用户户进程不不是实例例。1.用户进进程服务器进进程处理理与应用用程序相相连的用用户进程程的请求求,它与与用户进进程相通通讯,为为相连的的用户进进程的Oracle请请求服务务。2.服务器器进程Oracle的后台进进程主要要包括::(1)SMON系统监控控进程((systemmonitor)(2)PMON进程监控控进程((processmonitor)(3)DBWR数据库写写进程(4)LGWR日志文件件写进程程(5)ARCH归档进程程(archiverprocess)(6)RECO恢复进程程(7)LCKN封锁进程程3.后台进进程2.5数据字典典2.5..1数数据字字典的结结构2.5..2数数据字字典的用用途数据字典典是Oracle数据库的的核心组组件,它它是对用用户来说说为只读读类型的的表和视视图组成成。在其其中保存存着关于于数据库库系统本本身以及及其中存存储的所所有对象象的基本本信息。。数据库对对象所有有的框架架对象的的定义((表、视视图、索索引、群群集、同同义词、、序列、、过程、、函数、、包、触触发器等等)为框架对对象如何何分配和和使用空空间列的默认认值完整性约约束信息息数据库安安全信息息,包括括用户、、权限、、角色等等审计信息息一个数据据字典包包括基础础表,动动态性能能视图及及数据字字典视图图。数据据字典视视图又包包含ALL视图,USER视图和DBA视图。2.5..1数据字典典的结构构1.基础表表存储相关关数据库库信息的的表,这这些数据据库的信信息包括括表、索索引、约约束,以以及所有有其他数数据库对对象结构构的信息息。它们们属于SYS用户,通通过运行行SQL脚本来创创建(在在数据库库创建时时自动发发生)。。是Oracle系统的核核心。只只有Oracle才能写和和读取这这些表。。基础表表中的存存储的信信息通常常是经过过加密处处理的。。大部分分数据字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 维稳综治七项工作制度
- 2025 初中写作运用故事悬念保留引人深思课件
- 申请书写作范例参考指导
- 商丘幼儿师范学校招聘真题
- 2025年策勒县技工学校招聘考试真题
- 技能培训实施指南(2025年版)
- 2026年受限空间危化作业考前押题及答案解析
- 2026年焊接技术操作技能考试重点试卷及答案
- 2026年春季学期师生关系调查问卷
- 网络安全风险评估体系-第1篇
- 《低压电工实操及考证》全套教学课件
- 《奔富系列宣传》课件
- 《建筑碳减排量计算方法及审定核查要求》
- 专题37 八年级名著导读梳理(讲义)
- 神经科学研究进展
- 西方现代艺术赏析学习通超星期末考试答案章节答案2024年
- 新课标语文整本书阅读教学课件:童年(六下)
- CJ/T 124-2016 给水用钢骨架聚乙烯塑料复合管件
- 电影赏析绿皮书课件(内容详细)
- 2024年LOG中国供应链物流科技创新发展报告
- GB/T 43602-2023物理气相沉积多层硬质涂层的成分、结构及性能评价
评论
0/150
提交评论