ITPub博客

首页 > 数据库 > Oracle > 9 Oracle体系结构概述

9 Oracle体系结构概述

原创 Oracle 作者:wulicheng 时间:2013-06-25 23:00:51 0 删除 编辑

Oracle 实例 和 Oracle 数据库


Oracle 数据库软件

Oracle 数据库(Oracle 数据库文件)

$ORACLE_HOME

$ORACLE_BASE/oradata/prod

ctl文件、log文件、dbf文件...

ps:Oracle 数据库软件和Oracle 数据库文件可以分开存储,生产中一般是Oracle 软件存放在服务器本地硬盘,Oracle 数据库文件放在存储上

oracle 实例 instance

oracle 数据库 database

ipcs 查看共享内存分配

Oracle 内存结构

Oracle 数据库启动后,会在内存中划置一份空间,这份空间被Oralce 所独占、所独享、所使用

Oracle 共享内存--> 由所有服务器进程和后台进程共享

系统全局区 (SGA)

共享池

shared pool

流池

Streams pool

大型池

large pool

java 池

java pool

数据库

缓冲区高速缓存

buffer cache

重做日志缓冲区

redo log


ps:实际生产中,前台进程要远远大于后台进程。因为对Oracle 数据库的每一个连接,都会产生一个前台进程

SGA 中,所有内存空间,对所有进程来说都是共享的。

每个进程还能独享一份自己的PGA

前台进程=服务器进程

程序全局区域(PGA)

专用于每一个服务器进程或后台进程。每一个进程使用一个PGA

web应用服务器启动之后会建立一堆到Oracle服务器的连接(主动发起对Oracle 数据库实例的N个连接,连接数在weblogic上可以设置)

---> 连接池(数量可以设置) ---> Oracle 服务器(对Weblogic的每一个连接 都会建立相应的进程)

web服务器启动100连接 --> Oracle 服务器

--> Oracle 会针对这100个连接 启动100个前台进程

--> Oracle 会针对这100个连接 启动100个服务器进程

模拟Weblogic 对Oracle 建立连接

[oracle@oracle ~]$ sqlplus / as sysdba

服务器会启动一个进程(前台进程、服务器进程)

oracle 5650 5649 0 11:51 ? 00:00:00 oracleprod (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

再模拟一个连接,Oracle 会再增加一个进程(前台进程、服务器进程)

[oracle@oracle ~]$ sqlplus / as sysdba

oracle 5717 5716 0 11:52 ? 00:00:00 oracleprod (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

###########

[root@oracle ~]# ps -ef | grep ora

root 3878 3847 0 21:32 ? 00:00:00 hald-addon-storage: polling /dev/hdc

avahi 4156 1 0 21:32 ? 00:00:00 avahi-daemon: running [oracle.local]

root 4338 4282 0 21:38 pts/0 00:00:00 su - oracle

oracle 4339 4338 0 21:38 pts/0 00:00:00 -bash

oracle 4369 4339 0 21:38 pts/0 00:00:00 rlwrap sqlplus / as sysdba

oracle 4370 4369 0 21:38 pts/2 00:00:00 sqlplus as sysdba

oracle 4449 1 0 21:38 ? 00:00:00 ora_pmon_prod

oracle 4453 1 0 21:38 ? 00:00:00 ora_vktm_prod

oracle 4457 1 0 21:38 ? 00:00:00 ora_gen0_prod

oracle 4459 1 0 21:38 ? 00:00:00 ora_diag_prod

oracle 4461 1 0 21:38 ? 00:00:00 ora_dbrm_prod

oracle 4463 1 0 21:38 ? 00:00:00 ora_psp0_prod

oracle 4465 1 0 21:38 ? 00:00:00 ora_dia0_prod

oracle 4467 1 1 21:38 ? 00:00:01 ora_mman_prod

oracle 4469 1 0 21:38 ? 00:00:00 ora_dbw0_prod

oracle 4471 1 0 21:38 ? 00:00:00 ora_lgwr_prod

oracle 4473 1 0 21:38 ? 00:00:00 ora_ckpt_prod

oracle 4475 1 0 21:38 ? 00:00:00 ora_smon_prod

oracle 4477 1 0 21:38 ? 00:00:00 ora_reco_prod

oracle 4479 1 0 21:38 ? 00:00:00 ora_mmon_prod

oracle 4481 1 0 21:38 ? 00:00:00 ora_mmnl_prod

oracle 4483 1 0 21:38 ? 00:00:00 ora_d000_prod

oracle 4485 1 0 21:38 ? 00:00:00 ora_s000_prod

oracle 4580 4370 0 21:39 ? 00:00:00 oracleprod (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

oracle 4582 1 0 21:39 ? 00:00:00 ora_p000_prod

oracle 4584 1 0 21:39 ? 00:00:00 ora_p001_prod

oracle 4586 1 0 21:39 ? 00:00:00 ora_qmnc_prod

oracle 4602 1 0 21:39 ? 00:00:00 ora_cjq0_prod

oracle 4604 1 0 21:39 ? 00:00:00 ora_q000_prod

oracle 4606 1 0 21:39 ? 00:00:00 ora_q001_prod

root 4651 4623 0 21:40 pts/3 00:00:00 su - oracle

oracle 4652 4651 0 21:40 pts/3 00:00:00 -bash

oracle 4680 4652 0 21:40 pts/3 00:00:00 rlwrap sqlplus / as sysdba

oracle 4681 4680 0 21:40 pts/4 00:00:00 sqlplus as sysdba

oracle 4682 4681 0 21:40 ? 00:00:00 oracleprod (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

root 4684 4310 0 21:40 pts/1 00:00:00 grep ora

PS:一个连接 对应一个前台进程=服务器进程

用户 (查询) --> Weblogic(生成sql语句)-->通过连接池中的某条链接(传输)-->Oracle 接收

用户 (接收查询结果)<-- Weblogic(生成页面)<--通过连接池中的某条链接(传输)<--Oracle 处理


SGA中主要讨论:共享池 shared pool、数据库缓冲区高速缓存buffer cache、重做日志缓冲区redo log buffer

五大进程:

系统监视器

SMON

进程监视器

PMON

数据库写进程

DBWn

日志写进程

LGWR

检查点

CKPT

归档进程(ARCn)

PS:实例=SGA(六大内存块)+进程(五大后台进程)

Oracle --> 六大内存块、五大进程、三大文件

数据库缓冲区高速缓存

三类文件

控制文件--> 1、存放整个数据库的物理结构信息(有多少个数据库文件,分别在哪个位置,有多少个redo.log文件,分别在哪个位置)

2、记录着数据库当前运行的一些状态信息(哪个数据库文件在线正常,哪些离线不正常,Oracle 当前使用众多重做日志文件中的哪一个)

数据文件--> 存放Oracle 实实在在的数据,例如Oracle 数据的表信息

重装日志文件-->记录对Oracle 所做的所有修改,全部会以日志的方式记录在日志文件中(记录着 数据文件中,每一个数据块的所有的变化过程)

##

三大池的作用

Oralce 数据接收到的是SQL语句,对SQL 语句处理、执行,获取数据然后返回给用户

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29000429/viewspace-1060626/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-06-25

  • 博文量
    11
  • 访问量
    43319