Oracle原理:11g的体系结构

oracle11g之Oracle体系结构(理论基础知识)                                                            第二章 oracle的体系结构 一.oracle体系结构概述1.实例和数据库组成完整的Oracle数据库系统数据库:一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等)实例:一组oracle后台进程/线程以及在服务器分配的共享内存区二者的关系:1)数据库可以由... 阅读详情

目录

1.11g的物理结构和逻辑结构

2.全局系统区SGA和程序全局区PGA

3. 9i中的自动PGA管理

4. 10g中的自动SGA管理和MMAN进程和MMON进程

5. 11g中的AMM配置和MMAN进程

6.11g默认表空间的结构和特点


1.11g的物理结构和逻辑结构

  1.1  Oracle服务器由Oracle数据库和Oracle实例组成。Oracle数据库里的是看得见的,这些数据存放在数据文件里,也就是存放在内存中,是具有物理概念的。而Oracle实例指的是内存结构和后台进程的集合。相当于C++把数据封装起来的类一样,是具有逻辑概念的。内存结构包含全局系统区SGA和程序全局区PGA,后台进程包括PMON,SMON、CKPT、LGWR、ARC等.

实例启动时,先分配好内存再启动后台进程。

主要物理文件包括3类:数据文件,日志文件,控制文件。 非主要物理文件包括:参数文件、密码文件,告警和跟踪文件、归档日志文件、备份文件。丢失主要物理文件,数据库无法运行。控制文件是记录数据库物理结构的二进制文件。日志文件记录了对数据库的所有修改信息,用于数据恢复。select * from v$datafile  可以开数据文件信息,v$controlfile控制文件信息,v$logfile日志文件信息。在SQL_PLUS窗口输入 show parameter spfile ;查看参数文件信息。$ORACLE_HOME/database/PWD%ORACLE_SID%.ora为密码文件 

show param dump_dest来查询告警跟踪文件;show parameter log_archive_format查询归档日志文件

1.2 逻辑结构是看不见的。为便于管理,Oracle在逻辑层面上划分,一个数据库由多个表空间组成;一个表空间由多个段组成;一个段由多个区组成,一个区由多个数据块组成。数据块是存储、读写数据的最小单位。

表空间由一个或多个数据文件.dbf 组成。一个数据文件只能属于一个表空间。v$tablespace,v$datafile联合查询可以查看表空间信息。 如果段存放的是数据信息就叫数据段,如果这个段存放回滚信息就叫回滚段,类似的还有索引段,临时段。段扩展会再分配一个区,一个区只能存储于一个数据文件中;数据块默认是8k(8192)字节,db_block_size,show param db_block_size 尽管只需要几个字节的数据,也会把整个数据块数据都取下来。

2.全局系统区SGA和程序全局区PGA

2.1SGA:

  一般情况下,SGA使用Oracle整个内存的80%,而PGA使用Oracle内存的20%。Oracle实例启动时分配SGA,服务器进程(Server Process)启动时分配PGA.。数据库信息存储于SGA,由多个数据库进程共享。

SGA内存又包含了6个部分:共享池,数据缓冲区、日志缓冲区、Large池、stream流池、JAVA池。

共享池是SQL、PL/SQL程序进行语法分析、编译、执行的内存区域。共享池由库缓存和数据字典缓存组成,它的内存大小直接影响了数据库的性能。编译后的语句就会放进共享池中,之后如果重复执行的SQL,就会先查共享池里是否有已经好的语句。如果有 则直接执行,可以省去了编译的步骤。相当于JAVA里面的 .class文件。也就是说只要执行的SQL语句发生了更新,更新的部分要重新编译一遍。

数据缓冲区:所有用户共享,用于存储从磁盘数据文件中读入的数据。因为 用户直接从硬盘存取频繁地IO会导致速度会非常慢,所以,Oracle设立了一块内存,名为数据缓冲区。先把IO的数据存入数据缓冲区中,然后用户在从这块内存中读取数据。用户每次需要读入写入数据时,会从这块内存中查找,有则直接取出,没有则让数据缓冲区载入硬盘数据,再从中读取。读写内存要比读写磁盘的速度快得多。写入硬盘也是一样的:先从硬盘数据读入数据缓冲区,用户更改数据缓冲区,数据缓冲区再写入硬盘。数据缓冲区能加快提取速度,数据缓冲区的大小直接影响了Oracle的读取数据的速度。

日志缓冲区:读写入在线日志文件时,会把信息写入日志缓冲区中,数据缓冲区的原理类似。由于日志不是执行SQL的必要条件,所以日志缓冲区对Oracle性能影响较小。

