第二章 Oracle体系结构ppt课件_第1页
第二章 Oracle体系结构ppt课件_第2页
第二章 Oracle体系结构ppt课件_第3页
第二章 Oracle体系结构ppt课件_第4页
第二章 Oracle体系结构ppt课件_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2.1 物理构造2.2 逻辑构造2.3 内存构造2.4 数据库实例与进程2.5 数据字典第二章 Oracle体系构造.Oracle9i数据库总体构造DatabaseInstanceSGARedo logbufferData buffercacheShared poolData dict.cacheLibrarycache PMON DBWRSMON LGWRCKPTOthersUserprocessServerprocessPGAControl filesData files Redo logfilesArchived log filesParameterfilePasswordfile.2.

2、1.1 数据文件2.1.2 日志文件2.1.3 控制文件2.1.4 配置文件 2.1 物理构造.数据文件是用于存储数据库数据的文件,如基表、索引数据等都物理地存储于数据文件之中,同时数据文件也是Oracle三类文件中占用磁盘空间最大的一类文件。存储了数据库的全部数据,数据文件一旦添加到数据库中,那么不能删除,除非删除表空间。特征如下: 1、一个数据文件只与一个数据库相联络。 2、数据文件大小是动态可以改动的。 3、一个表空间由一个或多个数据文件组成。查询数据文件信息,dba_data_files、v$datafile。 select tablespace_name,bytes/1024/102

3、4 “bytes(m) autoextensible,file_name from dba_data_files; select file#,chekpoint_change# from v$datafile;2.1.1 数据文件( datafiles). Redo Log 文件记录对于数据库的一切修正,用于数 据库的恢复 假设对于日志文件进展镜像,那么一样的 Redo Log 信息被写入多个联机的 Redo Log文件中数据库分为以下两种归档方式:ARCHIVELOG归档日志或NOARCHIVELOG非归档日志方式。Oracle运转NOARCHIVELOG时只需历史日志,没有归档日志2.1.

4、2 日志文件.每个Oracle数据库至少有两个Redo Log日志文件组,每组有一个或多个日志文件建议对Redo Log 文件进展镜像,以保证数据库平安运转建议运用至少三个Redo Log文件组,每组2或3个日志文件组内Redo Log 文件位于不同磁盘Redo Log文件是循环运用的.ServersUsersData FilesRedo Log FilesDatabase Buffer CacheShared PoolRedo Log BufferSGA(System Global Area)DBWRARCHLGWR日志产生过程123.Redo Log 文件镜像一个日志组中 Redo Log

5、 文件具有一样的信息选择适宜的日志文件大小组中的成员同时被更新每组应包含与其他组中数目一样的日志成员镜像的 Redo Log文件可以防止 Redo Log文件丧失.Redo Log文件组Group1 Member AGroup2 Member AGroup3 Member AGroup1 Member BGroup2 Member BGroup3 Member BGroup1 Member CGroup2 Member CGroup3 Member CLog File 1Log File 2Log File 3. 日志切换当ORACLE从一个Redo Log文件切换到另一个日志文件时发生日志切

6、换当LGWR写满一组日志文件时发生日志切换DBA可强迫日志切换数据库封锁时发生日志切换日志切换时,当前日志文件被赋予一个新的日志序列号,用于标识其中的信息日志切换时产生检查点CKPT(Checkpoint).控制文件是描画数据库构造的二进制文件一切必需的数据文件和日志文件在控制文件中标识数据库名存储在控制文件中控制文件用于翻开和存取数据库数据库恢复所需的同步信息存储在控制文件中数据库的物理组成与控制文件中的记录不同时,系统那么不能正常启动或发生down机景象建议设置:至少运用两个控制文件,并存放于不同磁盘参数 Control_Files指明控制文件控制文件的镜像可以在数据库创建或创建完成后进展

7、2.1.3 控制文件.2.1.4 配置文件配置文件是一个ASCII文本文件,记录Oracle数据库运转时的一些重要参数。名字通常为initsid*.ora格式,如:initCIMS.ora,SID相当于它所控制的数据库的标识符。每个Oracle数据库和实例都有它本人独一的init.ora文件。 . Oracle9i新引入一个效力器参数文件SPFILE,一个效力器参数文件SPFILE可以被以为是在Oracle数据库效力器端的初始化参数文件。存储在一个效力器参数文件的初始化参数是永久的,它提供了由Oracle数据库效力器自我调理的一个根底。效力器参数文件是二进制文件,不能运用一个文本编辑器阅读或编

