您的位置:首页 > 健康 > 养生 > OCP-042之:Oracle结构体系

OCP-042之:Oracle结构体系

2024/12/23 12:32:26 来源:https://blog.csdn.net/wuxiaobing1234/article/details/139557348  浏览:    关键词:OCP-042之:Oracle结构体系

1. Oracle结构体系

1.1 概述

1.1.1 版本

版本后缀所代表的含义

i:代表基于Internet架构的数据库,如9i

g:代表基于grid(网格)的数据库,如11g

grid的目的:降低成本,提高服务质量,简化管理

  • Storage Grid:ASM(automatic storage management),继承了LVM技术,Oracle的动态存储空间管理技术,通过软件模拟raid的功能
  • Database Grid:RAC(real application clusters),Oracle的集群解决方案
  • Application Grid:Oracle Streams,流复制技术,用于远距离的容灾,支持同平台和垮平台
  • Grid Control:Enterprise Manager Grid Control,统一数据库管理工具,可以同时登陆多个数据库

c:代表基于cloud(云)架构的数据库,有租户,资源共享等云相关的概念。如12c

1.1.2 基本架构

在这里插入图片描述

安装在操作系统中的数据库分为三大部分:

  1. Instance:一个实例包含了内存和进程,实例的数量是由系统资源和操作系统决定的

SGA:内存结构,一个共享的内存区间,在所有的实例之间共享。数据库启动时操作系统分配给他的内存,操作数据时使用时需要将它从硬盘读取到内存中,提交时保存回硬盘中
后台进程:在操作系统中呈现出来的一系列进程,每一个进程代表一个服务

  1. Database:存储结构,存放在磁盘中的数据库文件。在非集群环境中,数据库和实例是一一对应的;但是在集群环境中,多个实例可以共享一个数据库

  2. User-Server Process:用户在登陆数据库时,服务器会针对用户产生相应的进程,PGA是数据针对这些进程分配的内存资源,PGA是私有的。服务器进程和实例的后台进程信息是存放在PGA中的

SGA+PGA就是数据库需要占用的内存空间

1.2 内存结构

在这里插入图片描述

1.2.2 SGA

SGA全称“System Global Area”,中文意思为“系统全局区”,是ORACLE为实例分配的一组共享缓冲存储区,主要用于存放数据库数据和控制信息,该信息为数据库进程所共享(PGA不能共享的),以实现对数据库数据的管理和操作。
它包含Oracle服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。
SGA是一组共享内存结构, 被所有的服务和后台进程所共享。当数据库实例启动时,系统全局区内存被自动分配。当数据库实例关闭时,SGA内存被回收。 SGA是占用内存最大的一个区域,同时也是影响数据库性能的重要因素。

Shared Pool

用来存储最近执行的SQL语句和最近使用的数据字典的数据。

ALTER SYSTEM SET SHARED_POOL_SIZE = 64M;

在这里插入图片描述

Library cache:库高速缓冲池,其中包括了共享的SQL区间,用于存放已经运行的SQL语句以及PLSQL代码,因为已运行的SQL语句是已经经过数据库编译,而且该语句的执行计划也已经存在于数据库中,因此再次运行的时候速度就会很快,再次运行该命令可以使其他的用户。该区间的代码替换采用LRU(List Recently Used)原则,热度分为冷区和热区,刚执行的语句会放在居中位置,后面根据使用频率来调整,使用频率高就会往热区放。新语句会替换掉最冷的一条语句。

Oracle在执行一条SQL语句时,首先要将语句进行编译,确定语法是正确的;然后要生成执行计划,因为Oracle需要知道该语句的执行步骤是什么,一条复杂的语句可能会有多种执行计划,Oracle需要选择最优的,执行计划的生成是非常耗时间的。

Data Dictionary Cache:被使用的数据库定义,即存放有关表、列和其它对象定义及权限。它包括关于数据库文件、表、索引、列、用户、权限以及其它数据库对象的信息。在语法分析阶段,Server Process访问数据字典中的信息以解析对象名和对存取操作进行验证。数据字典信息缓存在内存中有助于缩短响应时间。

Database Buffer Cache

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com