Large池:为了进行大的后台进程操作而分配的内存空间,如备份恢复、大型IO操作、并行查询等

Stream池: 为Stream应用而分配的内存空间

JAVA池:为JAVA应用而分配的内存空间

 

2:.2  PGA

PGA包含了单个服务器进程所需的数据和控制信息。排序的数据也在PGA中存放。

 实例进程包含了3中类型:用户进程、服务器进程、后台进程。

用户进程位于客户端,在用户运行一个应用程序时准备向数据库服务器发送交互请求时创建。PGA是在用户进程连接到数据库并创建一个会话时自动分配的。有几个用户连接数据库,就有多少个服务器进程在服务器上创建,每个用户对应了自己的用户进程,用户进程和服务器进程一 一对应。服务器进程所占用的空间位于PGA,PGA资源各不共享。

专有连接:9i和9i以后用的是专有连接。每个用户对应了自己的用户进程,用户进程和服务器进程一 一对应。对专有连接来说,用户在启动了一个应用程序与服务器交互,就是在客户端上创建了一个用户进程,与oracle服务器端成功连接后,会在服务器端生成一个服务器进程,该服务器进程作为用户进程的代理进程,代替客户端执行各种命令并把结果返回给客户端。用户进程一旦终止,服务器进程也立刻中止。

共享连接:8i和8i以前用的是共享连接。一个用户可以对应多个服务器进程。一个服务器进程可以对应多个用户进程。

 

2.3 后台进程:

会话指的是用户与Oracle服务器的单个连接。会话信息可以: select * from v$session where username='[用户名]'; 来查看

Oracle实例启动时,会创建一系列后台进程,必须创建的后台进程被称为必备进程,4个,PMON,SMON,DBWn。CKPT。

PMON进程监控进程:用来清理出现的故障进程,施放所有的当前挂起的锁定,施放故障进程所使用的资源。比如用户进程中断,就其对应的服务器进程就会发生故障,这个服务器进程的清理就由PMON来做。

SMON系统监控进程:在实例失败,重新打开数据库时自动恢复实例。整理数据文件的自由空间,将相邻区域结合起来,施放不再使用的临时段。 9i之前是手动管理自由空间,9i和9i之后是自动管理。实例失败指的是程序中断(程序返回值不为0),比如服务器关机。重启启动服务器时,实例的恢复就有SMON完成。

DBWn数据写入进程:管理数据缓存区的进程。把最近使用过的数据保留在内存,将修改后的缓冲数据写入数据文件中就是DBWn在做。比如,用户发送update命令,会把对应的数据从硬盘移入数据缓冲区中,改完数据后再写入数据文件中。

LGWR日志写入进程:和DBWn原理类似,只不过是管理日志缓冲区的进程。将缓冲数据写入日志文件,系统一般有多个日志文件,该进程通常以循环的方式将日志写入日志文件。

CKPT检查点进程。CheckPoint,为了在实例崩溃后尽快恢复实例所设定的进程,CheckPoint分为完全检查点和增量检查点。完全检查点只有下面两种情况下被触发:,一个是用户发出 alter system checkpoint ,第二个是除了shutdowon abort以外的方式关闭数据库。增量检查点只有下面两种情况下被触发:每个3秒触发一次,在线日志切换时触发。

ARCn进程:当数据库日志状态为ArchiveLog模式时,ARCn会在LogSwitch时自动把Redo Log File 复制到指定目录下。即归档日志文件。用来把在线日志文件 归档成 归档日志文件。

MMAN进程:10g出现,用于自动SGA管理,11g中的MMAN用于自动内存管理。

MMON进程:10g出现,用于自动统计信息收集。

查询进程信息示例如 :select * from v$process where program like '%DBW%'

 

3. 9i中的自动PGA管理

自动PGA管理的前提是设置初始化参数workarea_size_policy为AUTO。在专有连接下,数据库管理员根据数据库的负载情况,估计所有的Session大概是需要消耗的PGA的总大小,然后把该值设置成初始化参数pga_aggregare_target.。Oracle就会自动调整每个session的PGA的大小。每个用户的PGA大小都是一样的,操控的是PGA上的服务器进程的大小。

在一般情况下服务器进程所需要的资源大小是不断变化的,有些服务器进程需要的资源小,有些服务器进程需要的资源大。我们很难进行手动的管理,9i以后,可以自动PGA管理来完成。

 

