- 浏览: 108628 次
最近访客 更多访客>>
最新评论
-
jiyifa:
专业的 右脑记忆方法 网站 www.jiyifa.com
...
提高记忆力的唯一方法是进行记忆力训练(转载) -
k_cancer:
= =
我的天。。
谁开出的书单啊。。
看完这个不要干程 ...
170本应该看的java书(转载) -
cupid_love:
funny
有趣的日语单词记忆法(外行学日语) -
pioneer127:
请问楼主看了几本了?
170本应该看的java书(转载) -
zzg810314:
事情就是这么的简单,哈哈
恍然大悟!?为什么我们总是比别人钱少(转载)
oracle概念和术语(转载)
racle数据库系统是一个复杂的软件系统。如果不了解其内部的结构原理及关系,就不可能设计和编写出高质量的应用软件系统,也不可能管理好一个复杂的应用系统。为了给以后章节的打好基础,本章简要给出 ORACLE 8 /ORACLE8i数据库系统结构的描述。
§2.1 术语
l 数据库块(BLOCK)
ORACLE 数据库中的最小存储和处理单位,包含块本身的头信息数据或PL/SQL代码。
ORACLE 块的大小是可以在安装时选择“自定义安装”来指定,也可以在CREATE DATABASE创建数据库实例时指定。其最小为2K,最大可达为64K。
l 瓶颈(Bottleneck)
指限制系统性能的部件。
l 面向对象的关系数据库
具有关系数据库的全部功能,同时又支持面向对象的数据库,称作面向对象关系数据库系统。Oracle7是一种功能完备的关系数据库系统;oracle8是一种面向对象的关系数据库系统。
l 客户/服务器结构(Client/Server)
有客户机、服务器、网络三要素的结构,客户机(PC机)通过网络与服务器相连和工作。
l 胖客户机(Fat Client)
一般的Client/Server结构中的客户机均为胖客户机。因为这些客户机需要配置较高的设备,如内存、硬盘、主频、CD_ROM等。
l 瘦客户机(Thin Client)
也称作NC(网络计算机),是一种内存配置小(过去指一般只有4M,现无法定义),无硬盘,只有处理心片的处理机。
l 数据在线分析处理(OLAP)
是一种能以快速、交互、方便的方式洞察数据情况的技术。如Oracle Express,Cognos(加拿大)的Power Play, Business Objects公司的Business Object 等。
l 多线程(MTS)
一个用户可以同时运行多个程序对数据库进行访问,比如Visual C/C++可以提供同时启动多个进程,而Visual Basic则不能。
l 数据仓库(Data Warehouse)
支持大量数据信息存储的叫做支持数据仓储或数据仓库。当把几个小型数据库集成为一个大型数据库,并为一个较广泛的组织服务时,如果该数据库存储历史数据,提供决策支持,提供数据汇总,提供只读数据,并且实质上充当所有向它提供数据的相关成品数据库的数据接收器,那么它通常被叫做数据仓库。
l 实例(Instance)
是访问Oracle数据库所需的一部分计算机内存和辅助处理后台进程。
l 对象(Objects)
是实现世界实体的软件表示,如表、索引、视图、同义词、过程等。
l 数据库文件(Datafile)
Oracle系统中用于存放数据(应用系统数据)的文件。(<<Oracle8初学者指南>>P14中的例子不准确,容易误导读者)。
l 控制文件(Control File)
Oracle中存放系统用的一些数据的文件。如数据文件的路径及文件名,初始化文件路径及 文件名等都存放在控制文件中。
l 日志文件(Logs File)
也叫事务记录文件,该文件记录有事物对数据库进行的一切修改操作或事务。
l DBA(Database administrator-数据库管理员)
是管理数据库系统的技术工具或人员,在完备的数据库系统中都提供DBA功能。
l 灰数据块(Dirty data block)
存放在内存中的原始数据已被修改,而修改后的数据还未写入数据库中。
l 热数据块(Hot data block)
存放着那些经常被修改数据叫热数据块。
l LRU(Least Recently Used-最近最少用)
Oracle系统使用的一种算法,对于在内存中但最近又不用的数据块(内存块)叫做LRU,Oracle会根据那些数据属于LRU而将其移出内存而腾出空间来加载另外的数据。
l 表(Table)
存放专门数据而建立和分配的空间。
l 表空间(Tablespace)
是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间。
l 回滚(Rollback)
将用户(或者说事务)改变的数据恢复到上一次所处的状态。
l 恢复信息(Undo Information)
记录用于恢复的信息称作恢复信息。回滚就是根据恢复信息内容进行恢复的。
§2.2 Oracle数据库结构
Oracle数据库结构是Oracle数据库系统的主要部分,它是一些可以看得见的软件,包括:
l Oracle 数据字典
l 表空间与数据文件
l Oracle实例(Instance)
§2.2.1 Oracle 数据字典
Oracle数据库的重要部分是数据字典。它存放有Oracle数据库所用的有关信息,对用户来说是一组只读的表。数据字典内容包括:
l 数据库中所有模式对象的信息,如表、视图、簇、及索引等。
l 分配多少空间,当前使用了多少空间等。
l 列的缺省值。
l 约束信息的完整性。
l Oracle用户的名字。
l 用户及角色被授予的权限。
l 用户访问或使用的审计信息。
l 其它产生的数据库信息。
数据库数据字典是一组表和视图结构。它们存放在SYSTEM表空间中。
数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。
§2.2.2 表空间与数据文件
简单说,表空间就是一个或多个数据文件(物理文件)的集合(逻辑文件)。一般有下面的表空间:
1)系统表空间(System tablespace)
是各种不同版本的Oracle必备的部分,存放Oracle系统的一些信息,一般只有一个SYSTEM表空间。
2)临时表空间(Temporary tablespace )
由于Oracle工作时经常需要一些临时的磁盘空间,这些空间主要用作查询时带有排序(Group by,Order by等)等算法所用,当用完后就立即释放,对记录在磁盘区的信息不再使用,因此叫临时表空间。一般安装之后只有一个TEMP临时表空间。
3)工具表空间(Tools tablespace)
用于保存Oracle数据库工具所需的数据库对象,这些工具表空间存放在工作时所用的专用表。旧的Oracle版本无此表空间。安装之后的工具表空间是Tools。
4)用户表空间(Users tablespace)
用于存放一些实验例子用的空间,当然也可以用于存放应用系统的数据。旧版本无Users表空间。现在的用户表空间为 USERS 。
5)数据及索引表空间
存放数据及索引的表空间,Oracle7以后都提倡在应用系统中,特别是具有大量数据的系统,要把数据和索引分开存放在不同的分区中,以便提高查询速度。在安装后索引表空间可能是INDX。数据表空间就是USERS。
6)回滚段表空间(Rollback Segment)
Oracle数据库系统在运行Insert、Update、Delete时都需要一个磁盘空间来存放恢复信息(Undo Information),以便在进行恢复时能将原来信息读出来。安装后的回滚段表空间是RBS表空间。数据库管理员也可根据应用的需要建立另外的回滚段表空间。
Oracle 以表空间来存储逻辑数据并 以物理数据相连。如图:
Tablespace 1 Tablespace 2
数据库被分成一个或多个逻辑部件称作表空间。而表空间又被分成称作段(segment)的逻辑部件。这些段再细分就叫扩展(extents)。
§2.2.3 Oracle实例
Oracle实例(Instance)是由一组后台进程和内存结构组成。每个运行的数据库系统都与实例有关。所以,有时称Oracle实例为数据库操作系统。下面是Oracle实例的解释。
Oracle 进程
Oracle有两种类型的进程: 服务器进程和后台进程(server processes and background processes)。
服务器进程
Oracle 服务器进程是处理用户与实例连接的事务。任务是:
l 分析和执行应用所发出的SQL语句。
l 从数据文件读必要的数据到SGA区的共享数据区。
l 返回必要信息给应用。
后台进程
Oracle系统使用一些附加的进程来处理系统的必须的工作。这些进程叫后台进程:
l 数据库写 (DBW0 或DBWn)
l 日志写 (LGWR)
l 检测点 (CKPT)
l 系统监视 (SMON)
l 进程监视 (PMON)
l 归档 (ARCn)
l 恢复 (RECO)
l 锁(LCK0)
l 工作队列 (SNPn)
l 队列监视 (QMNn)
l 发布(Dispatcher) (Dnnn)
l 服务器 (Snnn)
Oracle 的内存结构(SGA)
SGA 结构为:
l 数据高速缓冲区
l 重做日志缓冲区
l 共享池
l 大的共享池(可选)
l 数据字典缓冲区
l 其它数据缓冲区
§2.3 Oracle数据库文件
ORACLE 数据库是一个复杂的数据库操作系统,由一系列部件组成,主要有:1)初始化参数文件、2)数据文件、3)控制文件、4)日志文件等。
§2.3.1 初始化参数文件
初始化参数文件(initialization parameter file) INITsid.ORA,是 ORALE RDBMS 主要的配置点,它是配置参数和数值的集合。每一个参数值都控制或修改数据库和实例的某个方面。 早期的版本把参数都写在 initsid.ora 文件中,但在ORACLE8 之后,多数参数已不在该文件中出现,需修改这些参数时只能在SQL>下用 SET SESSION 或 SET SYSTEM 来进行。 查看系统参数可用。例如:
SQL>select * from v$parameter;
来列出。
Oracle初始化参数文件是一个可以编辑的文本文件。它是在数据库实例启动时被访问,从而得到数据文件、日志文件、控制文件等的路径,此外,初始化参数文件还提供实例所用的参数等。
初始化参数文件 INITsid.ORA 参见 附录 。
§2.1 术语
l 数据库块(BLOCK)
ORACLE 数据库中的最小存储和处理单位,包含块本身的头信息数据或PL/SQL代码。
ORACLE 块的大小是可以在安装时选择“自定义安装”来指定,也可以在CREATE DATABASE创建数据库实例时指定。其最小为2K,最大可达为64K。
l 瓶颈(Bottleneck)
指限制系统性能的部件。
l 面向对象的关系数据库
具有关系数据库的全部功能,同时又支持面向对象的数据库,称作面向对象关系数据库系统。Oracle7是一种功能完备的关系数据库系统;oracle8是一种面向对象的关系数据库系统。
l 客户/服务器结构(Client/Server)
有客户机、服务器、网络三要素的结构,客户机(PC机)通过网络与服务器相连和工作。
l 胖客户机(Fat Client)
一般的Client/Server结构中的客户机均为胖客户机。因为这些客户机需要配置较高的设备,如内存、硬盘、主频、CD_ROM等。
l 瘦客户机(Thin Client)
也称作NC(网络计算机),是一种内存配置小(过去指一般只有4M,现无法定义),无硬盘,只有处理心片的处理机。
l 数据在线分析处理(OLAP)
是一种能以快速、交互、方便的方式洞察数据情况的技术。如Oracle Express,Cognos(加拿大)的Power Play, Business Objects公司的Business Object 等。
l 多线程(MTS)
一个用户可以同时运行多个程序对数据库进行访问,比如Visual C/C++可以提供同时启动多个进程,而Visual Basic则不能。
l 数据仓库(Data Warehouse)
支持大量数据信息存储的叫做支持数据仓储或数据仓库。当把几个小型数据库集成为一个大型数据库,并为一个较广泛的组织服务时,如果该数据库存储历史数据,提供决策支持,提供数据汇总,提供只读数据,并且实质上充当所有向它提供数据的相关成品数据库的数据接收器,那么它通常被叫做数据仓库。
l 实例(Instance)
是访问Oracle数据库所需的一部分计算机内存和辅助处理后台进程。
l 对象(Objects)
是实现世界实体的软件表示,如表、索引、视图、同义词、过程等。
l 数据库文件(Datafile)
Oracle系统中用于存放数据(应用系统数据)的文件。(<<Oracle8初学者指南>>P14中的例子不准确,容易误导读者)。
l 控制文件(Control File)
Oracle中存放系统用的一些数据的文件。如数据文件的路径及文件名,初始化文件路径及 文件名等都存放在控制文件中。
l 日志文件(Logs File)
也叫事务记录文件,该文件记录有事物对数据库进行的一切修改操作或事务。
l DBA(Database administrator-数据库管理员)
是管理数据库系统的技术工具或人员,在完备的数据库系统中都提供DBA功能。
l 灰数据块(Dirty data block)
存放在内存中的原始数据已被修改,而修改后的数据还未写入数据库中。
l 热数据块(Hot data block)
存放着那些经常被修改数据叫热数据块。
l LRU(Least Recently Used-最近最少用)
Oracle系统使用的一种算法,对于在内存中但最近又不用的数据块(内存块)叫做LRU,Oracle会根据那些数据属于LRU而将其移出内存而腾出空间来加载另外的数据。
l 表(Table)
存放专门数据而建立和分配的空间。
l 表空间(Tablespace)
是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间。
l 回滚(Rollback)
将用户(或者说事务)改变的数据恢复到上一次所处的状态。
l 恢复信息(Undo Information)
记录用于恢复的信息称作恢复信息。回滚就是根据恢复信息内容进行恢复的。
§2.2 Oracle数据库结构
Oracle数据库结构是Oracle数据库系统的主要部分,它是一些可以看得见的软件,包括:
l Oracle 数据字典
l 表空间与数据文件
l Oracle实例(Instance)
§2.2.1 Oracle 数据字典
Oracle数据库的重要部分是数据字典。它存放有Oracle数据库所用的有关信息,对用户来说是一组只读的表。数据字典内容包括:
l 数据库中所有模式对象的信息,如表、视图、簇、及索引等。
l 分配多少空间,当前使用了多少空间等。
l 列的缺省值。
l 约束信息的完整性。
l Oracle用户的名字。
l 用户及角色被授予的权限。
l 用户访问或使用的审计信息。
l 其它产生的数据库信息。
数据库数据字典是一组表和视图结构。它们存放在SYSTEM表空间中。
数据库数据字典不仅是每个数据库的中心。而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。
§2.2.2 表空间与数据文件
简单说,表空间就是一个或多个数据文件(物理文件)的集合(逻辑文件)。一般有下面的表空间:
1)系统表空间(System tablespace)
是各种不同版本的Oracle必备的部分,存放Oracle系统的一些信息,一般只有一个SYSTEM表空间。
2)临时表空间(Temporary tablespace )
由于Oracle工作时经常需要一些临时的磁盘空间,这些空间主要用作查询时带有排序(Group by,Order by等)等算法所用,当用完后就立即释放,对记录在磁盘区的信息不再使用,因此叫临时表空间。一般安装之后只有一个TEMP临时表空间。
3)工具表空间(Tools tablespace)
用于保存Oracle数据库工具所需的数据库对象,这些工具表空间存放在工作时所用的专用表。旧的Oracle版本无此表空间。安装之后的工具表空间是Tools。
4)用户表空间(Users tablespace)
用于存放一些实验例子用的空间,当然也可以用于存放应用系统的数据。旧版本无Users表空间。现在的用户表空间为 USERS 。
5)数据及索引表空间
存放数据及索引的表空间,Oracle7以后都提倡在应用系统中,特别是具有大量数据的系统,要把数据和索引分开存放在不同的分区中,以便提高查询速度。在安装后索引表空间可能是INDX。数据表空间就是USERS。
6)回滚段表空间(Rollback Segment)
Oracle数据库系统在运行Insert、Update、Delete时都需要一个磁盘空间来存放恢复信息(Undo Information),以便在进行恢复时能将原来信息读出来。安装后的回滚段表空间是RBS表空间。数据库管理员也可根据应用的需要建立另外的回滚段表空间。
Oracle 以表空间来存储逻辑数据并 以物理数据相连。如图:
Tablespace 1 Tablespace 2
数据库被分成一个或多个逻辑部件称作表空间。而表空间又被分成称作段(segment)的逻辑部件。这些段再细分就叫扩展(extents)。
§2.2.3 Oracle实例
Oracle实例(Instance)是由一组后台进程和内存结构组成。每个运行的数据库系统都与实例有关。所以,有时称Oracle实例为数据库操作系统。下面是Oracle实例的解释。
Oracle 进程
Oracle有两种类型的进程: 服务器进程和后台进程(server processes and background processes)。
服务器进程
Oracle 服务器进程是处理用户与实例连接的事务。任务是:
l 分析和执行应用所发出的SQL语句。
l 从数据文件读必要的数据到SGA区的共享数据区。
l 返回必要信息给应用。
后台进程
Oracle系统使用一些附加的进程来处理系统的必须的工作。这些进程叫后台进程:
l 数据库写 (DBW0 或DBWn)
l 日志写 (LGWR)
l 检测点 (CKPT)
l 系统监视 (SMON)
l 进程监视 (PMON)
l 归档 (ARCn)
l 恢复 (RECO)
l 锁(LCK0)
l 工作队列 (SNPn)
l 队列监视 (QMNn)
l 发布(Dispatcher) (Dnnn)
l 服务器 (Snnn)
Oracle 的内存结构(SGA)
SGA 结构为:
l 数据高速缓冲区
l 重做日志缓冲区
l 共享池
l 大的共享池(可选)
l 数据字典缓冲区
l 其它数据缓冲区
§2.3 Oracle数据库文件
ORACLE 数据库是一个复杂的数据库操作系统,由一系列部件组成,主要有:1)初始化参数文件、2)数据文件、3)控制文件、4)日志文件等。
§2.3.1 初始化参数文件
初始化参数文件(initialization parameter file) INITsid.ORA,是 ORALE RDBMS 主要的配置点,它是配置参数和数值的集合。每一个参数值都控制或修改数据库和实例的某个方面。 早期的版本把参数都写在 initsid.ora 文件中,但在ORACLE8 之后,多数参数已不在该文件中出现,需修改这些参数时只能在SQL>下用 SET SESSION 或 SET SYSTEM 来进行。 查看系统参数可用。例如:
SQL>select * from v$parameter;
来列出。
Oracle初始化参数文件是一个可以编辑的文本文件。它是在数据库实例启动时被访问,从而得到数据文件、日志文件、控制文件等的路径,此外,初始化参数文件还提供实例所用的参数等。
初始化参数文件 INITsid.ORA 参见 附录 。
§2.3.2 数据文件
用于存放所有数据库的数据文件,Oracle安装过程中自动建立多个必要的数据文件。这些数据文件用于存放Oracle系统的基本数据。在应用系统开发过程中,我们可根据需要另建立一些数据文件。
如果数据文件按它们存放的数据类型来分的话,可以分为:
l 用户数据
存放应用系统的数据为用户数据。
l 系统数据
管理用户数据和数据库系统本身的数据,如数据字典,用户建立的表的名字,类型等都记录在系统数据中。
§2.3.3 控制文件
控制文件是由Oracle数据库实例在启动时被访问的内部二进制文件,它们所存放的路径由参数文件的control_files=参数来确定。
Oracle一般有两个或更多的控制文件,每个控制文件记录有相同的信息,在数据库运行中如果某个控制文件出错时,Oracle会自动使用另外一个控制文件。当所有的控制文件都损坏时系统将不能工作。
l Oracle数据库至少有一个控制文件;
l 一般数据库系统安装完成后,自动创建两个以上控制文件;
l 为了安全一般建议创建多个控制文件;
l 控制文件可用下面命令查到:
select name,value from v$parameter where name like 'control_files';
§2.3.4 重做日志文件
重做日志文件是Oracle系统中一个很重要的文件。特点是:
l 重做日志是Oracle的日记帐,负责记录所有用户对象或系统变更的信息;
l 安装完成后有多个重做日志文件,它们是几个分为一组,组内的重做日志文件大小要一样;
l 为了使系统性能更好可以在创建多重做日志文件组;
l 重做日志文件可以名下面命令查到:
select * from v$logfile;
§2.3.5 其它支持文件
除了上面的三类文件外,还有:
l Sqlnet.ora文件;
l Tnsnames.ora文件;
l Listener.ora文件等。
§2.4 重做日志和重做日志工作模式
重做日志、日志文件及重做日工作模式是Oracle系统中很重要的概念,管理员要完全理解它们的原理和使用方法。下面只给简单的概念,有关的管理在另外章节给出。
§2.4.1 重做日志
Oracle所作的一切操作都记录在日志文件中,Oracle系统在工作当中并不是每作一条记录的修改就立即存盘(写入数据文件),而是只作修改记录,联机重做日志就保存所有这些改变的信息。当所有的修改最后写入数据文件时,所有的修改仍记录在联机重做日志中,这将有利于对这些事务记录进行恢复操作。但如果不是联机重做日志,则只能恢复部分近期的操作。
§2.4.2 重做日志工作模式
Oracle可以在两种模式之一来工作:
1)ARCHIVELOG模式(可恢复)
Oracle 一般至少有两个日志文件。它们轮流交替地被写入所作的一切修改信息。当系统设置为可恢复模式,Oracle自动将每次即将被覆盖(冲掉)的日志信息先作备份,然后再其上记录所修改的信息。这样的方式,就可以利用备份与恢复工作进行某时期的数据恢复。
2)NOARCHIVELOG模式(有限的恢复)
缺省情况下为NOARCHIVELOG,Oracle不保留旧的重做日志信息(可以在原来基础覆盖写入)。因此一般情况下不可恢复的。
§2.5 数据块、区间和段
§2.5.1 数据块(data block)
l Oracle的数据块也叫Oracle块;
l Oracle系统在创建表空间时将数据文件格式化成若干个Oracle块;
l 每个Oracle块是Oracle系统处理的最小单位;
l 块的大小在安装系统时确定,可以选择“自定义安装”来设置大小;
l 块的大小一旦确定下来就不能改动;
l 块的大小可以从2k至64k不等;
l 块的大小可以用下面命令查到:
select name,value from v$parameter where name like 'db_block_size';
§2.5.2 区间(extent)
l 分配给对象(如表)的任何连续块叫区间;
l 区间也叫扩展,因为当它用完已经分配的区间后,再有新的记录插入就必须在分配新的区间(即扩展一些块);
l 区间的大小由 next 决定;
l 一旦区间分配给某个对象(表、索引及簇),则该区间就不能再分配给其它的对象;
l 一个对象所用去多少区间可用下命令查到:
select segment_name,tablespace_name,count(*) from dba_extents
having count(*)>1 group by segment_name,tablespace_name;
§2.5.3 段(segment)
l 段是指占用数据文件空间的通称,或数据库对象使用的空间的集合;
l 段可以有表段、索引段、回滚段、临时段和高速缓存段等;
l 段使用同表空间中的若干Oracle块(可以位于不同数据文件中)。
例:
CREATE TABLE abc ( empno number(4),ename varchar2(20),sal number(9,2))
TABLESPACE user_data storage(initial 500k next 256k pctincrease 0);
1) 段被分配=初始区间=500k;
2) 当开始的500k用完后就再分配256k; 此时段=500k+256k;
3) 如果所分配的区间又用完后,就再分配256k, …
段(segment)、区间(extent)及块的关系(seg_ext_block)
用于存放所有数据库的数据文件,Oracle安装过程中自动建立多个必要的数据文件。这些数据文件用于存放Oracle系统的基本数据。在应用系统开发过程中,我们可根据需要另建立一些数据文件。
如果数据文件按它们存放的数据类型来分的话,可以分为:
l 用户数据
存放应用系统的数据为用户数据。
l 系统数据
管理用户数据和数据库系统本身的数据,如数据字典,用户建立的表的名字,类型等都记录在系统数据中。
§2.3.3 控制文件
控制文件是由Oracle数据库实例在启动时被访问的内部二进制文件,它们所存放的路径由参数文件的control_files=参数来确定。
Oracle一般有两个或更多的控制文件,每个控制文件记录有相同的信息,在数据库运行中如果某个控制文件出错时,Oracle会自动使用另外一个控制文件。当所有的控制文件都损坏时系统将不能工作。
l Oracle数据库至少有一个控制文件;
l 一般数据库系统安装完成后,自动创建两个以上控制文件;
l 为了安全一般建议创建多个控制文件;
l 控制文件可用下面命令查到:
select name,value from v$parameter where name like 'control_files';
§2.3.4 重做日志文件
重做日志文件是Oracle系统中一个很重要的文件。特点是:
l 重做日志是Oracle的日记帐,负责记录所有用户对象或系统变更的信息;
l 安装完成后有多个重做日志文件,它们是几个分为一组,组内的重做日志文件大小要一样;
l 为了使系统性能更好可以在创建多重做日志文件组;
l 重做日志文件可以名下面命令查到:
select * from v$logfile;
§2.3.5 其它支持文件
除了上面的三类文件外,还有:
l Sqlnet.ora文件;
l Tnsnames.ora文件;
l Listener.ora文件等。
§2.4 重做日志和重做日志工作模式
重做日志、日志文件及重做日工作模式是Oracle系统中很重要的概念,管理员要完全理解它们的原理和使用方法。下面只给简单的概念,有关的管理在另外章节给出。
§2.4.1 重做日志
Oracle所作的一切操作都记录在日志文件中,Oracle系统在工作当中并不是每作一条记录的修改就立即存盘(写入数据文件),而是只作修改记录,联机重做日志就保存所有这些改变的信息。当所有的修改最后写入数据文件时,所有的修改仍记录在联机重做日志中,这将有利于对这些事务记录进行恢复操作。但如果不是联机重做日志,则只能恢复部分近期的操作。
§2.4.2 重做日志工作模式
Oracle可以在两种模式之一来工作:
1)ARCHIVELOG模式(可恢复)
Oracle 一般至少有两个日志文件。它们轮流交替地被写入所作的一切修改信息。当系统设置为可恢复模式,Oracle自动将每次即将被覆盖(冲掉)的日志信息先作备份,然后再其上记录所修改的信息。这样的方式,就可以利用备份与恢复工作进行某时期的数据恢复。
2)NOARCHIVELOG模式(有限的恢复)
缺省情况下为NOARCHIVELOG,Oracle不保留旧的重做日志信息(可以在原来基础覆盖写入)。因此一般情况下不可恢复的。
§2.5 数据块、区间和段
§2.5.1 数据块(data block)
l Oracle的数据块也叫Oracle块;
l Oracle系统在创建表空间时将数据文件格式化成若干个Oracle块;
l 每个Oracle块是Oracle系统处理的最小单位;
l 块的大小在安装系统时确定,可以选择“自定义安装”来设置大小;
l 块的大小一旦确定下来就不能改动;
l 块的大小可以从2k至64k不等;
l 块的大小可以用下面命令查到:
select name,value from v$parameter where name like 'db_block_size';
§2.5.2 区间(extent)
l 分配给对象(如表)的任何连续块叫区间;
l 区间也叫扩展,因为当它用完已经分配的区间后,再有新的记录插入就必须在分配新的区间(即扩展一些块);
l 区间的大小由 next 决定;
l 一旦区间分配给某个对象(表、索引及簇),则该区间就不能再分配给其它的对象;
l 一个对象所用去多少区间可用下命令查到:
select segment_name,tablespace_name,count(*) from dba_extents
having count(*)>1 group by segment_name,tablespace_name;
§2.5.3 段(segment)
l 段是指占用数据文件空间的通称,或数据库对象使用的空间的集合;
l 段可以有表段、索引段、回滚段、临时段和高速缓存段等;
l 段使用同表空间中的若干Oracle块(可以位于不同数据文件中)。
例:
CREATE TABLE abc ( empno number(4),ename varchar2(20),sal number(9,2))
TABLESPACE user_data storage(initial 500k next 256k pctincrease 0);
1) 段被分配=初始区间=500k;
2) 当开始的500k用完后就再分配256k; 此时段=500k+256k;
3) 如果所分配的区间又用完后,就再分配256k, …
段(segment)、区间(extent)及块的关系(seg_ext_block)
发表评论
-
如何在Oracle中用PL/SQL产生随机数(转载)
2007-03-13 02:54 1338在Oracle提供的standard Package中,并没有 ... -
PL/SQL中调用Java源对象产生随机数
2007-03-13 02:53 879Oracle8i数据库的一个重要特点是在数据库引擎中包含了Ja ... -
sql plus 使用技巧(转载)
2007-03-13 02:52 1164作者:debuger ... -
Oracle中通过触发器来追踪用户的活动2
2007-03-11 16:31 1025用户活动报表 使用用 ... -
Oracle中通过触发器来追踪用户的活动1
2007-03-11 16:29 1082从Oracle8i开始,Oracle引入了特殊的触发器,这些触 ... -
教你在Oracle中启动脚本跟踪存储过程
2007-03-11 16:28 1040一、用脚本启动并设置跟踪的示例 我们可以用脚本进行跟 ... -
PLSQL单行函数和组函数详解
2007-03-11 14:25 1014函数是一种有零个或多 ... -
Oracle PL/SQL语言基础3
2007-03-11 14:22 1887循环控制 循环控制的基本形式是LOOP语句,LOO ... -
Oracle PL/SQL语言基础2
2007-03-11 14:20 1620LOB数据类型 LOB( ... -
Oracle PL/SQL语言基础1
2007-03-11 14:19 1263PL/SQL是ORACLE对标准数据 ... -
Oracle的翻页Sql语句
2007-03-11 14:13 1029StringBuffer pagingSelect = new ... -
Oracle数据库较好的重新启动步骤
2007-03-11 14:00 13541. 停应用层的各种程序. ... -
SQL*PLUS命令的使用大全(转载)
2007-01-03 21:06 1130SQL*PLUS命令的使用大全 O ... -
理解和使用Oracle 8i分析工具-LogMiner (转载)
2007-01-03 21:04 988理解和使用Oracle 8i分析工具-LogMiner 理解 ...
相关推荐
oracle 概念和术语。。
### ORACLE基本概念和术语详解 #### 一、Oracle数据库系统结构概述 Oracle数据库系统作为一款功能强大且复杂的软件系统,在设计与管理方面需要具备一定的专业知识。为了更好地理解和使用Oracle数据库,本文将详细...
Oracle入门--Oracle的概念和术语,适合初学者,有个简单的认识。
通过深入理解Oracle数据库的概念和结构,可以更好地管理和优化数据库性能,满足企业对数据管理的高要求。无论是数据库设计、性能调优还是故障排除,熟悉Oracle数据库的底层机制都是至关重要的。
### Oracle的概念和术语 Oracle数据库系统作为一款复杂且强大的数据库管理系统,在企业和组织中扮演着至关重要的角色。要深入了解并高效地使用Oracle,首先必须掌握其基本概念与术语。本文将根据给定的内容概述...
Oracle数据库是全球广泛使用的大型关系型...综上所述,Oracle的概念和术语、基本知识、物理数据库结构以及逻辑结构构成了Oracle数据库管理的基础。深入了解并掌握这些内容,将有助于更好地使用和管理Oracle数据库。
Oracle数据库系统是软件开发领域中广泛使用的数据库管理系统,它提供了丰富的特性和功能,以支持复杂的应用系统。以下是对标题和描述中提及的一些关键...理解这些概念对于设计、开发和管理Oracle数据库系统至关重要。
Oracle EBS(Enterprise Business Suite,企业商务套件)是由甲骨文公司(Oracle)开发的一套集成的商业软件套件,它包含...这些术语和概念构成了Oracle EBS系统的基础,使得企业能够进行精细化的财务分析和决策制定。
该手册提供了对Oracle数据库系统的全面介绍,涵盖了数据库基础概念、架构、特性和应用程序开发的各个方面。 在数据库简介部分,手册可能提供了Oracle数据库的基本概念,解释了什么是数据库,以及Oracle数据库是如何...
"Oracle概念"这一主题深入探讨了Oracle数据库系统的基础知识和核心原理。以下是对Oracle数据库概念的详细解读: 1. **数据库架构**:Oracle数据库采用客户-服务器模型,包括数据库服务器、客户端应用程序以及网络...
2. **数据存储**:介绍Oracle的数据块、表空间、段、区和数据文件等概念,以及如何管理这些存储组件。 3. **数据库实例**:解释了SGA(系统全局区)和PGA(程序全局区)的构成,以及它们在数据库操作中的作用。 4....
oracle概念手册中文版(10gR2) oracle概念手册中文版(10gR2) oracle概念手册中文版(10gR2) oracle概念手册中文版(10gR2) oracle概念手册中文版(10gR2) oracle概念手册中文版(10gR2) oracle概念手册中文版(10gR2)
"Oracle概念手册中英文版"是一份极为重要的参考资料,它详细阐述了Oracle数据库系统的基础理论、架构和操作原理。这份手册分为中英文两个版本,适合不同语言背景的学习者,对于理解和掌握Oracle数据库的操作和管理...
正确理解和使用这些概念对于Oracle数据库的管理和维护至关重要。例如,了解数据库名和实例名的区别有助于在出现问题时快速定位原因;熟悉ORACLE_SID的作用则有助于正确配置环境变量,确保数据库能够正常启动和服务...
以上术语构成了Oracle EBS中财务管理模块的核心概念,深刻理解这些术语的含义及其应用场景,对于提升Oracle EBS系统的使用效率、优化财务管理流程以及增强财务数据分析能力至关重要。通过这些专业术语的学习,用户...