ORACLE体系结构包括:实例(Instance),数据库文件,用户进程(User process),服务器进程以及其他文件。

1.ORACLE实例(instance)

    1).要访问数据库必须先启动实例,实例启动时先分配内存区,然后再启动后台进程,后他进程执行数据库的输入,输出以及监控其他进程。

     在数据库启动的过程中 一下五个进程必须启动:

        1.SMON(系统监控进程)

2.PMON(进程监控)

3.DBWR(数据库写进程)

4.LGWR(日志写进程)

5.CKPT(检验点进程)

    2).Oracle数据库实例由内存区和后台进程组成

(1.)内存区:数据库高速缓存,重做日志缓存,共享池,流池以及其他可选内存区(如java池),这些池也称为数据库的内存结构

(2.)后台进程:系统监控进程(SMON),进程监控(PMON),数据库写进程(DBWR),日志写进程(LGWR),检验点进程(CKPT),其他进程等。

2.ORACLE服务器(Server)

    1).Oracle是服务器由数据库实例和数据库文件组组成,即常说的数据库管理系统。

2).数据库服务器除了维护实例和数据库文件以外,还在用户建立与数据库连接时启动服务器进程并分配PGA(程序全局区)

3.物理结构

    1).数据文件

2).控制文件

3).重做日志文件

4.Oracle数据库的链接与会话

    1).链接:链接是指客户端进程与数据库实例之间的物理线路------网络连接

    2).会话:指一个明确的数据库连接,即存在于实例中的逻辑实体

5.Oracle数据库的内存结构

    1).SGA(系统全局区):包含几个重要的内存区,数据库高速缓存,重做日志缓存,共享池,大池和java池。

       (1.)共享池(shared pool):共享SQL或PL/SQL代码

                共享池由库高速缓存数据字典高速缓存组成

库高速缓存(大小不可手动调节):存储了最近使用过的sql或pl/sql语句,库高速缓存容量有限,不能超过共享池的大小,Oracle采用LRU算法管理库高速缓存。

数据字典高速缓存:与数据字典有关的一段缓冲区,存储数据文件,表,索引,列,用户,权限信息和其他的一些数据库对象的定义。就是把相关的数据字典信息放入缓存以提高查询响应时间。

设置及查看共享池大小

  alter system set shared_pool_size=20M;

                show parameter shared_pool_size;

(2.)数据库高速缓存

                存储了最近从数据文件读入的数据块信息或用户更改后需要写回数据库的信息,此时这些更改后没有提交给数据库的信息称为脏数据。

                设置及查看库高速缓存的大小

      alter system set db_cache_size=200M;

                show parameter db_cache_size;(parameter:参数)

                show sga;//查询sga的分配情况

                缓冲区顾问参数(Buffer Cache Advisory Parameter):目的是让Oracle对于数据库缓冲区的内存分配提供一些建议,用于启动或关闭统计信息。

        (3.)重做日志缓存

                当用户执行了insert,update,delete,create,alter和drop操作时,数据发生了变化,这些发生率变化的数据在写入数据库高速缓存之前会先写入重做日志缓                               存区,同时变化之前的数据也放入重做日志高速缓存区,这样在数据恢复时,Oracle就知道哪些需要前滚,哪些需要后滚。

                重做日志缓存区参数(log_buffer)是静态参数,不能动态修改

                查看重做日志缓冲区的大小

                show parameter log_buffer;

        (4.)大池和java池

                大池(Large Pool)是SGA的一段可选内存区,只在共享服务器环境中配置大池,用户进程区UGA的大部分将在大池中分配,可以减轻共享池的负担。在大规模输,入输出及备份过程中也需                   要大池作为缓存空间。large_power_size设置大池的大小。

                show parameter large_power_szie;

                java池也是可选的一段内存区、但是安装了java语言或者使用java程序时必须设置java池,用于编译java语言编写的指令。java_pool_size设置java池的大小。

                show parameter java_pool_size;

    2).PGA(进程全局区):服务器进程专用的一块内存

