oracle基础入门
– DBMS Database Management System
Oracle 服务器
16/89
Oracle体系结构
用户进程
服务器进程 PGA
共享池
实例 SGA
库高速缓存
数据字典 高速缓存
数据库缓冲区 高速缓存
Java 池
重做日志 缓冲区
大型共享池
PMON SMON DBWR LGWR CKPT 其它
46/89
ARCH
• 归档进程ARCH (Archiver):
它记录数据库的物理结构。 • 包含下列信息类型:
– 数据库名。 – 数据库数据文件和日志文件的名字和位置。 – 数据库建立日期。
25/89
参数文件
• 是一个文本文件,可直接使用操作系统下的文本 编辑器打开查看,但不能对其内容进行修改。该文 件只在建立数据库或启动实例时才被访问,在修 改该文件之前必须关闭实例。
中
神维通护数成据本库 神舟通用公低司
高
中
中
iHB稳UA定ASBE性ASE-华鼎北数京据国库信贝中清斯华软-件广有东限环公天高司数研据发与知识工程高研究中心开发 高
华价易格数据库Huayisoft DB低Server 华易高软件工作室开始中
高
K-DB 数据库 ?????
适用场景
中小企业
大中型企业
中小企业
大中型企业
12/19
目录
1 2 3 4
13/19
Oracle架构入门的重点
• 物理结构(由控制文件、数据文件、重做 日志文件、参数文件、密码文件、归档文 件等组成)
• 存储结构(物理结构、逻辑结构) • 内存分配(SGA和PGA) • 后台进程(数据写进程、日志写进程、系
统监控、进程检控、检查点进程、归档进 程、服务进程、用户进程) • Oracle实例
11/89
Oracle和其他数据库的比较
指标
MSSQL
Oracle
Sybase
DB2
开放性
低
高
中
高
可伸缩性
低
高
中
高
并行性
中
高
中
高
D安全M性达梦数据库 达梦中数据库有限公司高
高
高
南性大能通用GBASE数据库(中GBase)南大高通用数据技术股中份有限公司 中
金O操p仓作en数简B据A便S库性E(K东in软g集ba团se有E高限S)公北司京人大金低仓信息技术股份中有限公司
• 通过指定LARGE_POOL_SIZE参数,设置Large Pool的大小。
2019/6/21
41/76
Java Pool (Java池)
• 当使用者有使用Java时,Oracle Server 利用这块存储空间,存放及分析所使用的 Java Code,藉以提供Oracle与Internet 更高的整合性。
参数文件 口令文件
数据文件
控制文件 重做日志 文件
ቤተ መጻሕፍቲ ባይዱ
17/19
数据库
归档 日志文件
Oracle数据库
–是一个被统一处理的数据集合 –包括三类文件
数据库文件的 物理结构
参数文件 口令文件
Oracle 数据库
数据 文件
控制 文件
重做
日志 文件
归档的 日志文件
18/89
数据库结构
• ORACLE数据库中的数据逻辑存储在表空间 中,物理存储在数据文件中。
19/89
物理文件 windows
20/89
物理文件 linux
21/89
数据文件
• 数据文件是物理存储ORACLE数据库数据的 文件,每一个ORACLE数据库有一个或多个 物理的数据文件(data file)。
• 其特点如下:
– 每一个数据文件只与一个数据库相联系。 – 一个表空间可包含一个或多个数据文件。
7/19
深入学习
• 管理:可以考 OCP 证书,对 oracle 先有 一个系统的学习,然后看 Oracle Concepts、oracle online document,对 oracle 的原理会有更深入的了解,同时可 以开始进行一些专题的研究,如:
• RMAN: Recovery manager • RAS: Remote Access Service(远程访
9/19
• 成立于1977年,总部位于美国加州,全球第二大软件公司,也是全 球最大的信息管理软件及服务供应商,最早进入中国的跨国软件巨头
• 甲骨文公司主要的产品目前分为以下几大类:
– 服务器(服务器)及工具(主要竞争对手:IBM、微软) – 应用服务器: Oracle Application Server – 开发工具:Oracle JDeveloper,Oracle Designer,Oracle Developer,等 – 企业资源计划(ERP)软件,已有10年以上的历史。 – 客户关系管理(CRM)软件,自1998年开始研发这种软件。
– 清除异常终止的连接、撤消未提交的事务、释放被终止 的进程所持有的锁、将自由的 SGA 资源分配给失败的 进程、数据库的维护
45/89
SMON • SMON 进程-必须:
– 执行自动的实例恢复 – 回收不再使用的临时段空间 – 合并数据文件中相邻的块空间(如果PCTINCREASE > 0)
• PMON和SMON一样,都是由Oracle数据 库系统周期性自动执行,检查整个数据库 系统的运行情况
实例和会话
• 连接到 Oracle 实例(instance)包括:
– 每个用户同时刻只能连接到一个实例上; – 用户连接可通过TCP/HTTP实现; – 连接成功的用户,系统为该用户创建会话
建立的连接 用户进程
服务器进程
创建的会话 Oracle 服务器
数据库用户
39/89
内存结构 • 系统全局区(System Global Area,SGA) • 程序全局区(Program Global Area,PGA)
5/19
学习方法
• 看书、思考、写笔记、做实验、再思考、再写笔 记。
• 看完理论的东西,自己静下心来想想,多问自己 几个为什么,然后把所学和所想的知识点做个笔 记;在想不通或有疑问的时候,就做做实验,想 想怎么会这样,同样的,把实验的结果记下来。
• 思考和做实验是为了深入的了解这个知识点,而 做笔记的过程,也是理清自己思路的过程。
• 新版的Oracle支持二进制的参数文件,可以在运 行期修改参数
参数文件的作用: • 确定存储结构的大小。 • 设置数据库的全部缺省值。 • 设置数据库的范围。 • ……
26/89
Oracle逻辑存储结构
• 包括表空间,段,区间,数据块 • Tablespace, segment, extent , block
27/89
表空间
• ORACLE的逻辑结构是由一个或多个表空间 组成,一个数据库划分为一个或多个逻辑 单位,该逻辑单位称为表空间tablespace
• 一个表空间可将相关的逻辑结构组合在一 起。
28/89
Oracle 逻辑存储结构
29/89
逻辑存储结构
30/89
Oracle 数据库块(Data Block) Header Free space Data
问) • BACKUP&RECOVER 等。
8/19
深入学习
• 开发: 对于想做 Oracle 开发的, 在了解 完 Oracle 基本的体系结构之后, 可以重 点关注PL/SQL及 Oracle 的开发工具这一 部分。
• PL/SQL 主要是包括怎么写 SQL 语句,怎 么使用 Oracle 本身的函数,怎么写存储过 程、存储函数、触发器等。
• 脏块列表达一定的量 • 进程扫描有无自由的空间 • 超时发生时 • DBWR 检查点发生时
44/89
PMON • PMON (Process Monitor) -必须:
– 如果是因为停电或是其它因素导致Oracle数据库不正 常被关闭, 下一次启动数据库时将由SMON进行必要 的数据库修复动作。
10/19
大事记
甲骨文收购Sun:交易价值74亿美元
“On April 20, 2009, Sun and Oracle announced a definitive agreement under which Oracle will acquire Sun. The proposed transaction is subject to Sun stockholder approval, certain regulatory approvals and customary closing conditions. Until the deal closes, each company will continue to operate independently, and it is business as usual. ”
• 通过指定JAVA_POOL_SIZE这个参数,来 改变Java Pool的大小 。
2019/6/21
42/76
后台进程(Background Process)
• 所谓后台:
– 客户端是前台,Oracle所在的服务器就是后台 – 现在仍然沿用后台概念
• 后台进程( background process ):
22/89
日志文件 • 记录所有对数据库数据的修改,以备恢复数据时
使用. • 其特点如下:
– 每一个数据库至少包含两个日志文件组。 – 日志文件组以循环方式进行写操作。 – 每一个日志文件成员对应一个物理文件。
23/89
日志文件
24/89