1、Oracle体系结构由Oracle存储结构、Oracle进程结构和Oracle内存结构组成
2、数据库服务器包含数据库和数据库实例。数据库实例是用于和操作系统联系的标识,数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等)。在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个Oracle数据库实例来访问和控制磁盘中的数据文件。
3、Oracle实例由内存结构和一些后台进程结构组成。
4、用户进程连接到数据库实例后即在服务器上创建了一个服务器进程,一个服务器进程服务于一个用户进程。
5、每个数据库都必须由一个或者多个表空间组成,每个表空间只属于一个数据库。一个表空间可以包含一个或者多个段,每个段只属于一个表空间。段由不同的区组成,每个区只属于一个段,而区由数据块组成,数据块是Oracle逻辑存储中最小的逻辑存储单位。
6、Oracle中的段可以分成4种类型:数据段、索引段、回滚段、临时段。数据段用来存储表中的数据,每个表都有一个对应的回滚段,其名称和数据表的名字相同。索引段用来存储表上最佳查询的所有索引数据。回滚段用来存储用户数据修改前的位置值,回退段与事务是一对多的关系,一个事务只能使用一个回退段,而一个回退段可存放一个或多个事务的回退数据。临时段由存储表排序操作期间简历的临时表的数据。视图不属于段,因为视图是数据库不同表的查询结果集,并没有存储数据。
7、数据块是Oracle逻辑存储中最小的逻辑存储单位,一个数据块由块头和存储区组成,对应一个或多个物理块,大小由参数DB_BLOCK_SIZE决定;数据区是Oracle存储部分的最小单位,是由连续的数据块结合而成的。
8、表空间是数据库的最大逻辑划分区域,一个表空间由一个或者多个数据文件组成,一个数据文件只属于一个表空间,表空间的大小是所对应的数据文件大小的总和。
9、物理结构包含三种数据文件:控制文件、数据文件和日志文件。后缀名.ctl代表控制文件,.dbf代表数据文件,.log代表日志文件。数据库的初始化参数文件init.ora.xxxxxx中,记录了控制文件对应的位置信息。
10、日志文件主要包括重做日志文件和归档日志文件。警告日志文件需要定期清理。
11、归档日志模式分为归档模式(ARCHIVELOG)和非归档模式(NOARCHIVELOG)。从v$database视图中可以查询数据库的归档模式。
SELECT DBID,NAME,LOG_MODE FROM B$DATABASE ;
12、共享池包括库高速缓冲区和字典高速缓冲区。因系统内存资源有限,且操作系统也需消耗一定的内存空间,所以共享池并不是越大越好。
13、后台进程
PMON:进程监控、SMON:系统监控、RECO:恢复进程 DBWN:数据库写进程、CKPT:检查点、LGWR:日志写入进程
其中RECO不是必须启动的,其余5个则必须启动。
14、Oracle常用数据字典
dba_tablespaces:关于表空间的信息
dba_ts_quotas:所有用户表空间限额
dba_tables:数据库中所有数据表的描述
v$database:描述关于数据库的相关信息
v$datafile:数据库使用的数据文件信息
v$log:从控制文件中提取有关重做日志组的信息
v$logfile:有关实例重置日志组文件名及其位置的信息
15、sqlplus命令 col name format a30
查询结果中该列显示长度最大为30
16、Oracle体系结构图
Oracle内存结构图
Oracle执行sql查询语句的步骤