Oracle基础知识_第一讲PPT参考幻灯片_第1页
Oracle基础知识_第一讲PPT参考幻灯片_第2页
Oracle基础知识_第一讲PPT参考幻灯片_第3页
Oracle基础知识_第一讲PPT参考幻灯片_第4页
Oracle基础知识_第一讲PPT参考幻灯片_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

第一讲ORACLE数据库架构,二零一零年六月,总体介绍,课程目的,通过此门课程可以学习到的技能:安装、建立和管理ORACLE10G的企业版数据库,Oracle数据库产品,OracleDatabase10g提供了四个版本,每个版本适用于不同的开发和部署环境Oracle数据库10g标准版1Oracle数据库10g标准版2Oracle数据库10g企业版Oracle数据库10g个人版,关系型数据库系统,表,属性,行,列,数据如何组织,EMPLOYEES,DEPARTMENTS,完整性约束,结构化查询语言SQL,Structuredquerylanguage(SQL):是一种用于获取及更改数据库信息的标准的交互式编程语言SQL语句可以完成各种任务,如:查询数据从表中插入、更改、删除数据建立,替代,更改和删除对象控制对数据库及其对象的访问保证数据库的一致性及完整性,ORACLE数据库管理员的任务,按优化顺序安排ORACLE数据库的设计、实现及维护工作:1.评估数据库服务器的硬件.2.安装ORACLE软件.3.规划数据库.4.建立并打开数据库.5.备份数据库.6.管理系统用户.7.执行数据库的设计.8.从故障中恢复数据库.9.监控数据库性能.,ORACLE数据库体系结构,目标,学习此章,需要掌握以下知识:描述数据库体系结构理解实例结构,Oracle的主要组成部分,Oracle的主要组成部分,Oracleserver由Oracleinstance和Oracledatabase组成。Oracleinstance由后台进程和内存结构构成。Oracledatabase由多个操作系统文件(数据库文件)构成。其它组成部分,OracleServer,OracleInstance,用于存取Oracledatabase一次只能打开一个数据库,建立连接与创建会话,连接与会话,连接(connection)连接是用户进程与服务器进程之间的一条通信路径。会话(Session)会话是用户到OracleServer的一次特定连接。,OracleDatabase,物理结构,ORACLE数据库包含三种文件控制文件、数据文件、联机日志文件,Controlfiles,Datafiles(includesDataDictionary),Header,OnlineRedoLogfiles,控制文件,包含数据库的物理结构信息多路复用防止损坏或丢失在实例启动时就需要控制文件分为两种类型可重用和不可重用控制文件为二进制文件通过alterdatabasebackupcontrolfiletotrace命令备份控制文件,控制文件,联机日志文件,用来记录数据库的改变多路复用防止损坏或丢失,Redologbuffer,LogwriterLGWR,Group1,Group2,Group3,联机日志文件,至少要有两组。只有记录的修改写入数据文件,(归档模式下已经归档)才会被重用。建议每组至少两个成员。联机日志文件io任务重,建议将数据文件和日志文件分开磁盘放置,联机日志文件和归档日志文件分开磁盘存放。,表空间和数据文件,表空间由一个或多个数据文件组成数据文件只属于一个表空间无法使system表空间或者含有活动回退段的表空间脱机,USERSTablespace,Datafile1,Datafile2,ORACLE实例的管理,SystemMonitorSMON,DatabaseWriterDBW0,LogWriterLGWR,ProcessMonitorPMON,ArchiverARC0,SGA,JavaPool,SharedPool,LargePool,StreamsPool,DatabaseBufferCache,RedoLogBuffer,CheckpointCKPT,Oracle的内存结构,JavaPool,DatabaseBufferCache,RedoLogBuffer,SharedPool,LargePool,SGA,StreamsPool,ServerProcess1,PGA,ServerProcess2,PGA,Back-groundProcess,PGA,Oracle的内存结构,Oracle的内存结构由以下两个部分组成:SystemGlobalArea(SGA):OracleInstance的基本组成部分,在实例启动时分配。ProgramGlobalArea(PGA):当服务器进程启动时分配,在结束时回收,SystemGlobalArea(SGA),SGA由以下内存结构构成SharedPoolDatabaseBufferCacheRedoLogBuffer其它结构还可以选择为SGA配置以下三个可选的内存结构:LargePoolJavaPoolStreamPoolSHOWSGA;,SystemGlobalArea(SGA),可动态调整大小由SGA_MAX_SIZE/SGA_TARGET决定SGA的分配以GRANULE为单位连续的虚拟内存分配Granule的大小由sga_max_size决定,SharedPool,SharedPool用于缓存最近被执行的SQL语句和最近被使用的数据定义。它主要由两个内存结构构成:LibrarycacheDatadictionarycache修改共享池的大小ALTERSYSTEMSETSHARED_POOL_SIZE=64M;,LibraryCache,LibrayCache缓存最近被执行的SQL和PL/SQL的相关信息。实现常用语句的共享使用LRU算法进行管理由以下两个结构构成:SharedSQLareaSharedPL/SQLarea,DataDictionaryCache,Datadictionarycache缓存最近被使用的数据库定义。它包括关于数据库文件、表、索引、列、用户、权限以及其它数据库对象的信息。在语法分析阶段,ServerProcess访问数据字典中的信息以解析对象名和对存取操作进行验证。将数据字典信息缓存在内存中有助于缩短响应时间。,DatabaseBufferCache,DatabaseBufferCache用于缓存从数据文件中检索出来的数据块。可以大大提高查询和更新数据的性能。使用LRU算法进行管理Db_block_size决定数据库的primary数据块的大小,DatabaseBufferCache,由几个独立的子缓冲区组成DB_CACHE_SIZEDB_KEEP_CACHE_SIZEDB_RECYCLE_CACHE_SIZE可以动态更改altersystemsetdb_cache_size=96MDB_CACHE_ADVICE用来提示DatabaseBufferCache的大小设置是否合适。,RedoLogBufferCache,RedoLogBufferCache缓存对于数据块的所有修改。主要用于恢复其中的每一项修改记录都被称为redo条目。利用Redo条目的信息可以重做修改。由LOG_BUFFER设置大小,LargePool,LargePool是SGA中一个可选的内存区域。可以减轻共享池的负担SHAREDSERVER可以为备份、恢复等操作来使用可以用于并行操作不使用LRU算法来管理指定LargePool的大小ALTERSYSTEMSETLARGE_POOL_SIZE=64M,JavaPool,JavaPool为Java命令的语法分析提供服务在安装和使用Java的情况下使用其大小由JAVA_POOL_SIZE指定,STREAMPool,STREAMPOOL为流池当使用流功能其大小由STREAM_POOL_SIZE指定,ProgramGlobalArea(PGA),PGA是为每个连接到Oracledatabase的用户进程保留的内存。,Userprocess,PGA,Serverprocess,ProgramGlobalArea(PGA),PGA存储一个服务器进程或后台进程的数据和控制信息,并且只能由一个进程使用。它在进程创建时分配,在进程结束时被收回。,进程,Oracle拥有以下类型的进程:UserProcessServerProcessBackgroundProcess,用户进程(UserProcess),是一个需要与OracleServer交互的程序运行于客户端当用户运行某个工具或应用程序(如SQL*Plus)时创建,当用户退出上述程序时结束向OracleServer发出调用,但它并不与OracleServer直接交互,而是通过ServerProcess与OracleServer进行交互。,用户进程(UserProcess),Databaseuser,Serverprocess,Userprocess,Connectionestablished,ServerProcess,是一个直接与OracleServer交互的程序。与OracleServer运行于同一台机器上使用PGA执行UserProcess发出的调用,并向UserProcess返回结果状态和结果信息。,ServerProcess,Connectionestablished,Sessioncreated,Databaseuser,Userprocess,Serverprocess,BackgroundProcess,后台进程用于维护物理存储与内存中的数据之间的关系。主要包括:必须的后台进程PMONCKPTLGWRSMONDBWn可选的后台进程ARCnDnnn,DatabaseWriter(DBWn),DBWn在以下情况将数据写入磁盘:发生检查点达到脏缓冲区阈值没有可用的缓冲区超时将表空间设置为脱机或只读删除或截断表备份表空间,LOGWriter(LGWR),LGWR在以下情况将缓冲区中的数据写入磁盘:事务提交三分之一的redo日志缓冲区已满Redo日志缓冲区中的内容超过1M每三秒钟在DBWn写磁盘之前,SystemMonitor(SMON),负责检查和维护Oracledatabase的一致性。它主要完成以下工作:实例恢复重做已提交的事务打开数据库回滚未提交的事务合并数据文件中相邻的自由空间释放临时段的空间,SystemMonitor(SMON),Controlfiles,Datafiles,RedoLogfiles,Database,Instance,SGA,SMON,ProcessMonitor(PMON),当某个进程失效时,清除相关的资源。它主要负责以下工作:回滚用户的当前事务释放相关的锁释放其它相关的资源,ProcessMonitor(PMON),PGAarea,Instance,SGA,PMON,Checkpoint(CKPT),Checkpoint负责:使DBWn将SGA中所有被修改的数据库缓冲区的内容写入磁盘,无论事务是否被提交用检查点信息更新数据文件头用检查点信息更新控制文件它可以保证:将经常被修改的数据块写入磁盘简化实例恢复,Checkpoint(CKPT),Archiver(ARCn),是一个可选的后台进程当把数据库设置为ARCHIVELOG模式时,可以自动归档联机redo日志能够保存所有对数据库所做修改的记录,Archiver(ARCn),ARCn,Archivedredologfiles,逻辑结构,描述数据库的物理空间如何被使用表空间、段、区及数据块的关系,Tablespace,Datafile,Segment,Blocks,Extent,Segment,段,区和块,段存在于一个表空间中.一个或多个区组成一个段.一个或多个数据块组成一个区.数据块由一个或多个操作系统块组成.数据库中一个普通表就是一个段。分区表中每一个分区就是一个段。索引也是一个段。数据库中io以数据块为单位进行。,段segment,区extents,数据块datablocks,操作系统块osblocks,2,数据库的逻辑和物理结构,Database,Logical,Physical,Tablespace,Datafile,OSblock,Segment,Extent,Oracledatablock,Schema,查询处理,解析在SharedPool中寻找是否有同样的语句检查语法、对象名和权限对解析用到的对象加锁创建和存储执行计划执行获取和返回

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论