Oracle9i的关系数据库实用教程第二章 Oracle的体系结构-55页文档资料
Oracle9i数据库的第2讲
第2讲Oracle9i数据库的基本对象目的:1.掌握Oracle9i的基本对象2.掌握Oracle9i的数据类型:3.Oracle9i数据库的概念:数据库,例程,方案,表空间,表,视图等4.基本SQL的类型:DML, DDL, DCL,授课内容:[] Oracle9i的逻辑结构(基本的对象)2.1.1 数据库(Database)2.1.2 表空间(Table space)2.1.3 方案(Schema):2.1.4 用户(User)2.1.5 角色(Role)2.1.6 表(Table): 表由字段和记录组成2.1.7 视图(View):虚拟表2.1.8 索引(Index)2.1.9 序列(Sequence)2.1.10 约束(Constraint)2.1.11 存储过程(Store Procedure)2.1.12 函数(Function)2.1.13 包(Package)2.1.14 触发器(Trigger)图Oracle 数据库,表控件,和数据文件的关系图图Oracle数据库中,表空间,表,索引对象的关系(物理的和逻辑的[] 逻辑对象-[] Oracle SQL的基本组成元素1.Data Type 数据类型2.Literal 字符集3.Format Model 格式模式4.Nulls 空值ments 注释6.Database Objects 数据库对象7.Schema object name and qualifiers 模式对象名称和限定8.[] Oracle Data TypeBuiltin datatype 内置数据类型ANSI Supported data type ANSI支持的数据类型User-defined data type 用户自定义的数据类型Oracle Supplied Datatype Oracle提供的数据类型[] Oracle9i内置数据类型1.Character datatype2.Number datatype3.long and raw datatype4.Datetime datatyperge object datatype6.ROWID datatype[] Oracle的内置数据类型-字符类型(Character datatype)[] Oracle内置数据类型-数值类型(NUMBER DATATYPE)[] Oracle 内置数据类型- 日期类型(Datetime datatype)[] Oracle内置数据类型–加长和二进制类型(long and raw datatype)[] Oracle内置数据类型–大对象数据类型(large object datatype)[] Oracle内置数据类型–行编号数据类型(ROWID datatype)[] ANSI supported Datatype (ANSI支持的数据类型)[] Oracle额外提供的数据类型– Oracle Supplied datatype[] Oracle内置数据类型的规格说明Datatype Specification Oracle内置据类型的技术参数[] Oracle Date Formatthe standard Oracle default date format is DD-MON-RR. For example:'13-NOV-1992'TO_DATE ('November 13, 1992', 'MONTH DD, YYYY')使用NLS_DATE_FORMAT 修改日期的格式alter session set NLS_DATE_FORMAT='YYYY-MM-DD'[] Oracle9i SQL的分类操纵Oracle9i数据库的语言是SQL.可以直接对数据库的编程语言是PL/SQL.操作数据库的对象和对象中的数据可以使用SQL或相关的工具。
(参考资料)oracle 体系结构详解
oracle 体系结构详解一、体系结构图oracle实例=SGA区+后台进程oracle服务器=oracle实例+oracle数据库数据库实例启动实质上即为:分配SGA区,启动后台进程Oracle 实例1、是访问Oracle 数据库的一种方式2、通常只开一个且仅开一个数据库3、由内存结构和进程结构组成,即SGA区+后台进程连接Oracle实例:包括建立用户连接和创建会话Oracle数据库是作为整体的数据集,由三类文件组成:Data files, Control files, Redo log files二、物理结构主要由三类文件组成:data files ,control files,redo-log files1.data files:数据文件,存放基本表信息(即表中数据等)、索引信息(系统内建有索引表)、回退信息(主要为数据的rollback)、临时信息(如有orderby 等操作时系统有临时信息)、系统引导信息(如数据字典等)2、control files:控制文件(二进制的)。
存放库物理结构、库名、库创建日期、序列号(存有同步信息);控制文件至少有两个一摸一样的,用做备份用参数Controlfiles=/../../文件名1,/../../文件名2;指定3、redo log files:回退日志文件,存放修改前后的信息,主要用于数据的恢复,一个数据库至少有两个redo log files文件,以便可以循环记录信息注:三类文件都有序列号,必须同步才能使用,且已Control files中的序列号为准,其他的必须与其保持一致除了上面三类文件还有:Parameter file(参数文件),Password file(口令文件),Archived log files(归档文件)等参数文件:有二进制、文本两种,用于设定参数的值。
二进制参数文件可以及时更改,即时生效;文本参数文件需重启口令文件:可用orapwd.exe 建口令文件。
oracle数据库体系架构详解
oracle数据库体系架构详解在学习oracle中,体系结构是重中之重,⼀开始从宏观上掌握它的物理组成、⽂件组成和各种⽂件组成。
掌握的越深⼊越好。
在实际⼯作遇到疑难问题,其实都可以归结到体系结构中来解释。
体系结构是对⼀个系统的框架描述。
是设计⼀个系统的宏观⼯作。
这好⽐建⼀栋⼤楼。
你⾸先应该以图纸的⽅式把整个⼤楼的体系架构描述出来。
然后⼀点点的往⾥⾯填充东西。
下⾯我们先以⼀个图解的⽅式对oracle体系结构有⼀个基本了解根据⽰图,便于我们记忆,⽰图分三部分组成,左侧User Process、Server Process、PGA可以看做成Clinet端,上⾯的实例(Instance)和下⾯的数据库(Database)及参数⽂件(parameter file)、密码⽂件(password file)和归档⽇志⽂件(archived logfiles)组成Oracle Server,所以整个⽰图可以理解成⼀个C/S架构。
Oracle Server由两个实体组成:实例(instance)与数据库(database)。
这两个实体是独⽴的,不过连接在⼀起。
在数据库创建过程中,实例⾸先被创建,然后才创建数据库。
在典型的单实例环境中,实例与数据库的关系是⼀对⼀的,⼀个实例连接⼀个数据库,实例与数据库也可以是多对⼀的关系,即不同计算机上的多个实例打开共享磁盘系统上的⼀个公⽤数据库。
这种多对⼀关系被称为实际应⽤群集(Real Application Clusters,RAC)RAC极⼤提⾼了数据库的性能、容错与可伸缩性(可能耗费更多的存储空间)并且是oracle⽹格(grid)概念的必备部分。
下⾯我们来详细看⼀下oracle数据库的体系架构Oracle体系架构主要有两⼤部分组成:数据库实例(Instance)和数据库⽂件(database)数据库实例指数据库服务器的内存及相关处理程序,它是Oracle的⼼脏。
与Oracle性能关系最⼤的是SGA(System Global Area,即系统全局区活共享内存区),SGA包含三个部分:1、数据缓冲区,可避免重复读取常⽤的数据;2、⽇志缓冲区,提升了数据增删改的速度,减少磁盘的读写⽽加快速度;3、共享池,使相同的SQL语句不再编译,提升了SQL的执⾏速度。
Oracle9i数据库系统概述
Oracle9i 数据库系统概述2007.51提纲第一节Oracle9i系统概述第二节Oracle9i数据库体系结构第三节Oracle9i数据库的模式(schema)对象第四节Oracle9i数据库的安装第五节Oracle9i数据库目录结构和注册表信息第六节Oracle9i数据库数据字典第七节Oracle9i分布式数据库体系结构第八节Oracle9i数据库的启动和关闭2第一节:Oracle9i系统概述Oracle9i 是关系对象型数据库管理系统。
Oracle9i 提供以下三种版本:●Oracle9i标准版:包括一套完全集成的易用管理工具、完全分布式的复制能力以及web功能。
适合小型企业的单一服务器环境。
●Oracle9i企业版:包括大数据量的在线事务处理(OLTP)环境、查询密集型数据仓库以及要求苛刻的互联网应用等。
能够满足当今企业关键任务应用的可用性与可伸缩性需要。
●Oracle9i个人版:支持需要与Oracle9i标准版和Oracle9i企业版完全兼容的单一用户开发与部署。
3第二节:Oracle9i数据库体系结构Oracle9i数据库的体系结构可以从以下四个方面来理解:●物理存储结构●逻辑存储结构●内存结构●进程结构4一、物理存储结构从数据的物理存储结构来看,Oracle9i数据库由三类物理文件组成:●数据文件(datafile)●重做日志文件(redolog file)●控制文件(control file)1、数据文件------存储了基表数据、索引数据、回退数据、临时数据、以及数据字典基表数据。
每个数据库至少由一个或多个数据文件组成。
52、重做日志文件------存储数据库的修改前、修改后的信息以及事务标志。
在数据库实例(instance)恢复期间,Oracle使用重做日志文件恢复所有用户对数据库所做的修改操作。
每个数据库必须拥有两个或两个以上的重做日志文件。
3、控制文件------是一个二进制文件。
Oracle9i的关系数据库实用教程第二章 Oracle的体系结构共57页文档
3.表空间中对象的存储
如果表空间只对应一个数据文件,该表空间中 所有的对象都存储在此数据文件中。如果表空 间对应于多个数据文件,可将一个对象的数据 存储在该表空间的任意一个数据文件中,也可 将同一个对象的数据分布在表空间的多个数据 文件中。
2.2.2 段
1.数据段 2.索引段 3.临时段 4.回退段
2.1.4 配置文件
配置文件是一个ASCII文本文件,记录Oracle 数据库运行时的一些重要参数。名字通常为 initsid*.ora格式,如:initCIMS.ora,SID相当 于它所控制的数据库的标识符。每个Oracle 数据库和实例都有它自己惟一的init.ora文件。
Oracle9i 新 引 入 一 个 服 务 器 参 数 文 件 ( SPFILE ) , 一 个 服 务 器 参 数 文 件 (SPFILE)可以被认为是在Oracle数据库服 务器端的初始化参数文件。存储在一个服务
(4)能够将某个表空间设置为脱机状态或联机 状态,以便对数据库的一部分进行备份和恢复。 (5)能够将某个表空间设置为只读状态,从而 将数据库的一部分设置为只读状态。 (6)能够为某种特殊用途专门设置一个表空间, 比如临时表空间等,以优化表空间的使用效率。 (7)能够更加灵活地为用户设置表空间限额。
2.1.3 控制文件
每个Oracle数据库都有相应的控制文件, 用于打开、存取数据库。它们是较小的二 进制文件,其中记录了数据库的物理结构。
名字通常为Ctr*.ctl格式
控制文件中的内容只能够由Oracle本身来修 改。每个数据库必须至少拥有一个控制文 件。一个数据库也可以同时拥有多个控制 文件,但是一个控制文件只能属于一个数 据库。
第二章 Oracle体系结构
oracle教程02_oracle体系结构
•
一马当先,全员举绩,梅开二度,业 绩保底 。20.10. 1520.1 0.1510: 0510:05 :1510:0 5:15O之策,力务 安全之 实。202 0年10 月15日 星期四1 0时5分 15秒Thursday, October 15, 2020
•
相信相信得力量。20.10.152020年10月 15日星 期四10 时5分1 5秒20. 10.15
• 控制文件 • 每个数据文件头
CKPT
检查点进程
控制文件 数据文件
系统监视器进程 (SMON)
– 在实例启动时执行恢复 – 清除不使用的临时段
SMON
系统监视器进程
实例 临时段
进程监视器进程 (PMON)
– 在用户进程失败时执行进程恢复
• 清除数据库缓冲区高速缓存 • 释放该用户进程使用的资源
谢谢大家!
•
树立质量法制观念、提高全员质量意 识。20. 10.1520 .10.15T hursda y, October 15, 2020
•
人生得意须尽欢,莫使金樽空对月。1 0:05:15 10:05:1 510:05 10/15/2 020 10:05:15 AM
•
安全象只弓,不拉它就松,要想保安 全,常 把弓弦 绷。20. 10.1510 :05:151 0:05Oct-2015-Oct-20
段、区和块
– 段存在于表空间中。 – 段是区的集合。 – 区是数据块的集合。 – 数据块会映射到磁盘块。
段
区
数据块
磁盘块
数据库体系结构:结构组件汇总
– 内存结构:
• 系统全局区 (SGA):数据库缓冲区高速缓存、重做缓冲 区以及各种池
• 程序全局区 (PGA)
第2讲 Oracle体系结构[28页]
Kegully
Oracle的物理结构(一)
物理存储结构是现实的数据存储单元,主要由以下四个部 分组成:数据文件、控制文件、日志文件、其他文件 。 (4)参数文件(也叫配置文件)
❖ 可以将表空间看作为一个容纳数据库对象的容器,其中被 划分为一个一个独立的段。
❖ 表空间在物理上对应操作系统中的一个或多个数据文件。
Kegully
连线题
假如将数据库比作一个存放资料的柜子 列表1:数据库,表空间,数据文件,段,数据 列表2:文字,纸,抽屉,柜子,文件夹
• 如果将数据库比做一个存放资料的柜子,则柜子中的抽屉就是表空间,抽屉 中的文件夹就是数据文件,文件夹中的纸就是段,记录在纸上的文字就是数 据。
LGWR (Log Writer) 日志写入进程,将日志数据从日志缓冲区写 入磁盘日志文件组。必须进程。
SMON (System Monitor) 系统监控进程,在实例启动时执行实 例恢复,并负责清理不再使用的临时段。必须进程。
PMON (Process Monitor) 进程监控进程,在用户进程出现故障 时执行进程恢复,负责清理内存区和释放该进程所使用的资源。 必须进程。
Kegully
Oracle的进程结构
❖用户进程 ❖服务器进程 ❖后台进程
Kegully
后台进程 – Back process
❖ 为了提高系统性能,更好地实现多用户功能,Oracle在后 台启动一些后台进程,用于数据库的各种数据操作,主要 有:
DBWR (Database Writer) 数据写入进程,执行将缓冲区的内 容写入数据文件。必须进程。
Oracle9i的体系结构
UGA(用户全局区)
总结词
每个用户会话专用的内存区域,用于存储该 用户会话的数据和控制信息。
详细描述
UGA(User Global Area)是每个用户会话 专用的内存区域,用于存储该用户会话的数 据和控制信息。它包括多个组件,如会话缓 冲区、游标区和应用程序上下文等。这些组 件为每个用户会话提供所需的内存资源,以
归档日志文件和联机日志文件
归档日志文件
归档日志文件是将重做日志文件进行归 档的文件,通常用于备份和恢复操作。 在Oracle数据库中,当重做日志文件被 填满并切换到新的重做日志文件时,旧 的日志文件会被归档。
VS
联机日志文件
联机日志文件是重做日志文件的在线部分 ,用于记录当前正在进行的修改操作。联 机日志文件对于数据库的恢复和操作至关 重要,必须保持正常运行。
客户端软件允许用户连接到数据库服 务器,执行查询、更新和提交事务。 它还提供用户界面和应用程序开发框 架,以便开发人员构建与数据库交互 的应用程序。
网络协议
网络协议是用于在客户端和数据库服务器之间传输数据的标准和规则。Oracle9i支持多种网络协议, 如TCP/IP、Net8和名字服务等。
通过使用网络协议,客户端和数据库服务器可以在不同的操作系统和网络环境中进行通信。协议还提 供数据加密和身份验证功能,以确保数据的安全性和完整性。
区
是段中连续的数据块集合,一个段可以由一个或多个区组成。
管理
Oracle自动对段和区进行管理,通过自动段空间管理或手动段 空间管理方式。
数据库块
数据库块
是Oracle数据库中最小的数据存储单位,每个块的大 小是固定的。
特点
数据库块包含数据和元数据,如行标识符、列数据等。
Oracle数据库体系结构(详细版)
Oracle体系结构Oracle核心竞争力可扩充性:Oracle系统有能力承担增长的工作符合,并且相应的扩充系统资源利用情况。
可靠性:无论出现系统资源崩溃,电源断电还是系统故障的时候,我们都可以对Oracle进行配置。
以保证检索用户数据事务处理的时候,不受到影响。
可管理性:数据库管理员可以微调Oracle使用内存的方式,以及Oracle向磁盘写入数据的频率。
并且管理可以调整,数据库为连接到数据库的用户分配操作系统进程的方式。
Oracle总体结构分为三个部分第一部分:系统全局区(SGA)第二部分:程序全局区和后台进程第三部分:Oracle的文件如果从功能上划分的话:存储结构:由这些文件就构成了Oracle的物理存储结构。
内存结构:使用内存最多的是SGA,也是影响数据库系统性能最大的一个参数。
进程结构:前台进程服务进程和用户进程,是根据实际需要而运行的,并在需要结束后立刻结束。
后台进程是指Oracle数据库启动后自动启动的几个操作系统进程。
存储结构包括物理结构和逻辑结构,既独立又相互联系的。
物理结构:是和操作系统平台有关的。
逻辑结构:逻辑存储结构是和操作系统平台无关的。
_______________________________________________________________________________这个图是两种存储结构中的对应关系表空间包括系统表空间和用户表空间。
表空间也是最大的逻辑单位。
块是最小的一个逻辑单位。
逻辑结构的表空间对应着物理结构的数据文件,也就是创建表空间的时候要给它指定数据文件,但是一个表空间可以对应多个数据文件。
表空间的大小也就是他包含的数据文件大小的总和。
数据文件呢同时又对应着操作系统中的数据块,数据文件也是以数据块的形式,存在于操作系统中。
逻辑结构中的块也对应着操作系统的数据块。
——————————————————————————————————————— 物理存储结构Oracle的物理存储结构,也就是Oracle的数据库文件数据库文件又分为主要文件和其他文件主要文件:首先来看数据文件:就是物理存储Oracle数据库数据的文件有一下特点:◆每一个数据文件,只与一个数据库相关联。
Oracle的体系结构
•临时表空间所对应的临时数据文件是一类比较特殊的数据文件。 •临时文件的信息只能通过数据字典视图DBA_TEMP_FILE和动 态性能视图V$TEMPFILE来查看;不能像普通数据文件一样通过 DBA_DATA_FILES和V$DATAFILE视图来查看。
3.物理存储结构
3.2控制文件
数据库控制文件是一个很小的二进制文件,在其中包含了关 于数据库物理结构的重要信息。通过在加载数据库时读取控 制文件,Oracle才能找到自己所需的操作系统文件(数据文 件、重做日志文件等)。
当一个段中的所有空间被使用完后,系统将自动 为该段分配一个新的盘区。
2.逻辑存储结构
2.3段
段是由一系列盘区组成,它也不再是存储空间的 分配单位,而是一个独立的逻辑存储结构。
对于具有独立存储结构的对象,它的数据全部存 储在保存它的段中。一个段只属于一个特定的数 据库对象,每当创建一个具有独立段的数据库对 象时,Oracle将为它创建一个段。
5.实例的进程结构
5.1用户进程
用户执行一个Oracle应用程序或启动一个Oracle工具(如 SQL*Plus)时,创建一个用户进程来执行相应的用户任务。 相关概念:
(1)连接:是一个用户进程与数据库实例之间的一条通信路径, 这条通信路径通过操作系统平台中的进程间通信机制或网络连接来 实现。
3.物理存储结构
3.3重做日志文件
重做日志文件是记录数据库中所有修改信息的文件
1.修改前的数据 2.修改后的数据 当满足一定条件时先将修改操作所产生的重做记录写入重做日志文件 中,然后才将内存中的修改结果成批的写入数据文件,最后再提交事 务。 重做日志文件是由重做记录组成的,重做记录是由修改向量组成的。 当用户执行一条update语句对某一个表中的记录进行修改时,会生成 一条记录。这条记录用多个向量记录下了被这条语句修改过的各个数 据块中的信息。
ch4 Oracle9i数据库的体系结构
数据文件
Oracle数据库有一个或多个物理的数据文件。 数据库的数据文件包含全部数据库的数据 数据文件的特征
一个数据文件仅与一个数据库联系 一个表空间(数据库存储的逻辑单位)由一个或多 个数据库文件组成 数据文件一旦加入到表空间中,就不能从这个表空 间中移走,也不能与其他表空间发生联系 逻辑数据库结构(表、索引)的数据物理地存储在 数据库的数据文件中
Ch4 Oracle9i数据库的体系 结构
主要内容
4.1 Oracle 9i数据库的逻辑结构 4.2 Oracle 9i数据库的物理结构 4.3 Oracle 9i实例 4.4 小结
Oracle数据库的体系结构
Oracle数据库的体系结构包括四个方面
逻辑结构 物理结构 内存结构 进程
4.1 Oracle数据库的逻辑结构
Oracle数据库的逻辑结构描述了数据库从逻辑 上如何来存储数据库中的数据。 逻辑结构包括表空间、段、区、数据块和数据 对象。 数据库的逻辑结构将支配一个数据库如何使用 系统的物理空间。数据对象及其之间的联系则 描述了关系数据库之间的设计。
4.1 Oracle数据库的逻辑结构
数据库 Oracle数据库
表空间
表空间
表空间
表空间
逻辑对象
表
索引
视图
…
数据段
数据段
数据段
索引段
临时段
回滚段
数据区间
数据区间
数据区间
数据块
数据块
数据块
表空间:Oracle9i使用表空间来管理逻辑对象,用户可以将不同性 质的逻辑对象放在不同的表空间下。逻辑对象和表空间的关系好 比文件和文件夹的关系。
第02章Oracle9i体系结构
否有用户连接数据库它们都在运行,负责数据库的后台 管理工作,这也是称之为后台进程的原因。
2-22
Oracle 9i数据库的后台进程
SMON PMON
RECO ARCH
系统全局区
CKPT QMON
DBWR LGWR
2-23
Oracle 9i数据库的主要后台进程
• 非归档模式,不保留以前的重做日志内容,适合
于对数据库中数据要求不高的场合。
2-14
初始化参数文件
• 初始化参数文件INIT.ORA是一个文本文件,定义
了要启动的数据库及内存结构的大约200多项参数 信息。启动任何一个数据库之前,Oracle系统都要 读取初始化参数文件中的各项参数。
• 初始化参数文件的主要内容如下:
Database
2-27
Oracle数据库的应用架构
• 多磁盘结构 • 磁盘映像结构 • 客户/服务器系统 • 共享服务器系统 • 并行(集群)数据库系统 • 分布式数据库系统 • Oracle WebServer系统
2-28
Thank you very much!
2-29
• 控制文件存放了与Oracle 9i数据库物理文件有关的
关键控制信息,如数据库名和创建时间,物理文件 名、大小及存放位置等信息。
• 控制文件在创建数据库时生成,以后当数据库发生
任何物理变化都将被自动更新。
• 每个数据库包含通常两个或多个控制文件。这几个
控制文件的内容上保持一致。
2-12
日志文件
• 日志文件用于记录对数据库进行的修改操作和事务操作
后缀“.DBF”。
• 数据文件存放的主要内容如下:
Oracle9i的关系数据库实用教程第二章 Oracle的体系结构
2020/4/27
2.2.5 模式对象
Oracle数据库的模式对象包括表、视 图、序列、同义词、索引、触发器、存 储过程等。
2020/4/27
2.3 内存结构
2.3.1 系统全局区 2.3.2 程序全局区 2.3.3 排序区 2.3.4 软件代码区
2020/4/27
2.2.4 数据库块
数据库块也称逻辑块或Oracle块,它对应 磁盘上一个或多个物理块,它的大小由初 始化参数db_block_size(在文件init.ora中) 决定,典型的大小是2k。
2020/4/27
Pckfree和Pctused两个参数用来优化数据 块空间的使用。
PCTFREE : 块 中 保 留 用 于 UPDATE 操作的空间百分比,当数据占用的空间达 到此上限时,新的数据将不能再插入到此 块中;
第二章 Oracle体系结构
2.1 物理结构 2.2 逻辑结构 2.3 内存结构 2.4 数据库实例与进程 2.5 数据字典
2020/4/27
2.1 物理结构
2.1.1 数据文件 2.1.2 日志文件 2.1.3 控制文件 2.1.4 配置文件
2020/4/27
2.1.1 数据文件
数据文件用来存储数据库中的全部数据, 如数据库表中的数据和索引数据。通常为后 缀名为.dbf格式的文件。
2020/4/27
共 享 池 的 大 小 取 决 于 init.ora 文 件 参 数 SHARED_POOL_SIZE,它是以字节为单 位的。用户必须将这个值设得足够大, 以确保有足够的可用空间来装载和存储 PL/SQL块和SQL语句。
2020/4/27
5.Java池
2oracle9i体系结构
2.2.4 配置文件
如何判断当前数据库使用的是哪个配置文件? select name, value from v$parameter where name = 'spfile'; value的值为空, 说明使用的配置文件是init.ora value的值不为空, 说明使用的是spfile***.ora
分配给段的第一个区称初始分区,以后分配的区称 增量分区
辽宁工程技术大学电子与信息工程学院
2.3.3 区
主要的几个存储参数: INITIAL:段建立时分配的第一个区的大小(单位: 字节) NEXT:段内分配的下一个增量区大小(单位:字 节) MAXEXTENTS:分配给段的区总数 MINEXTENTS:建立段时分配的区总数,也就是段 的最小区数量 PCTINCREASE:为段分配的每个增量区超过上一 个区的百分比
– 如果数据库使用过程中的临时数据较多且频 繁,则应当在数据库中创建一个专门用来存 储临时数据的临时表空间。否则 临时数据会 存储在SYSTEM表空间中,影响整个系统的 性能。
辽宁工程技术大学电子与信息工程学院
2.3.1 表空间
表空间分类 用户表空间 – 用于存放用户的私有信息。
辽宁工程技术大学电子与信息工程学院
2.3.1 表空间
表空间分类 SYSTEM表空间 – 自动建立(随数据库创建) – 存放数据字典 – 存储过程、包、函数和触发器的定义 – 存储数据库对象的定义
辽宁工程技术大学电子与信息工程学院
2.3.1 表空间
表空间分类
回滚表空间 – 回滚表空间(RollBack Table Space)是用于
辽宁工程技术大学电子与信息工程学院
2.3 Oracle9i的逻辑结构
推荐下载-oracle9i体系结构 精品
读一致性
当一个会话正在修改 数据时,其他的会话 将看不到该会话未提 交的修改。
数据文件
重做日志
2.3.3 区
是数据库空间分配的逻辑单位,一个区由若干数据 库块组成
缺省情况下,数据库会使用表空间中存储的存储参 数来管理它们的分区
分配给段的第一个区称初始分区,以后分配的区称 增量分区
2.3.3 区
数据库
归档 日志文件
2.4 数据库例程
通常数据库与例程是一一对应的,即一个数据库 对应一个例程;
在并行数据库服务器结构中,数据库与例程是一 对多关系,即一个数据库对应多个例程;
多个例程同时驱动一个数据库的架构称作“集 群”,同一时间一个用户只能与一个例程联系,当 某一个例程出现故障时,其他例程照常运行,从而 保证了数据库的安全运行。
2.3 Oracle9i的逻辑结构
Oracle的逻辑结构是由一个或多个表空间组成的
✓ 一个表空间由若干个段组成 ✓ 一个段由若干个区组成 ✓ 一个区由若干数据库块组成 ✓ 一个数据库块对应一个或多个OS块
2.3 Oracle9i的逻辑结构
数据库
数据库
逻辑
表空间 段 范围
数据块
数据文件 日志文件
控制文件 物理
– 如果数据库使用过程中的临时数据较多且频 繁,则应当在数据库中创建一个专门用来存 储临时数据的临时表空间。否则 临时数据会 存储在SYSTEM表空间中,影响整个系统的 性能。
2.3.1 表空间
表空间分类
用户表空间 – 用于存放用户的私有信息。
2.3.1 表空间
查看表空间
select * from v$tablespace; select * from dba_tablespaces; select tablespace_name,file_name from dba_data_files;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.1.1 数据文件 2.1.2 日志文件 2.1.3 控制文件 2.1.4 配置文件
2.1.1 数据文件
数据文件用来存储数据库中的全部数据, 如数据库表中的数据和索引数据。通常为后 缀名为.dbf格式的文件。
2.1.2 日志文件
日志文件(又称重做日志文件),用于 记录数据库所做的全部变更(如增加、 删除、修改),以便在系统发生故障时, 用它对数据库进行恢复。
PCTUSED:指定块中数据使用空间 的最低百分比;
2.2.5 模式对象
Oracle数据库的模式对象包括表、视 图、序列、同义词、索引、触发器、存 储过程等。
2.3 内存结构
2.3.1 系统全局区 2.3.2 程序全局区 2.3.3 排序区 2.3.4 软件代码区
2.3.1 系统全局区
系统全局区(SGA,System Global Area.)是内 存结构的主要组成部分,是Oracle为一个实例分配 的一组共享内存缓冲区,保存着Oracle系统与所有 数据库用户的共享信息,包括数据维护、SQL语句 分析,重做日志管理等。是实例的主要部分。
INITIAL:段建立时分配的第一个区的大小(单位:字节) NEXT:段内分配的下一个增量区大小(单位:字节) MAXEXTENTS:分配给段的区总数。 MINEXTENTS:建立段时分配的区的总数,也就是段的最 小区数量。 PCTINCREASE:为段分配的每个增量区超过上一个区的 百分比。 INITRANS:为初试数量的DML事务条目(并发访问数据 块中的行)保留的预分配空间数量。 NTKXTRANS:当多个事务同时访问同一数据块的行时, 为数据块中每个DML事务的条目分配的空间。
1.数据段
数据段中保存的是表中的记录。
2.索引段
在Oracle数据库中每个未分 区索引都有一个索引段保存 索引中的索引条目。对于一 个分区索引,每个分区都有 一个索引段保存它的数据。
3.临时段
当处理查询时,Oracle可能会 需要使用到一些临时存储空间, 用于临时保存解析过的查询语 句以及在排序过程中产生的临 时数据。Oracle会自动在专门 用于存储临时数据的表空间为 操作分配临时段。
4.回退段
回滚段用于存放数据修改之前的值(包括 数据修改之前的位置和值)。 回滚段的作用主要有以下几方面: (1)事务回滚 (2)事务恢复 (3)读一致性
2.2.3 区
区是由很多连续的数据块组成的数据 库存储空间。
缺省情况下,数据库会使用表空间中 存储的存储参数来管理他们的区。
主要的几个存储参数:
Oracle9i 新 引 入 一 个 服 务 器 参 数 文 件 ( SPFILE ) , 一 个 服 务 器 参 数 文 件 (SPFILE)可以被认为是在Oracle数据库服 务器端的初始化参数文件。存储在一个服务
器参数文件的初始化参数是永久的,它提供 了由Oracle数据库服务器自我调节的一个基 础。服务器参数文件是二进制文件,不能使 用一个文本编辑器浏览或编辑。Oracle提供 了浏览和查看相关参数的另外接口。
2.2.4 数据库块
数据库块也称逻辑块或Oracle块,它对应 磁盘上一个或多个物理块,它的大小由初 始化参数db_block_size(在文件init.ora中) 决定,典型的大小是2k。
Pckfree和Pctused两个参数用来优化数据 块空间的使用。
PCTFREE : 块 中 保 留 用 于 UPDATE 操作的空间百分比,当数据占用的空间达 到此上限时,新的数据将不能再插入到此 块中;
(4)能够将某个表空间设置为脱机状态或联机 状态,以便对数据库的一部分进行备份和恢复。 (5)能够将某个表空间设置为只读状态,从而 将数据库的一部分设置为只读状态。 (6)能够为某种特殊用途专门设置一个表空间, 比如临时表空间等,以优化表空间的使用效率。 (7)能够更加灵活地为用户设置表空间限额。
2.表空间的使用
在数据库中使用多个表空间具有如下优势: (1)能够将数据字典与用户数据分离开来,避免 由于字典对象和用户对象保存在同一个数据文件 中而产生的1/0冲突。 (2)能够将回退数据与用户数据分离开来,避免 由于硬盘损坏而导致永久性的数据丢失。 (3)能够将表空间的数据文件分散保存到不同硬 盘上,平均分布物理1/0操作。
名字通常为Ctr*.ctl格式
控制文件中的内容只能够由Oracle本身来修 改。每个数据库必须至少拥有一个控制文 件。一个数据库也可以同时拥有多个控制 文件,但是一个控制文件只能属于一个数 据库。
2.1.4 配置文件
配置文件是一个ASCII文本文件,记录Oracle 数据库运行时的一些重要参数。名字通常为 initsid*.ora格式,如:initCIMS.ora,SID相当 于它所控制的数据库的标识符。每个Oracle 数据库和实例都有它自己惟一的init.ora文件。
3.表空间中对象的存储
如果表空间只对应一个数据文件,该表空间中 所有的对象都存储在此数据文件中。如果表空 间对应于多个数据文件,可将一个对象的数据 存储在该表空间的任意一个数据文件中,也可 将同一个对象的数据分布在表空间的多个数据 文件中。
2.2.2 段
1.数据段 2.索引段 3.临时段 4.回退段
名字通常为Log*.dbf格式
根据在事务信息将被覆盖时,是否应该
将文件归档,数据库分为以下两种归档模 式:ARCHIVELOG(归档日志)或 NOARCHIVELOG(非归档日志)模式。
2.1.3 控制文件
每个Oracle数据库都有相应的控制文件, 用于打开、存取数据库。它们是较小的二 进制文件,其中记录了数据库的物理结构。
2.2 逻ห้องสมุดไป่ตู้结构
2.2.1 表空间 2.2.2 段 2.2.3 区 2.2.4 数据库块
2.2.5 模式对象
2.2.1 表空间
1.表空间的分类 2.表空间的使用 3.表空间中对象的存储
1.表空间的分类
Oracle中除了用户创建的存放数据对象 的数据表空间外,还有以下类型的表空间: (1)System表空间 (2)回滚表空间(RollBack TableSpace) (3)临时表空间(Temp TableSpace)