4. 10g中的自动SGA管理和MMAN进程和MMON进程

   ASMM自动SGA管理(Automatic Share Memory Management),10g的时候出现,可以不用9i那样具体分配SGA中的每一个部分大小。初始化参数 statistics_level为TYPICAL或ALL时才可以启动ASMM, 用sga_target来定义了整个SGA的大小。因此10g以后有了新的后台进程MMAN来进行自动SGA管理。MMON进程,用于自动统计信息收集。

5. 11g中的AMM配置和MMAN进程

   11g出现了AMM(自动内存管理),需要初始化参数statistics_level为TYPICAL或ALL时才可以启动AMM。初始化参数Menory_target定义了整个内存大小(SGA和PGA的总大小),新的Memory_max_target来定义了整个内存大小可以达到的最大值。如果使用AMM自动内存管理,sga_target和pga_aggregate_target的值应该设置成0

查看修改这些参数:

打开SQL_PLUS命令窗口:查询参数命令  show param [参数名,自动模糊查询]

修改参数命令:alter system set [参数名全名] =[值];

修改成功后重启数据库后即可生效。

6.11g默认表空间的结构和特点

    11g的默认默认表空间包含了SYSTEM、SYSAUX、TEMP、UNDOtbs1、USERS、EXAMPLE。

SYSTEM 是系统表空间,存放系统的最基本信息; SYSAUX在10g中才引入,是SYSTEM的辅助表空间,用来减少SYSTEM的负荷所设立的。把一些其他表空间的一些组件放在了SYSAUX表空间里了,比如以前SYSTEM中的LogMiner、Logical Standby,DRSYS表空间里的Oracle Text 等;TEMP是临时表空间,当分配的空间无法完成排序时,就会在TEMP表空间用磁盘排序的方式(效率低)来排序;UNDO类型的表空间,保存用户DML(增删改)操作,修改前的数据;USERS 是系统默认的永久性表空间,创建表的时候,没有指定表空间时就会放入默认表空间USERS,当然数据库的默认表空间是可以被修改的;EXAMPLE是数据库测试用例所涉及的表所属表空间。

 

 

 

Oracle11g体系结构深入剖析和运维管理(一) 资源名称:Oracle 11g体系结构深入剖析和运维管理(一)资源目录:【】1_Oracle学习前奏【】2_Oracle软件安装准备工作【】3_Oracle软件安装和数据库的创建【】4_Oracle数据库及相关软件的启动和关闭【】5_计算机工作机制概述【】6_硬盘及swap工作机制【】7_计算机缓存技术工作机制【】8_ 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。 立即下载

相关推荐

别再傻傻分不清!用R语言5分钟搞定RR、AR、OR的计算与解读(附代码)

本文通过R语言实战演示,详细讲解了RR(相对风险)、AR(绝对风险)和OR(比值比)的计算方法与科学解读。提供完整的代码示例和可视化技巧,帮助医学研究者快速掌握这些核心流行病学指标的应用与常见陷阱规避。

weixin_42526015的博客 263

教为学:Oracle 11g OCP之路(五):体系结构概要

前言 这是非常纠结的一节,该简单还是该详细。 简单了等于啥也没说,详细了,实话就是很多地方,我也搞不懂。 说得简单就几个物理文件,几个内存块,几个进程干什么的。 说得难它涉及到整个Oracle的运行原理。 这里面难度的拿捏,我尽力而为,而且上一篇还有一部分没来得及说,主要昨天时间紧,以后有时间补上。 物理结构 内存我们是看不到的,物理结构肯定在硬盘上,我...

ailvjiu6879的博客 171

Python Opencv cv2提取图像中某种特定颜色区域(例如黑字白纸背景下的红色公章提取),并将纯色背景透明化

拜拜PHOTOSHOP- 领导突然让我帮他把公章从图片中抠出来,在确保了不是要做坏事的情况下,我打开了PHOTOSHOP,用魔棒工具一点一点抠,但由于魔棒工具的原理是对比临近区域像素差值,导致封闭字体中的区域无法剔除,而且一点一点抠非常麻烦,愤而PYTHON,使用CV2完美解决。 效果如下(马赛克是我添加的): 任务就是把蓝色的公章抠出来。 效果如上。 代码如下: import cv2 import numpy as np src = cv2.imread(r"imagepath")#这里填你的原图像路

qq_43670549的博客 1万+

三、oracle 体系结构

1、oracle内存由SGA+PGA所构成 2、oracle数据库体系结构数据库的体系结构是指数据库的组成、工作过程与原理,以及数据在数据库中的组织与管理机制。       oracle工作原理: 1)、在数据库服务器上启动Oracle实例;2)、应用程序在客户端的用户进程中运行,启用Oracle网络服务驱动器与服务器建立连接;3)、服务器运行Oracle网络服务驱动器,建立专用的服...

