Oracle体系结构

发布 2021-05-02 13:37:28 阅读 6321

它是一个管理系统,包含oracle instance和 database

它是访问oracle database一种手段。

一个instance只能对应一个database,一个database可以由多个instance访问。

它由两部分组成,内存块(memory structure)和后台进程(background process).

oracle客户端与后台服务器建立的tcp/ip连接。

连接建立起来以后就开始一个会话,断开以后就消失。

就是一堆文件构成一个整体。

主要3种文件data files(数据文件) control files(控制文件) redo log files(重做日志文件).

还有些其他的文件parameter file(参数文件) archived log files(归档文件) password file

一个sga在instance启动的时候分配,而且是一个instance的基本组成部分。

一个instance一个sga

sga包含。

1,shared pool(共享池)

1)library cache

存储的经过编译解析后的sql和pl/sql语句。

2)data dictionary cache

数据字典,存储数据库控制信息,使用频繁,记录了各种信息。

2,database buffer cache

包含来自于数据文件的数据以及即将要写到数据文件的数据。

存储的是数据块。

3,redo log buffer

记录数据库的改变信息,主要用于恢复,每对数据做一次改变都会有记录在里面。

4,large pool (可选)

处理额外的工作,例如用到rman,io操作等。

5,j**a pool(可选)

与j**a打交道。

一个server process启动的时候就分配一个pga.一个后台进程一个pga

是服务器后台进程所需的数据与控制信息的内存缓冲区(不是共享区域)

tcp & ipc

user process (oracle客户端进程)

server process(oracle后台进程的一类)

前面有一个user process 后台就有一个server process与之对应。

background processes(oracle后台进程***

分两种。1:必须的。

dbwr: 它的工作是把database buffer cache里面的内容写到data files里面。

lgwr: 它的工作是把redo log buffer里面的东西写到redo log files里面。

smon: 主要用于清理资源。

pmon: 进程监控,监控各个后台进程。

ckpt: 主要用于后面管理数据工作加大,lgwr做不过来由ckpt做。

2:可选的。

archiver(arcn) 归档进程。

一个oracle server上只有一个database 一个database可以由多个tablespace(表空间)组成,一个tablespace由多个sagment (段)组成,一个sagment由多个extent (区)组成,一个extent是一组连续的blocks(块,一个块是操作系统的文件系统的整数倍)

首先建立连接,会话,发出sql语句到后台,做安全检查,解析sql,绑顶变量,执行,返回。

oracle universal installer(oui)

安装,升级,删除oracle软件。

可以把配置信息写到response file里面执行非交互试安装。

oracle database configuration assistant(dbca)

一个图形界面程序,用来创建,管理删除数据库。

注:自动创建的用户。

sys:数据字典的所有者,权限最大者。

system:权限竟次于sys

sql*plus

可以和数据库交互,可以去启动数据库和关闭数据库。

几乎可以做任何事情。

oracle enterprise manager(oem)

一体化管理工具,集中试的管理,管理企业级数据库。

oracle net manager(onm)

两种类型的参数 ,形式就是参数名字=参数的植。

一种是显示的参数(自己定义的值),另外一种是隐示的参数(却省的)

可以有多个参数文件,启动的时候可以指定参数文件。

可以去改它们的值,可以在oracle instance运行起来对它的参数进行修改。

两种生效方式,有的只是该内存的参数,有的把参数文件里面的参数一起改掉。

与此对应有两种不同类型的参数文件。

静态参数文件(static parameter file,pfile)

它是一个文本文件,可以用操作系统带的文本编辑器进行编辑。

可以手工的去修改它。

手工修改以后,不能立即生效,必须要从新启动一次instance

这个参数文件的命名管理:init+sid名字。

动态参数文件(persistent server parameter file,spfile)

它是一个二进制文件,不能手工维护,只能由oracle server维护,命令方式。

这个文件一直存在服务器端。

instance关闭或则启动的时候都可以修改。

rman备份只能备份spfile

创建一个spfile

create spfile from pfile;(自动创建,根据确省的pfile创建)

create spfile=’’from pfile=’’指定名字与pfile创建)

修改spfile内容。

alter system set parameter=value

如果不加参数修改的话就直接修改文件上的。

例如alter system set parameter=value;

如果加上scope可以确定范围,修改内存还是文件,还是同时修改。

例如alter system set parameter=value scope=memory;(只修改内存)

其他参数comment 指定注释, sid指定sid ,deferred指定延迟修改。

变回却省值 alter system reset parameter scope=spfile sid=’’

根据spfile创建pfile(把上面的创建语句倒过来)

create pfile from spfile

desc v$parameter 参数表(所有参数都放在v$parameter这个视图里面)

show parameter …查看什么参数。

它是一个site(站点,就是服务器oracle_sid)和oracle_home这两个环境变量进行hash出来的unique key.

当用startup启动的时候,会默认的按照一定的顺序去找参数文件。

先找如果找不到就找default spfile(如果找不到就找。

(如果找不到就找default pfile(手动指定)

当手动指定的时候可以startup pfile = 注:starup后面指定只能直定pfile,如果想要启动spfile可以在pfile文件里面加上spfile=路径)

谁能启动和关闭数据库?

以administrator的权限登陆,根据操作系统的不同。

1,操作系统管理权的权限。

2,拥有sysdba or sysoper权限。

数据库启动的几个状态。

1,shutdown(关闭状态)

Oracle体系结构

课后测试。单选题。1.哪个不是数据库的物理组件 a表空间 b物理文件 c控制文件 d日志文件 正确答案 a 2.最小的数据库逻辑结构是什么?a操作系统块 b数据库块 c表空间 d表 e区 正确答案 b 3.在数据库启动的mount阶段,可以进行什么操作 a查询用户scott下的表 b建立表空间 c创...

Oracle体系结构

簇 cluster 经常被频繁引用的表可以在物理位置上被存储在一起,簇就是用来管理这种集中存储的。集中存储可以减少i o次数,以达到性能的改善和提高。散列簇 hash cluster 簇的另一种形式,这种簇中的数据要通过散列函数计算得出物理位置,它可以极大程度的提高等值查询的效率。视图 view 可...

oracle体系结构

meta data 描述 说明 数据的数据。ctl 文件描述了 记录了 dbf 文件和log文件的位置,大小,一致性,checkpoint等信息。参数文件 oracle instance启动时,实例的参数由参数文件决定。d oracle product 10.2.0 db 1 dbs 密码文件 d ...