`
zjx2388
  • 浏览: 1308101 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

关于SGA

阅读更多
SGA (System Global Area)是Oracle Instance的 基本组成部分,在实例启动时分配。是一组包含一个Oracle实例的数据和控制信息的共享内存结构。主要是用于存储数据库信息的内存区,该信息为数据库进程所共享(PGA不能共享的)。它包含Oracle 服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。

SGA几个很重要的特性:
1、SGA的构成——数据和控制信息,我们下面会详细介绍;
2、SGA是共享的,即当有多个用户同时登录了这个实例,SGA中的信息可以被它们同时访问(当涉及到互斥的问题时,由latch和enquence控制);
3、一个SGA只服务于一个实例,也就是说,当一台机器上有多个实例运行时,每个实例都有一个自己的SGA尽管SGA来自于OS的共享内存区,但实例之间不能相互访问对方的SGA区。

它主要包括:
1.数据库高速缓存(the database buffer cache),
2.重演日志缓存(the redo log buffer)
3.共享池(the shared pool)
4.数据字典缓存(the data dictionary cache)以及其它各方面的信息。

1.数据高速缓冲区(Data Buffer Cache)

在数据高速缓冲区中存放着Oracle系统最近使用过的数据块(即用户的高速缓冲区),当把数据写入数据库时,它以数据块为单位进行读写,当数据高速缓冲区填满时,则系统自动去掉一些不常被用访问的数据。如果用户要查的数据不在数据高速缓冲区时,Oracle自动从磁盘中去读取。数据高速缓冲区包括三个类型的区:1) 脏的区(Dirty Buffers):包含有已经改变过并需要写回数据文件的数据块。
2) 自由区(Free Buffers):没有包含任何数据并可以再写入的区,Oracle可以从数据文件读数据块该区。
3) 保留区(Pinned Buffers):此区包含有正在处理的或者明确保留用作将来用的区。

2.Redo Log Buffer Cache缓存对于数据块的所有修改。
主要用于恢复其中的每一项修改记录都被称为redo 条目。利用Redo条目的信息可以重做修改。

3. Shared Pool用于缓存最近被执行的SQL语句和最近被使用的数据定义。
它主要由两个内存结构构成:Library cache和Data dictionary cache
修改共享池的大小:ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;

Libray Cache缓存最近被执行的SQL和PL/SQL的相关信息。实现常用语句的共享,使用LRU算法进行管理,由以下两个结构构成:Shared SQL area、Shared PL/SQL area、Data Dictionary Cache、Data dictionary cache缓存最近被使用的数据库定义。它包括关于数据库文件、表、索引、列、用户、权限以及其它数据库对象的信息。在语法分析阶段,Server Process访问数据字典中的信息以解析对象名和对存取操作进行验证。数据字典信息缓存在内存中有助于缩短响应时间。

4.数据字典缓存(the data dictionary cache)
它包括的信息有:数据库文件,表,索引,列,用户,权限和其他数据对象,在解析间段,服务器进程查看数据字典来决定对象名称和有效的访问的信息,缓存数据字典信息来提高请求反应时间,大小是由共享池的大小来决定的。
分享到:
评论

相关推荐

    关于SGA设置的一点总结

    仅对服务器只存在OS + ORACLE 为例,如果存在其他应用请酌情考虑 写这个也是因为近来这种重复性的问题发生的太多所导致的

    oracle-sga结构

    oracle sga 结构的讲解,了解oracle的sga结构。

    SGA - ORACLE

    1. 本文系作者的学习总结总(参考文档来自ORACLE官方文档) 2. 介绍了ORACLE中SGA的基本概念与样关内存区的的分配基本原则

    Oracle SGA

    关于Oracle 中SGA的分配的方式,如何让oracle中的SGAt得到最有利的分配

    Oracle 9i 调整SGA性能

    调整SGA以及优化oracle数据库,提高数据库的性能。

    oracle改sga导致数据库启动异常处理办法

    有时改oracle的sga相关值后,重启oracle出现异常。 其实更改sga前掌握好先备份的原则,就能快速恢复

    linuxVM平台扩展SGA

    本资料描述的是如何在linuxVM平台下扩展SGA

    赛蓝SGA用户手册2.4.pdf

    赛蓝SGA用户手册2.4.pdf

    SGA_遗传算法_matlab

    资源名:SGA_遗传算法_matlab 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换。 适合人群:新手及有一定经验的开发人员

    oracle sga设置

    oracle sga常用设置,分析,查看等等.

    PGA,SGA与内存

    如何估算PGA,SGA的大小,配置数据库服务器的内存。

    塞蓝SGA管理手册

    塞蓝科技SGA网关云交付系统管理员手册2.6

    研究论文-改进的SGA端元选择的快速方法

    SGA算法因其自动性和高效性受到广泛欢迎,针对该算法包含大量的体积计算导致该算法的运算速度较慢的问题,采用在高维空间中构造超平面的方法,提出了一种SGA的改进方法.该改进算法把复杂的体积比较转化成简单的点到...

    WINDOWS平台上扩展SGA

    现在机器的内存越来越大,可是oracle有些版本在windows平台下限制了sga的最大值,希望此资料能帮到大家!

    ORACLE修改SGA后无法启动的临时解决方法

    ORACLE修改SGA后无法启动的临时解决方法.比较实用的东西

    更改ORACLE SGA的详细步骤

    更改ORACLE SGA的详细步骤 如果修改后启动不了ORACLE,还原ORACLE初始设置的方法方法: 2、使用dos端登录oracle Sqlplus /nolog; Conn / as sysdba; 3、找 pfile,在 /.../admin/XXX(服务名)/pfile 下,init.ora....

    SGA3586.pdf文档

    低噪放SGA3586手册,应该很好用,不错的。

    Oracle_SGA

    有关Oracle的SGA基本组件与概述 如共享池的作用、使用方式等

    sga, 基于串图的重构汇编.zip

    sga, 基于串图的重构汇编 SGA --字符串图形汇编程序SGA是一种基于字符串图概念的新型基因组组装器。 SGA的主要目标是非常高效的内存,这是通过使用DNA序列读取的压缩表示来实现的。有关安装和使用指令,请参阅 src/...

    oracle11g修改SGA大小后报错的详细解决方案.docx

    由于oracle.exe占用内存过高,修改SGA的大小后导致监听服务不能启动,数据库不能连接等一系列问题和错误,希望此资源能够帮你解决问题,或者给你带来帮助!

Global site tag (gtag.js) - Google Analytics