--------------------------------------------------------------------------------
第一章 安装及体系结构概述
1、安装简介 | 2、实例和数据库 什么是实例 什么是数据库数据库系统结构两者的关系 |
3、内存结构 SGA区域各个缓存区介绍 ORACLE相关进程 |
4、逻辑结构 表空间段盘区数据块 |
什么是实例
什么是数据库数据库系统结构两者的关系3、内存结构
SGA区域各个缓存区介绍
ORACLE相关进程4、逻辑结构
表空间段盘区数据块
一、安装
1、在安装过程中,需要将几个涉及的关键数据库进行修改密码。
保证安全性。其他账号会先锁定。
2、数据库信息:全局数据库名,系统标志符SID,服务器参数文件名
二、实例和数据库
1、什么是实例?
答:指数据库相关的进程,在调用过程中,调入内存当中,进行协调管理。
2、什么是数据库?
在创建过程中,SID为test。打开的文档如下: (1)其中,.CTL为控制文件,.DBF为数据文件,.LOG为日志文件。
(2)联机日志文件(RED001.LOG,RED002.LOG,RED003.LOG),又称重复日志文件。按顺序从1到3写,依次写满后,重新写到1。默认情形下,是不将1做备份,直接覆盖掉。
ORACLE日志文件:1、联机日志文件(redo log);2、归档日志文件(archive log)(进行备份(尤其热备份)时,必须归档的一种文件),归档日志不会自动删除。如果开启归档模式,则redo log写完后,会自动复制到一个archive log文件,然后,redo log继续重复使用。
(3)在数据库使用中,由控制文件(.CTL)管理和控制,数据文件(.DBF)和日志文件(.LOG)。
在启动过程中,启动对应实例(test)先打开控制文件(.CTL),再有控制文件打开数据文件(.DBF).
(4)登录,查看数据的语句:
a、查看.CTL文件——控制文件 b、查看数据文件 C、查看日志文件 (5)数据库还有一类文件参数文件
a、参数文件不是数据库的有效组成部分。他记录了数据库的配置信息。在启动数据库时,不直接参与。而控制文件是根据参数文件来进行寻找的。
b、文件结尾为.ORA c、oracle的文件系统:控制文件用来控制数据文件和日志文件。参数文件用来寻找控制文件。 三、内存结构 当ORACLE时候开始运行的时候,会分配一个大的内存内存块——系统全局区(SGA).
实例的SGA被该实例的所以后台进程所共享。
SGA包括的部分:DB buffer(数据库高速缓存区)、大共享区、共享池、redo buffer(日志缓存区)、固定SGA。
重点——DB buffer,内存中用来频繁访问的区域。也是SGA中最大的部分。
1、DB高速缓存池 DB高速缓存池包括:保持缓存池(长期保存,频繁访问,比如用来存储代码表。在数据库关闭前,会一直保留)、再生缓存池(想尽快从内存中删除的对象,如频繁访问的大表)、默认缓冲池。
2、共享池 共享池:字典缓存区、库缓存区(共享SQL区、PL\SQL区)
共享池用来缓存PL\SQL的程序单元、sql的版本、相关的执行计划
(1)库缓存
共享SQL区:1、保留了SQL语句的解释版本,在下次执行中,不用再次解释。保留了数据库的用户的语句的解析版本。提高进程速度。2、当程序执行一个单元的时候,当有2个和2个以上用户执行相同的过程、相同的函数或相同的触发器。oracle并不缓存2个或2个以上的内存区域。它把相同的代码做一个拷贝,为不同的用户缓存。
PL/SQL区:保留了PL/SQL的过程、函数等程序单元的编译版本,以便所有用户共享。
(2)字典缓存区
当分析SQL语句来校验表名、列名、数据类型等信息时,ORACLE将频繁提到数据字典。将最频繁使用的一些字典存在字典缓存区,能提高使用效率。
3、redo buffer
用来放置需要写入磁盘的redo记录。包括redo日志文件。使用一个日志的书写进程来对日志进行书写。他是orcale采用循环方式,先进先出的方式进行缓存。
4、大共享区
可选
提供一个提供了可提供大的内存块的隔离内存区。在采用特定的多线程、备份等需要采用
5、固定SGA
由ORACLE自动控制
四、逻辑结构 逻辑结构:表空间(tablespace)、数据文件(datafile)、段(segment)、盘区(extent)、块(block)。
其中,一个表空间,对应着多个数据文件。从数据文件不能直接解读表的信息。
一个表空间包含着多个段。段和物理的数据文件不存在一一对应关系。一个段可能跨了多个数据文件。
一个段包含了多个盘区。
ORACLE的最小单位是块(必为操作系统块大小的整数倍),由若干个快组成一个盘区,由若干个盘组成一个段。window默认为8k。