8、辑。.2.2.1 表空间2.2.2 段2.2.3 区2.2.4 数据库块2.2 逻辑构造2.2.5 方式对象 .Oracle数据库存储构造DatabaseTablespaceOs BlockData FileSegmentExtentOracle bolckLogicalPhysical.1表空间的分类 2表空间的运用 3表空间中对象的存储2.2.1 表空间.按功能分: Oracle中除了用户创建的存放数据对象的数据表空间外,还有以下类型的表空间:1System表空间2回滚表空间RollBack TableSpace3暂时表空间Temp TableSpace4用户表空间按区的管理方式分:1本地

9、化管理表空间2数据字典管理表空间1表空间的分类.在数据库中运用多个表空间具有如下优势:1可以将数据字典与用户数据别分开来,防止由于字典对象和用户对象保管在同一个数据文件中而产生的IO冲突。2可以将回退数据与用户数据别分开来,防止由于硬盘损坏而导致永久性的数据丧失。3可以将表空间的数据文件分散保管到不同硬盘上,平均分布物理IO操作。2表空间的运用 .4可以将某个表空间设置为脱机形状或联机形状,以便对数据库的一部分进展备份和恢复。5可以将某个表空间设置为只读形状,从而将数据库的一部分设置为只读形状。6可以为某种特殊用途专门设置一个表空间,比如暂时表空间等,以优化表空间的运用效率。7可以更加灵敏地为

10、用户设置表空间限额。.假设表空间只对应一个数据文件,该表空间中一切的对象都存储在此数据文件中。假设表空间对应于多个数据文件,可将一个对象的数据存储在该表空间的恣意一个数据文件中,也可将同一个对象的数据分布在表空间的多个数据文件中。3表空间中对象的存储 . 1数据段2.2.2 段 2索引段 3暂时段 4回退段 .数据段中保管的是表中的记录。1数据段 .在Oracle数据库中每个未分区索引都有一个索引段保管索引中的索引条目。对于一个分区索引,每个分区都有一个索引段保管它的数据。2索引段 .当处置查询时,Oracle能够会需求运用到一些暂时存储空间,用于暂时保管解析过的查询语句以及在排序过程中产生的

11、暂时数据。Oracle会自动在专门用于存储暂时数据的表空间为操作分配暂时段。3暂时段 .回退段用于存放数据修正之前的旧值包括数据修正之前的位置和值。回滚段的作用主要有以下几方面:1事务回滚2事务恢复3读一致性4回退段 .区是由很多延续的数据块组成的数据库存储空间。缺省情况下,数据库会运用表空间中存储的存储参数来管理他们的区。2.2.3 区 .主要的几个存储参数:INITIAL:段建立时分配的第一个区的大小单位:字节NEXT:段内分配的下一个增量区大小单位:字节MAXEXTENTS:分配给段的区总数。MINEXTENTS:建立段时分配的区的总数,也就是段的最小区数量。PCTINCREASE:为段

12、分配的每个增量区超越上一个区的百分比。INITRANS:初始数量的DML事务条目并发访问数据块中的行保管的预分配空间数量。NTKXTRANS:当多个事务同时访问同一数据块的行时,为数据块中每个DML事务的条目分配的空间。 . 数据库块也称逻辑块或Oracle块,它对应磁盘上一个或多个物理块,它的大小由初始化参数db_block_size在文件init.ora中决议,典型的大小是2k。2.2.4 数据库块. Pctfree和Pctused两个参数用来优化数据块空间的运用。PCTFREE:块中保管用于UPDATE操作的空间百分比,当数据占用的空间到达此上限时,新的数据将不能再插入到此块中;PCTU

13、SED:指定块中数据运用空间的最低百分比;. Oracle数据库的方式对象包括表、视图、序列、同义词、索引、触发器、存储过程等。 2.2.5 方式对象 .2.3 内存构造 2.3.1 系统全局区2.3.2 程序全局区2.3.3 排序区2.3.4 软件代码区. 系统全局区SGA,System Global Area.是内存构造的主要组成部分,是Oracle为一个实例分配的一组共享内存缓冲区,保管着Oracle系统与一切数据库用户的共享信息,包括数据维护、SQL语句分析,重做日志管理等。是实例的主要部分。2.3.1 系统全局区 .数据块缓冲区中存放着Oracle系统最近从数据文件中读取的数据块。数

