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结构
如下结构:
,