目录
前言
参考教材:《Oracle数据库技术基础教程》 贺超波 刘海 编著
第1章 Oracle数据库概述
1.4 Oracle数据库体系结构
1. SGA
系统全局区,SGA 由所有服务器进程和后台进程共享。
组成如下:
- 数据高速缓存:主要用于缓存频繁访问的数据,可以提高数据读写效率。
- 重做日志缓存:用于缓存重做日志,可以通过批量写入磁盘的方式提高重做日志的保存效率。
- 共享池:主要用于缓存已执行的 SQL 语句的编译方案和执行计划,可以提高重复运行的 SQL 语句的执行效率。
- 大型池:用于缓存大型 I/O 数据的可选区域,可以支持并行查询、数据备份以及恢复操作。
- Java 池:用于内嵌的 Java 存储过程或其他 Java 程序运行时需要的内存。
- 流池:用于缓存流进程在数据库间移动或复制数据时使用的队列消息,采用队列结构进行存储。
2. PGA
程序全局区,PGA 由各个服务器进程和后台进程专用,每个进程都有一个 PGA。
3. 后台进程
- DBWR:数据库写入进程,负责把数据高速缓存中的被修改的数据写入磁盘文件,从而可以保证数据高速缓存中有足够的空闲空间。
- LGWR:重做日志写入进程,把重做日志缓存中的日志内容写入联机的重做日志文件中,从而可以释放重做日志缓存空间。
- RECO:分布式事务恢复进程,可以用于自动解决在分布式数据库环境中出现的事务故障。
- CKPT:检查点进程,用于执行数据库检查点事件,触发 DBWR 和 LGWR 进程保存数据,可以维护数据库的一致性状态。
- SMON:系统监控进程,负责在实例启动时对数据库进行恢复,并用于清理不再使用的临时空间。
- PMON:进程监控进程,在用户进程出现故障时执行进程恢复,并负责清理内存储区和释放该进程所使用的资源。
- ARCH:日志归档进程,用于将已写满的在线日志文件复制指定的存储位置,实现重做日志文件的在线备份。
- LCKn:锁进程,用于实例间的封锁,在具有并行服务器选项的环境下使用,可最多建立 10 个进程:LCK0,LCK1,…,LCK9。
第2章 管理与开发工具
2.2 SQL Plus
2.2.2 常用命令
请自行参考教材,P23。
2.5 网络配置助手
Oracle 网络配置助手(NCA)主要为用户提供 Oracle 数据库的
- 监听程序(Listener):用于响应远程数据库连接请求。
- 命名方法:用于解析数据库连接标识符。
- 本地网络服务名:是从本地访问远程数据库的服务名。
- 目录(Directory):指的是 Oracle 的目录服务。
使用等的配置向导。
第3章 数据库运行状态维护
3.1 数据库启动与关闭
3.1.1 数据库的启动
1. 启动实例
根据数据库初始化参数文件创建数据库实例,分配 SGA 内存区域,并启动一系列后台进程和服务器进程。启动实例阶段需要访问数据库初始化参数文件,但并不需要访问控制文件以及数据文件,因此当控制文件以及数据文件出现问题时可以在该阶段进行修复。
2. 装载数据库
从数据库控制文件中获取数据库名称、数据文件以及重做日志文件的位置等信息,为打开数据库做准备,如果控制文件损坏将无法装载数据库。
3. 打开数据库
打开所有处于联机状态的数据文件和重做日志文件,如果出现任何一个文件打开错误,数据库将返回错误信息并需要进行恢复处理。
3.1.2 数据库的关闭
Oracle 数据库的关闭过程与启动过程是相反的。
关闭数据文件和重做日志文件 → 卸载数据库并关闭控制文件 → 关闭数据库实例、释放内存资源,停止数据库服务进程和后台进程
关闭方式 | 允许新连接 | 等待当前会话结束 | 等待当前事务处理结束 | 强制执行检查点并关闭文件 |
---|---|---|---|---|
normal | 否 | 是 | 是 | 是 |
transactional | 否 | 否 | 是 | 是 |
immediate | 否 | 否 | 否 | 是 |
abort< |