Oracle数据库------体系结构的更多相关文章

  1. Oracle数据库体系结构、启动过程、关闭过程

    一.Oracle数据库体系结构体系结构由下面组件组成:1.Oracle服务器(Server):由数据库实例和数据库文件组成,另外在用户建立与服务器的连接时启动服务器进程并分配PGA(程序全局区) (1 ...

  2. Oracle学习笔记--第2章 oracle 数据库体系结构

    第2章 oracle 数据库体系结构 目录: ————————————— 2.1物理存储结构 2.1.1数据文件 2.2.2控制文件 2.1.3重做日志文件 2.1.4其他文件 2.2逻辑存储结构 2 ...

  3. Oracle数据库体系结构(2)数据库实例

    Oracle实例的概念: 实例(Instance):就是数据库管理系统,处于用户与物理数据库之间的一个中间层软件,由一系列内存结构和后台进程组成. 用户操作数据库的过程实质上与数据库实例建立连接,然后 ...

  4. oracle数据库体系结构

    一.oracle数据库体系结构 基本组成: Oracle server:一般情况下是一个instance和一个database组成 一般:1个instance只能对应一个数据库. 特殊:1个数据库可以 ...

  5. Oracle数据库基本操作(一) —— Oracle数据库体系结构介绍、DDL、DCL、DML

    一.Oracle数据库介绍 1.基本介绍 Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/ ...

  6. Oracle数据库体系结构-Shared Pool

    Oracle数据库简单介绍 对象关系型数据库 重点:一致性+性能 一致性优于性能 处理模型:C/S模型 Client:用户和用户进程             Server:服务器进程,实例,数据库本身 ...

  7. Oracle数据库体系结构及创建表结构

    Oracle服务器主要由实例.数据库.程序全局区和前台进程组成,其中实例就是用来提供管理数据库的功能:数据库由数据库文件组成,用来存储系统数据:实例可以进一步划分为系统全局区(SGA)和后台进程(PM ...

  8. Oracle数据库——体系结构

    一.涉及内容 1.了解数据库的物理存储结构和逻辑存储结构 二.具体操作 1.分别使用SQL 命令和OEM 图形化工具查看本地数据库的物理文件,并使用OEM 工具在现有的users 表空间中添加user ...

  9. Oracle 12c 读书笔记(二):Oracle数据库体系结构

    以11g来分析 数据库实例包括:SGA和一系列后台管理.监控简称 数据库包括三种文件:数据文件.控制文件.重做日志文件 数据库实例和数据库是Orale数据库体系的核心部分 Oracle服务器和实例 实 ...

随机推荐

  1. 转账示例(四):service层面实现(线程管理Connection,AOP思想,动态代理)(本例采用QueryRunner来执行sql语句,数据源为C3P0)

    用了AOP(面向切面编程),实现动态代理,service层面隐藏了开启事务.1.自行创建C3P0Uti,account数据库,导入Jar包 2.Dao层面 接口: package com.learni ...

  2. Java Script 字符串操作

    JS中常用几种字符串操作: big() small() bold() fontcolor() fontsize() italics() strike() link() charAt() charCod ...

  3. Eclipse默认编码设置

    eclipse 默认编码居然是GBK,js文件默认编码是ISO-....怎么可以这样呢?都修改成UTF8的方法:1.windows->Preferences...打开"首选项" ...

  4. php object 对象系统

    php object 对象系统 概述 本节内容仅谈论对象系统内容, 对于相关内容并不做更深一步的扩展, 相关扩展的内容会在后续补充 object 对象属于 zval 结构的一种形式 php 将所有执行 ...

  5. Android启动篇 — init原理(二)

    ========================================================          ================================== ...

  6. 统计学习方法:罗杰斯特回归及Tensorflow入门

    作者:桂. 时间:2017-04-21  21:11:23 链接:http://www.cnblogs.com/xingshansi/p/6743780.html 前言 看到最近大家都在用Tensor ...

  7. 捕获mssqlservice 修改表后的数据,统一存储到特定的表中,之后通过代码同步两个库的数据

    根据之前的一些想法,如果有A,B 两个数据库, 如果把A 用户通过界面产生的更新或者插入修改,操作的数据同步更新到B 库中,如果允许延时2分钟以内 想法一: 通过创建触发器 把变更的数据和对应的表名称 ...

  8. .net 做工作流时,生成项目后工具箱里有关工作流的东西不显示解决方法

    在做工作流模块时,遇到一个比较棘手的问题,那就是生成项目后工具箱里有关工作流的东西不显示,这个问题令人百思不得其解,经过查阅英文网站,终于找到解决方法: 把项目中的建模项目移除掉,再重新生成,奇迹出现 ...

  9. [ext4] 磁盘布局 - extent tree

    传统的类Unix文件系统,比如Ext3,都是使用一个间接数据块映射表来记录每一个数据块的分配情况的.但是这种机制对于超大文件的存储是有缺陷的,特别是当对超大文件进行删除和截断操作时.映射表会对每一个数 ...

  10. hadoop+hive+spark搭建(三)

    一.spark安装   因为之前安装过hadoop,所以,在“Choose a package type”后面需要选择“Pre-build with user-provided Hadoop [can ...