Oracle数据库开发实用教程第七章.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle数据库开发实用教程第七章

Oracle 11g实用教程;内容概要;Oracle数据库实例;Oracle实例概述;在启动数据库时, Oracle首先,在内存中获取一定的空间,启动各种用途的后台进程,即创建一个数据库实例。 然后,由实例装载数据文件和重做日志文件。 最后,打开数据库。 用户操作数据库的过程实质上是与数据库实例建立连接,然后通过实例来连接、操作数据库的过程。;数据库与实例的关系 单实例数据库系统;实例组成 内存结构:系统全局区(SGA)和程序全局区(PGA) 后台进程组成 ;实例 ;Oracle内存结构;SGA SGA是由Oracle分配的共享内存结构,包含一个数据库实例共享的数据和控制信息。当多个用户同时连接同一个实例时,SGA数据可供多个用户共享,SGA又称为共享全局区(Shared Global Area)。 用户对数据库的各种操作主要在SGA中进行。该内存区随数据库实例的创建而分配,随实例的终止而释放。 PGA PGA是在用户进程连接数据库、创建一个会话时,由Oracle为用户分配的内存区域,保存当前用户私有的数据和控制信息,因此该区又称为私有全局区(Private Global Area)。 每个服务器进程只能访问自己的PGA,所有服务器进程的PGA总和即为实例的PGA的大小。;SGA;(1)数据高速缓冲区;数据高速缓冲区的工作过程 数据高速缓冲区由许多大小相等的缓存块组成。;缓冲块的类型 脏缓存块(Dirty Buffers) 保存的是已经被修改过的数据。当一条SQL语句对某个缓存块中的数据进行修改后,这个缓存块就被标记为脏缓存块。它们最终将由DBWR进程写入数据文件,以永久性地保存修改结果。 空闲缓存块(Free Buffers) 不包含任何数据,它们等待后台进程或服务器进程向其中写入数据。当Oracle从数据文件中读取数据时,将会寻找空闲缓存块,以便将数据写入其中。 命中缓存块(Pinned Buffers) 正被使用,或者被显式地声明为保留的缓存块。这些缓存块始终保留在数据高速缓冲区中,不会被换出内存。 ;缓存块的管理 脏缓存块列表:包含那些已经被修改但还没有写入数据文件的脏缓存块。 LRU列表(Least Recently Used):包含—— 所有的空闲缓存块 命中缓存块 那些还没有来得及移入到脏缓存块列表中的脏缓存块。 说明:在该列表中,最近被访问的缓存块被移动到列表的头部,而其他缓存块向列表尾部移动,最近最少被访问的缓存块最先被移出LRU列表,从而保证最频繁使用的缓存块始终保存在内存中。;数据高速缓冲区大小 数据高速缓冲区越大,缓存命中率越高,从而减少了Oracle访问硬盘数据的次数,提高了数据库系统执行的效率。然而,如果数据高速缓冲区的值太大,Oracle就不得不在内存中寻找更多的块来定位所需要的数据,反而降低了系统性能。显然,需要确定一个合理的数据高速缓冲区大小。 通过查询动态性能视图V$SGA_DYNAMIC_COMPONETS查看数据高速缓冲区的构成情况。 使用ALTER SYSTEM语句动态修改参数DB_CACHE_SIZE(标准块),从而调整数据高速缓冲区的大小。;(2)重做日志缓冲区;重做日志缓冲区的工作过程 ;重做日志缓冲区的大小 较大的重做日志缓冲区,可以减少对重做日志文件写的次数,适合长时间运行的、产生大量重做记录的事务。 使用ALTER SYSTEM语句动态修改参数LOG_BUFFER,以调整缓冲区大小。;(3)共享池;数据字典缓存区 保存最常用的数据字典信息。 共享池大小 由SHARED_POOL_SIZE参数指定。 合适的共享池大小,可使编译过的程序代码长驻内存,大大降低重复执行相同的SQL语句、PL/SQL程序的系统开销,从而提高数据库的性能。 ;(4)大型池 ;(5)Java池 ;(6)流池 ;SGA的管理;SGA自动管理 通过设置初始化参数SGA_TARGET,可以实现对SGA中的数据高速缓冲区、共享池、大型池、Java池和流池的自动管理,即这几个组件的内存调整不需要DBA来干预,系统自动进行调整。 但是对于日志缓冲区、非标准块的数据高速缓冲区、保留池、回收池等其他区域的调整还需要DBA使用ALTER SYSTEM语句手动进行调整。;设置SGA自动管理的方法 计算参数SGA_TARGET的大小: 设置参数SGA_TARGET 通过ALTER SYSTEM语句设置参数SGA_TARGET的值,该值可以是上一步计算出来的结果,也可以是当前SGA大小与SGA_MAX_SIZE之间的某个值。 将SGA中与自动管理相关的组件大小设置为0:; 如果要取消自动管理,只需将参数SGA_TARGET设置为0即可。 ;PGA;Oracle进程概述;用户进程 当用户连接数据库

文档评论(0)

shuwkb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档