weixin_34153893的博客 286

《Halcon 100项目-9》Halcon彩色线序检查

Halcon彩色线序检查

doubleintfloat的博客 1042

在Redroid容器中构建Frida RPC服务:自动化生成淘宝X-Sign签名参数

本文详细介绍了在Redroid容器中构建Frida RPC服务,实现自动化生成淘宝X-Sign等签名参数的完整方案。通过逆向分析定位关键方法,定制Redroid系统使Frida-Server常驻运行,并编写Frida脚本将签名方法暴露为RPC接口,最终封装为可远程调用的微服务,解决了签名生成的可移植性与工程化难题。

ice55的博客 643

oracle 11g系列 体系结构

1.1. oracle体系结构 图中描述了oracle的结构,oracle结构是比较复杂的,oracle设计这么复杂的体系结构的原因在于:首先oracle是一个关系型数据库管理系统,主要就是为了实现数据存储和管理的,为了让数据库的速度变得更快,尽可能的让90%以上的工作都在内存完成。所以数据库中最稀缺的资源就是内存,其次是磁盘I/O,所以我们要做好内存和I/O的管...

weixin_33881041的博客 198

案例分析|一篇文章带你看懂养鸡场智慧管理系统

养鸡场智慧管理系统是为了满足现代化养鸡业对精细化管理的需求而设计的一款专业软件。随着科技的发展和农业产业的升级,传统的手工记录和管理方式已无法满足高效、准确和实时的数据跟踪需求。本软件旨在通过集成各种功能模块,帮助养鸡场主实现从鸡苗孵化、饲养管理、饲料控制到销售结算等全链条的智能化操作。该系统的核心目标是提升养鸡场的运营效率和盈利能力,通过自动化数据处理,减少人工误差,节省时间和精力。例如,孵化报表和记录模块可以帮助管理者实时监控孵化过程,及时调整策略;

muyu2980的专栏 930

Oracle 11g 新特性:Oracle11g 后台进程概述

一。Oracle11g 后台进程与10gR2的比较     我们知道,oracle数据库的后台进程一般以ora_开头来命名,下面就来看一下在Oracle11g中的后台进程都有哪些,以单节点的Oracle实例 为例: [root@ractest ~]# ps -ef|grep ora_ |sort +7 root     11768  5567  0 05:30 pts/4    00

cyxlxp8411的专栏 2256

MinerU在线API异步调用代码开发示例

本文展示了如何使用Python异步编程调用MinerU在线API进行文件批量上传。代码示例包含三个主要功能:1) 通过API密钥获取文件上传URL;2) 使用信号量控制并发上传多个文件;3) 获取提取结果。实现采用httpx异步客户端和asyncio库,支持文件存在性检查、错误处理和日志记录。示例中演示了如何上传PDF文件到MinerU平台,并提供了获取批量处理结果的接口。该代码可作为异步调用MinerU API的参考实现。

拥抱具身智能,昇腾Ascend C 349

21、空间数据处理中的克里金方法及应用

本文介绍了空间数据处理中的克里金方法,特别是带外部漂移的克里金法(KED)及其在遥感数据融合和支持变化问题中的应用。讨论了克里金方法的基本原理、优缺点以及在不同空间分辨率遥感图像融合中的具体操作流程。同时,还涉及了地统计数据融合和支持变化问题的解决方案,包括块克里金法、面到点克里金法和多边形克里金法等。

gold的博客 86

《Oracle Database编程指南》附录:11g 数据库体系结构图

oracle 11g 数据库体系结构图 图片.png 图片.png

西安极客联盟 136

华为OD机考双机位C卷:精准核酸检测 (C/C++/Py/Java/Js/Go)

华为OD机试双机位C卷 精准核酸检测,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解。华为OD机试 - 精准核酸检测。

qq_45776114的博客 1726

oracle11g体系结构图

一张很好,很清晰的oracle11g体系结构图。 ...

192

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Oracle 11g体系结构图

Oracle 11g体系结构图,挺好的,共享出来,共同提高! ora_arch_11g.zip ...

cuiyanmin1936的博客 293

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Oracle Database 9i/10g/11g编程艺术:深入数据库体系结构:第2版

中国互动网china-pub新品: Oracle Database 9i/10g/11g编程艺术:深入数据库体系结构:第2版 久负盛名的Oracle经典世界顶级专家Thomas Kyte力作Ask Tom!解决你所有的Oracle疑难杂症 基本信息 原书名: Expert Oracle Database Architecture: Oracle Database Progra...

yangzhiyong77 237

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

oracle的体系结构

