Oracle体系结构详解
Oracle体系结构就是围绕这张图展开的,要想深入了解oracle,就必须把这张图搞明白。 一台服务器上同时可装多套版本的数据库软件,
Oracle体系结构就是围绕这张图展开的,要想深入了解oracle,就必须把这张图搞明白。
如图:
一、基本组成:
Oracle server:
一般情况下是一个instance和一个database组成
1个instance只能对应一个数据库。
特殊:
一台服务器上同时可装多套版本的数据库软件,每个数据库软件可建多个数据库,但是每个数据库只对应一个instance,也可以理解成每个数据库只有一个SID 。
利用DBCA建出的每个库都是相对独立的,在同一服务器上如果创建多库必须将环境变量的参数文件做区分,并且在对实例切换时需如下操作:
connect 用户名/密码@实例的服务名
Oracle Instance:
是由内存(SGA)和后台进程(backupground Process)组成
通过instance来访问database
一个实例只能打开一个数据库
Oracle database:
数据文件(Data files):
数据文件永远存储数据库的数据,包括数据字典、用户数据(表、索引、簇)、undo数据等
重做日志(Redo log):
“先记后写”
重做日志用于记录数据库的变化,当进行例程恢复或介质恢复时需要使用重做日志
执行DDL或DML操作时,事物变化会被写到重做日志缓冲区,而在特定的时刻LGWR会将重做日志缓冲区中的内容写入重做日志。
控制文件(Control file)
控制文件用于记录和维护数据库的物理结构,并且每个Oracle数据库至少要包含一个控制文件。
归档日志(Archive log):
是非活动(Inactive)重做日志的备份。
口令文件(Password file):
用于验证特权用户(具有SYSDBA、SYSOPER权限的特殊数据库用户)
参数文件(Parameter file):
用于定义启动实例所需要的初始化参数,包括文本参数文件(pfile)和服务器参数文件(spfile)
User and Server process :
在执行sql语句时产生的进程,每一个连接,oracle server创建一个session,产生一个server process,在client发起一个connection时就产生了一个user process。
体系结构可以分为,database结构和instance结构
如下结构:
,