Oracle数据库之体系结构
Oracle数据库管理系统中的3个重要的概念:实例(Instance)、数据库(Database)和数据库服务器(Database Server)。
实例:是后台进程和内存结构的集合,是Oracle数据库与应用程序的接口,它为应用程序提供了对数据库中数据的管理和维护功能;
数据库:由操作系统文件组成,这些文件也称为数据库文件,它为数据库信息提供实际的物理存储区;
数据库服务器:它由安装在服务器上的所有软件及启动成功后的实例组成,一般指数据库各软件部件(如SQL Plus)、Oracle实例及Oracle数据库3个主要部分。
1.物理存储结构
物理存储结构是指从物理角度分析数据库的构成,即Oracle数据库创建后所使用的操作系统文件。它是逻辑存储结构在物理上的、可见的、可操作的、具体的体现形式。
1.1数据文件
数据文件以.DBF为扩展名。
数据文件和表空间关系:
(1)一个表空间可以包含几个数据文件
(2)一个数据文件只能对应一个表空间
通过数据字典v$datafile可以查看到当前的数据文件。打开SQL Plus,以系统管理员的身份登录,输入查询语句SELECT name FROM v$datafile。
1.2控制文件
控制文件维护着数据库的全局物理结构,用以支持数据库成功的启动和运行。它是一个很小的二进制文件,一般以.CTL结尾。
每个数据库至少拥有一个控制文件,一个数据库也可以同时拥有多个控制文件。
注意:(1)控制文件是数据库中最小的文件
(2)控制文件是数据库中最重要的文件
1.3日志文件
在Oracle中,日志文件也叫做重做日志文件或重演日志文件(Redo Log Files),一般以.LOG结尾。
2.逻辑结构
逻辑结构是从逻辑的角度分析数据库的构成,即创建数据库后形成的逻辑概念之间的关系。
数据块是最小的组成单位,数据块组成了数据区间,数据区间组成了数据段,数据段构成表空间,最后表空间形成数据库。
2.1 数据块(Data Block)
·数据块是Oracle逻辑存储结构中的最小的逻辑单位
·数据块的大小是操作系统块的整数倍,常见大小为2 KB或4 KB。
·一个数据库块对应一个或者多个物理块,大小由参数DB_BLOCK_SIZE决定
·数据块的结构包括块头和存储区的两个部分
2.2 数据区(Extent)
·数据区是由连续的数据块结合而成的
·数据区是Oracle存储分配的最小单位
2.3 数据段(Data Segment)
数据段是由一个或多个数据区构成的,用于存储表、索引或簇等占用空间的数据对象。
·数据段:存储表中所有数据
·索引段:存储表上最佳查询的所有索引数据
·临时段:存储表排序操作期间建立的临时表的数据
·回滚段:存储修改之前的位置和值
2.4 表空间(Table Space)
·表空间是数据库的最大逻辑划分区域
·一个表空间由一个或多个数据文件组成,一个数据文件只属于一个表空间
·表空间的大小是它所对应的数据文件大小的总和
3. Oracle内存结构
4.数据字典
数据字典是oracle数据库用来存贮数据库结构信息的地方。它用来描述数据库数据的组织方式,由表和视图组成。
Oracle数据库之体系结构的更多相关文章
- Oracle数据库入门——体系结构
1.oracle内存由SGA+PGA所构成 2.oracle数据库体系结构数据库的体系结构是指数据库的组成.工作过程与原理,以及数据在数据库中的组织与管理机制. oracle工作原理: 1).在数据库 ...
- Oracle数据库基本操作(一) —— Oracle数据库体系结构介绍、DDL、DCL、DML
一.Oracle数据库介绍 1.基本介绍 Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/ ...
- Oracle数据库文件恢复与备份思路
怎样才能对Oracle数据库进行备份?如何才能对删除的数据再进行恢复?这是困扰着很多人的问题.大家都知道,任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操 ...
- 详细说明手工创建oracle数据库实例
手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构.手工建库须要经过几个步骤,每一个步骤都非常关键.它包括:1. 创建必 ...
- 关于oracle数据库
Oracle数据库是做什么的? oracle数据库和其他数据库一样,都是保存数据的,同时可以去查询,修改,删除等oracle和其他数据不一样的地方在于,它又复杂的机制可以保证在数据库服务器突然坏了的情 ...
- Oracle数据库之第一篇
1 : Oracle 简介 : 是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器IP,端口,用户名.密码,点击:连接 (CLIENT/SERVER) ...
- 22 Oracle数据库基础入门
1.Oracle数据库的介绍 ORACLE 数据库系统是美国ORACLE 公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或 B/S 体 ...
- Oracle数据库体系结构、启动过程、关闭过程
一.Oracle数据库体系结构体系结构由下面组件组成:1.Oracle服务器(Server):由数据库实例和数据库文件组成,另外在用户建立与服务器的连接时启动服务器进程并分配PGA(程序全局区) (1 ...
- Oracle实例和Oracle数据库(Oracle体系结构)
--========================================== --Oracle实例和Oracle数据库(Oracle体系结构) --==================== ...
随机推荐
- 2020-04-20:对Java接口代理模式的实现原理的理解?
静态代理Java中的静态代理要求代理类(ProxySubject)和委托类(RealSubject)都实现同一个接口(Subject).静态代理中代理类在编译期就已经确定,而动态代理则是JVM运行时动 ...
- 代码优化之return 减少括号嵌套
代码优化之return 减少括号嵌套 例如下面的公共方法 // 优化 substring方法 解决边界越界问题 空指针问题 优化前 public static String subString ...
- LeetCode343 整数拆分详解
题目详情 给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化. 返回你可以获得的最大乘积. 示例 1: 输入: 2 输出: 1 解释: 2 = 1 + 1, 1 × 1 = 1 ...
- 剑指Offer——II平衡二叉树
class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = None # 这道题使用中序遍历加上 ...
- Android Failed to find layer (XXX/XXX.xxActivity#0) in layer parent (no-parent).
报错: Failed to find layer (XXX/XXX.xxActivity#0) in layer parent (no-parent). 解决: 将该xxActivity复制一份到桌面 ...
- 一张图带你玩转docker
- scp 转
linux之cp/scp命令 名称:cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source... directory 说明 ...
- MySQL数据库修改字段名、字段类型、字段长度
1.MySQL数据库中,修改字段SQL如下: alter table AppVersion change version versionCode varchar() DEFAULT NULL COMM ...
- 第一篇Scrum冲刺博客
目录 一.Alpha 阶段认领的任务 二.明日成员的任务安排 三.整个项目预期的任务量 四.敏捷开发前的感想 五.团队期望 一.Alpha 阶段认领的任务 陈起廷 任务 预计时间 日记天气.心情选择 ...
- Inherent Adversarial Robustness of Deep Spiking Neural Networks: Effects of Discrete Input Encoding and Non-Linear Activations
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:2003.10399v2 [cs.CV] 23 Jul 2020 ECCV 2020 1 https://github.com ...