11g “g” :stands for Grid Oracle 8i 9i (internet) – Oracle 10g 11g (grid) – Oracle 12c 13c 18c (cloud);

zlw1997的博客 420

oracle database 10g pl/sql程序设计,Oracle Database 11g PL SQL程序设计

第Ⅰ部分 PL/SQL基本原理第1章 Oracle PL/SQL概览1.1 历史和背景知识1.2 体系结构1.3 基本的块结构1.4 Oracle 10g的新功能1.4.1 内置包1.4.2 编译时警告1.4.3 条件编译1.4.4 NUMBER数据类型行为1.4.5 优化的PL/SQL编译器1.4.6 正则表达式1.4.7 引号的选择性1.4.8 集合运算符1.4.9 堆栈跟踪错误第Ⅰ部分 P...

weixin_39628070的博客 131

Oracle

http://www.cnblogs.com/damonlan/category/394305.html 跟我一起学Oracle 11g http://www.bitscn.com/pdb/oracle/200803/130256.html Oracle体系结构:内存结构和进程结构-体系架构 http://www.eygle.com/archives/2012/12/oracle_ar...

lan_13217的专栏 117

OCP之路

周日,很冲动的去尚观报名了OCP。 虽然自己好久没做ORACLE dba的工作了.做项目都快两年了,但是一点也不开心.没有当时解决技术问题的耐心和热情。 先说下尚观的老师,这次下午第一点的课。我一点半到,前面的没有听到.老师已经在讲ORACLE演进过程。 之后发现老师讲课没有逻辑,且目的性不是很强。 课件去找班主任,发现是个年轻的小姑娘,解决问题的能力等于0,最坑的是问班主任,我们下节

lucklover的专栏 646

【转载:Oracle基础知识】Oracle数据库体系结构

先来看张直观的图: oracle 11g体系结构图 理解Oracle体系结构要充分理解三个概念:数据库(database),数据库实例(instance),会话(session),一定不要把这三个概念弄混。 数据库的概念 (A)...

weixin_30455023的博客 87

数据库原理

数据库原理 第1章 数据库系统结构 第2章 查询优化原则 第3章 关系数据库规范化 第4章 Oracle 11g的体系结构 第5章 用户权限与安全 第6章 数据库的安全保护 第7章 Oracle模式对象的管理 第1章 数据库系统结构 从数据库管理系统的角度看,数据库系统通常采用三级模式结构,这是数据库系统内部的体系结构。 1. 数据库系统模式的概念 模式(Schema)是数据库中全体数据的逻辑...

zjltju1203的博客 2386

oracle OCP认证学习日志(1)

新年新气象,年后上班第一天,开始新的征程,为自己的DBA梦想而努力。写日志把自己的学习过程记录下来,也是对知识的一个提取概括,方便以后参考查阅。 第一章oracle database 11g体系结构概述 1.1 oracle产品系列 1.1.1 oracle服务器系列 服务器技术系列中三个主要的产品组合是数据库服务器、应用服务器和企业管理器。数据库服务器用于存储数据,应用服务器提供

pengpengfly_jhp的专栏 800

第一次听eygle的讲座(ACE CLUB)

昨天,去参加了恩墨学院举办的ACE CLUB,主讲人eygle、kamus,分享了两个实际案例,一个是eygle的SQLparseCursorPin,一个是kamus的DBUA的案例从9i升级到11g并引入SPA(S...

congchu6378的博客 123

ORACLE 11g 数据库体系结构图

ORACLE 11g 的数据库体系结构图,非常全面、系统、高屋建瓴的整体介绍了ORACLE 11g 的数据库体系结构。如果能全面了解、清晰梳理、深入掌握这些知识点,相信对你了解学习、深入研究ORACLE不无裨益。如果图片放大展示不够清晰,请参考我上传的PDF附件ORACLE_11g_ARCHITECTURE.pdf   ...

weixin_34088598的博客 218

oracle11g 体系结构详解

1、oracle内存由SGA+PGA所构成 2、oracle数据库体系结构数据库的体系结构是指数据库的组成、工作过程与原理,以及数据在数据库中的组织与管理机制。 oracle工作原理: 1)、在数据库服务器上启动Oracle实例;2)、应用程序在客户端的用户进程中运行,启用Oracle网络服务驱动器与服务器建立连接;3)、服务器运行Oracle网络服务驱动器,建立专用的服...

weixin_30386713的博客 253
上一篇: Oracle原理: 行级锁和表级锁
下一篇: Oracle 原理: 11g的启动和关闭
superSmart_Dong
博客等级 码龄10年 678粉丝 167原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值