14、据块缓冲区又称用户数据高速缓冲区,为一切与该实例相链接的用户进程所共享。 1数据块缓冲区.数据块缓冲区的容量受物理容量限制。在Oracle9i中,数据库缓存的大小可以直接由初始化参数DB_CACHE_SIZE指定,该参数可以直接以K字节或M字节为单位来设置数据库缓存的大小。 .字典缓冲区用于保管数据字典中的行。数据字典缓冲区也经过最近最少运用LRU算法来管理。大小由数据库内部管理。字典缓存区是SQL共享池的一部分,共享池的大小以字节为单位由数据库文件init.ora中的SHARED_POOL_SIZE参数来设置。2字典缓冲区 .对数据库进展修正的任何事务Transaction在记录到重做日志之

15、前都必需首先放到重做日志缓冲区Redo Log Buffer.中。重做日志缓冲区是专为此开辟的一块内存区域,重做日志缓存中的内容将被LGWR后台进程随时写入重做日志文件。 3重做日志缓冲区 .重做日志缓存是一个循环缓存区,在运用时从顶端向底端写入数据,然后再前往到缓冲区的起始点循环写入。重做日志缓冲区的大小以字节为单位由init.ora文件中的LOGBUFFER参数决议。 .共享SQL池Shared SQL Pool相当于程序高速缓冲区,一切的用户程序都存放在共享SQL池中。SQL共享池包括库高速缓存、数据字典高速缓存和效力器控制构造。4共享SQL池 .共享池的大小取决于init.ora文件参

16、数SHARED_POOL_SIZE,它是以字节为单位的。用户必需将这个值设得足够大,以确保有足够的可用空间来装载和存储PL/SQL块和SQL语句。. Java池为Java命令提供语法分析。5Java池 .缓冲池把大数据集与其他的运用程序分开,以减少它们争夺数据块缓冲区内一样的资源。可以在SGA中创建多个缓冲池 。6多缓冲池 .程序全局区PGAProgram Global Area,PGA,是单个Oracle进程运用的内存区域,不属于实例的内存构造。它含有单个进程任务时需求的数据和控制信息,PGA是非共享的,只需效力进程本身才可以访问它本人的PGA区。2.3.2 程序全局区 .排序区存在于恳求排

17、序的用户进程的内存中,由于排序需求内存空间,Oracle利用该内存排序数据,这部分空间称为排序区。该空间的大小为顺应排序数据量的大小,可增长,但受初始化参数SORT_AREA_SIZER所限制。 2.3.3 排序区 .软件代码区Software Code Area用于存储正在执行的或可以执行的程序代码。软件代码区是只读,可安装成共享或非共享。Oracle系统程序是共享的,多个Oracle用户可存取它,而不需求在内存有多个副本。用户程序可以共享也可以不共享。 2.3.4 软件代码区 .2.4 数据库实例与进程2.4.1 Oracle数据库实例2.4.2 进程.数据库是指物理上的数据库文件或逻辑上

18、的数据库构造。 基于之上管理和控制物理数据库的软件系统,称为数据库管理系统DBMS。数据库实例是指软件系统中用来访问数据库文件集的存储构造以及后台进程的集合,它是存取和控制数据库的软件机制。 2.4.1 Oracle数据库实例 .进程又称义务,是操作系统中一个极为重要的概念。一个进程执行一组操作,完成一个特定的义务。对Oracle数据库管理系统来说,进程由用户进程、效力器进程和后台进程所组成。进程与程序的区别在于前者是一个动态概念,后者是一个静态实体;程序仅仅是指令的有序集合,而进程那么强调执行过程。进程可以动态地创建,完成义务后即会消亡。2.4.2 进程 .当用户运转一个运用程序时,系统就为

19、它建立一个用户进程。用户进程执行的是一个运用程序或Oracle工具程序的代码,以完成用户所指定的义务。用户进程不是实例。1用户进程.效力器进程处置与运用程序相连的用户进程的恳求,它与用户进程相通讯,为相连的用户进程的Oracle恳求效力。2效力器进程 . Oracle的后台进程主要包括:1SMON系统监控进程system monitor2PMON进程监控进程process monitor3DBWR数据库写进程4LGWR日志文件写进程5ARCH归档进程archiver process6RECO恢复进程7LCKN封锁进程3后台进程 .2.5 数据字典 2.5.1 数据字典的构造2.5.2 数据字典

20、的用途.数据字典是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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论