当前位置:文档之家› 表空间管理作业答案

表空间管理作业答案

表空间管理作业答案
表空间管理作业答案

表空间管理作业1

1、创建本地管理表空间test01,数据文件test01.dbf,初始大小8M,可以自动扩充,每次增加5M,最大大小100M。区的大小由系统自动分配,段的管理为手动。

Create tablespace test01

Datafile ‘d:\oracle\test\test01.dbf’size 8M

Autoextend on

Next 5M

Maxsize 100M

Extent management local autoallocate /可省略

Segment space management manual;

2、创建本地管理表空间test02,数据文件test02_1.dbf,初始大小1024K,允许自动扩充,每次扩充50M,最大大小无限制,数据文件test01_2.dbf,初始大小1M,不允许自动扩充。区的大小统一为2048K,段的管理为自动。

Create tablespace test02

Datafile ‘d:\oracle\test\test02_1.dbf’size 1024K

Autoextend on

Next 50M

Maxsize unlimited,

Datafile ‘d:\oracle\test\test02_2.dbf’size 1M

Autoextend off

Extent management local uniform size 2048K

Segment space management auto;

3、创建本地管理表空间indx,数据文件indx01.dbf,初始大小5M,允许自动扩充,每次扩充50M,最大大小1000M,区采用统一大小,使用系统默认值。

Create tablespace indx

Datafile ‘d:\oracle\test\indx01.dbf’size 5M

Autoextend on

Next 50M

Maxsize 1000M

Extent management local uniform Segment space management auto;

4、创建回滚表空间rbs,数据文件rbs01.dbf,初始大小256M。

Create undo tablespace rbs

Datafile ‘d:\oracle\test\rbs01.dbf size 256K;

5、创建本地管理临时表空间temps,数据文件temps01.dbf,初始大小80M,允许自动扩充,每次扩充50M,最大大小1000M。区统一大小16M;

Create temporary tablespace temps

tempfile ‘d:\oracle\test\temp01.dbf’size 80M

Autoextend on

Next 50M

Maxsize 1000M

Extent management local uniform size 16M;

6、创建大文件表空间big_images,数据文件big_images,初始大小1G,允许自动扩充。Create bigfile tablespace big_images

tempfile ‘d:\oracle\test\big_images.dbf’size 1G

Autoextend on ; 注:语句中加粗部分可以省略

表空间管理作业2一、按要求完成下列操作(需要写出具体的命令语句

1、将test01表空间脱机。

alter tablespace test01 offline;

2、将test02表空间设为只读。

alter tablespace test01 read only;

3、将test01表空间联机后,更名为test。

alter tablespace test01 online;

alter tablespace test01 rename to test;

4、删除test表空间及其所有内容。

Drop tablespace text including contents ;

5、删除indx表空间及其所有内容,同时删除其所对应的数据文件。

Drop tablespace indx including contents and datafile;

二、简述题

1、用图描述出数据库、表空间、数据文件、数据库对象之间的关系。

2、Oracle数据库表空间的分类及含义。

表空间分类

按构成文件分

大文件表空间:只能包含1个大文件

小文件表空间:可包含多个数据文件

按表空间用途分

系统表空间、撤销表空间、临时表空间

数据表空间、索引表空间等

按数据特性:永久表空间、临时表空间、撤销表空间

System表空间:Oracle数据库必须具备部分,用于存放表空间名称、表空间所包含的数据文件等管理数据库自身所需要的信息。

Sysaux表空间:系统表空间的辅助表空间,很多数据库组件把它做为存储数据的默认位置。还原表空间:用于事务的回滚和撤销的表空间。

临时表空间:用于存储数据库的临时表

用户表空间:用于存储用户的私有数据。

大文件表空间:只能包含一个大文件,但文件大小可以达到4GB个数据块。

Oracle临时表空间管理及清理策略

正常来说,在完成Select语句、create index等一些使用TEMP表空间的排序操作后,Oracle是会自动释放掉临时段a的。但有些有侯我们则会遇 到临时段没有被释放,TEMP表空间几乎满的状况,甚至是我们重启了数据库仍没有解决问题。这个问题在论坛中也常被网友问到,下面我总结 一下,给出几种处理方法。 法一、重启库 库重启时,Smon进程会完成临时段释放,TEMP表空间的清理操作,不过很多的时侯我们的库是不允许down的,所以这种方法缺少了一点的 应用机会,不过这种方法还是很好用的。 法二、Metalink给出的一个方法 修改一下TEMP表空间的storage参数,让Smon进程观注一下临时段,从而达到清理和TEMP表空间的目的。 SQL>alter tablespace temp increase 1; SQL>alter tablespace temp increase 0; 法三、我常用的一个方法,具体内容如下: 1、使用如下语句a查看一下认谁在用临时段 SELECT username, sid, serial#, sql_address, machine, program, tablespace, segtype, contents

FROM v$session se, v$sort_usage su WHERE se.saddr=su.session_addr 2、那些正在使用临时段的进程 SQL>Alter system kill session 'sid,serial#'; 3、把TEMP表空间回缩一下 SQL>Alter tablespace TEMP coalesce; 法四、使用诊断事件的一种方法,也是被我认为是“杀手锏”的一种方法 1、确定TEMP表空间的ts# SQL>select ts#, name from sys.ts$ ; TS# NAME ----------------------- 0 SYSYEM 1 RBS 2 USERS 3* TEMP 4 TOOLS 5 INDX 6 DRSYS 2、执行清理操作

oracle表空间管理

实验一数据文件和表空间的管理 【开发语言及实现平台或实验环境】 Oracle10g 【实验目的】 (1)熟悉ORACLE的环境,学习使用SQL*Plus与ORACLE进行交互;(2)掌握连接数据库以及断开连接的方法; (3)掌握数据文件和控制文件的管理基本命令 (4)掌握表空间管理的基本命令 【实验原理】 1.SQL*Plus命令

2.数据文件的管理 (1)创建数据文件 数据文件依附于表空间而存在,创建数据文件就是向表空间添加文件 在创建数据文件时应该根据文件数据量的大小确定文件的大小以及文件的增长方式。 语法: ALTER TABLESPACE…ADD DA TAFILE ALTER TABLESPACE…ADD TEMPFILE 例:向ORCL数据库的USERS表空间中添加一个大小为10 MB的数据文件。 ALTER TABLESPACE USERS ADD DA TAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADA TA\ORCL\USERS02.DBF' SIZE 10M; (2)修改数据文件大小 创建后修改数据文件为自动增长: AUTOEXTEND ON NEXT …MAXSIZE…|UNLIMITED 手工改变数据文件的大小 ALTER DA TABASE DA TAFILE…RESIZE… 例:为ORCL数据库的USERS表空间添加一个自动增长的数据文件。 ALTER TABLESPACE USERS ADD DA TAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADA TA\ORCL\USERS03.DBF' SIZE 10M AUTOEXTEND ON NEXT 512K MAXSIZE 50M; 例:修改ORCL数据库USERS表空间的数据文件USERS02.DBF为自动增长方式。ALTER DA TABASE DA TAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADA TA\ORCL\USERS02.DBF ' AUTOEXTEND ON NEXT 512K MAXSIZE UNLIMITED; 例:取消ORCL数据库USERS表空间的数据文件USERS02.DBF的自动增长方式。ALTER DA TABASE DA TAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADA TA\ORCL\USERS02.DBF ' AUTOEXTEND OFF; 例:将ORCL数据库USERS表空间的数据文件USERS02.DBF大小设置为8 MB 。ALTER DA TABASE DA TAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADA TA\ORCL\USERS02.DBF' RESIZE 8M; (3)删除数据文件 删除某个表空间中的某个空数据文件 ALTER TABLESPACE…DROP DA TAFILE 例:删除USERS表空间中的数据文件USERS003.DBF。 ALTER TABLESPACE USERS DROP DA TAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADA TA\ORCL\USERS003.DBF'; 3.表空间的管理

Oracle表空间操作详解

Oracle表空间操作详解 1.创建表空间: createtablespacedatafile '' size autoextend on next maxsize eg: createtablespace sales datafile 'c:\1.txt' size 10m autoextend on next 1m maxsize 100m 2.为表空间增加数据文件: altertablespace add datafile 'filepath' size autoextend on next maxsizefilemaxsize[unlimited]; eg: altertablespace sales datafile 'c:\2.txt' size 10m autoextend on next 1m maxsize unlimited 3.调整表空间: alter database datafile 'filepath' resize ;--重置表空间的大小 eg: alter database datafile 'c:\2.txt' resize 10m 在实际使用中我们经常会遇到oracle某个表空间占用了大量的空间而其中的数据量却只占用了少量空间,此时我们可以用ALTER DATABASE DATAFILE '***.dbf' RESIZE nnM的命令来收缩表空间,但在收缩的过程中会遇到ora-03297错误,表示在所定义的空间之后有数据存在,不能收缩,此时的解决办法有: (1). 先估算该表空间内各个数据文件的空间使用情况: SQL>select file#,name from v$datafile;

实验一表空间管理

实验一表空间管理 一、实验目的 (1)了解表空间的区、段管理方式; (2)熟练掌握表空间状态查询、表空间创建、修改、扩展、删 除等基本操作; (3)掌握数据文件的创建方法; (4)了解数据文件与表空间的关系; 二、主要仪器设备 Windows系统、Oracle 10g、SQL*PLUS。 三、实验内容 表空间是Oracle数据库的逻辑概念,用户创建的对象在逻辑上都存放在表空间里,所以用户的活动是在表空间之上的。管理表空间,可以分为创建、修改和删除。 四、操作方法与实验步骤 (1)使用autoallocate方式创建表空间: (2)使用uniform区分配方式创建表空间:

(3)使用auto段管理方式创建数据库: (4)创建临时表空间及撤销表空间: (5)修改表空间: 增加文件: 修改大小: 修改状态使其脱机: (6)删除表空间: (7)查询创建的某些表空间的信息:

五、问题解答 (1)在创建表空间时,其对应的物理数据文件需要提前创建吗? 新建表空间时,不需要提前创建对应的数据文件,而且也不能单独创建不属于任何表空间的数据文件。一个数据文件一旦创建成功,那么它必定对应一个表空间。 (2)一个表空间可以有多个数据文件吗?一个数据文件可以存放多个表空间吗? 在例子中我们可以看到,一个表空间可以对应多个数据文件,但是一个数据文件只能属于一个表空间。 六、思考题 (1)SYSYTEM表空间、SYSAUX表空间、TEMP表空间、UNDOTBS1表空间可以被脱机吗? 在数据库打开后,需要用到system、sysaux系统表空间,因此它们不可以被脱机,否则数据库不可用。TEMP表空间也不可以被脱机,UNDOTBS1可以被设置为脱机。

Oracle存储空间管理及应用方案

Oracle存储空间管理及应用 摘要:本文详细介绍了Oracle存储架构及其存储体系的管理和应用,包括表空间、回滚段、临时表等,还对其在管理和应用时常见的错误进行了分析探讨 主题词:Oracle技术表空间数据文件回滚段临时表错误 一、引言 数据库空间的有效使用和维护不仅是数据库管理的重要工作,也是大多数开发人员所关心的内容,它直接关系到数据库性能的发挥。 Oracle提供了不少方法用于数据空间的使用、监控和维护,同时也在各版本中陆续对这方面的功能进行了增强,目的在于简化这方面工作的复杂度,提高应用的运行效率。 本文希望通过系统地介绍这方面的有关概念,让大家能更好地规划使用数据空间,正确使用Oracle提供的有关功能特性,提高应用的执行效率。 二、O racle数据库的存储体系及有关概念 2.1 Oracle数据库的逻辑结构 从应用者的角度来考察数据库的组成。自下向上,数据库的逻辑结构共有6层:

2.2 Oracle数据库的存储结构 数据库的存储结构指逻辑结构在物理上的实现,共有3层 其中: 数据文件:用于存放所有的数据,以DBF为扩展名。 日志文件:记录了对数据库进行的所有操作,以LOG为扩展名。 控制文件:记录了数据库所有文件的控制信息,以CTL为扩展名。 综上,Oracle数据库的数据存储空间在逻辑上分为多个表空间,每个表空间由系统中的一个或多个物理数据文件构成;Oracle存储数据的基本单位是块,其大小在建库时由DB_BLOCK_SIZE参数确定,一个或多个连续的块构成一个区间(EXTENT),它作为数据对象存储的基本单位来使用。在Oracle中,每个基本数据对象使用的空间称为段(SEGMENT),段存放在唯一的表空间上,每个段实际上是一系列区片(更为准确地是数据块)的集合。每个简单数据对象对应一个段;对于分区对象如分区表、索引,则每个(子)

Oracle表空间和数据文件的管理

第六章表空间和数据文件的管理 6.1 Oracle引入逻辑结构的目的 Oracle数据库管理系统并没有像不少其它数据库管理系统那样直接地操作数据文件,而是引入一组逻辑结构。如图6-1所示。 图6-1 图6-1的虚线左边为逻辑结构,右边为物理结构。与计算机原理或计算机操作系统中所讲的有些不同,在Oracle数据库中,逻辑结构为Oracle引入的结构,而物理结构为操作系统所拥有的结构。 曾有不少学生问过我同样的一个问题,那就是Oracle为什么要引入逻辑结构呢? 首先可能是为了增加Oracle的可移植性。Oracle公司声称它的Oracle数据库是与IT 平台无关的,即在某一厂家的某个操作系统上开发的Oracle数据库(包括应用程序等)可以几乎不加修改地移植到另一厂家的另外的操作系统上。要做到这一点就不能直接操作数据文件,因为数据文件是跟操作系统相关的。 其次可能是为了减少Oracle从业人员学习的难度。因为有了逻辑结构Oracle的从业人员就可以只对逻辑结构进行操作,而在所有的IT平台上逻辑结构的操作都几乎完全相同,至于从逻辑结构到物理结构的映射(转换)是由Oracle数据库管理系统来完成的。 6.2 Oracle数据库中存储结构之间的关系 其实图6-1类似于一个Oracle数据库的存储结构之间关系的实体-关系图。如果读者学过实体-关系模型(E-R模型)的话,从图6-1中可以很容易地得到Oracle数据库中存储结构之间的关系。为了帮助那些没有学过E-R模型的读者理解图6-1,也是为了帮助那些

学过但已经忘的差不多了的读者恢复一下记忆,在下面对E-R模型和图6-1给出一些简单的解释。 在图6-1中,园角型方框为实体,实线表示关系,单线表示一的关系,三条线(鹰爪)表示多的关系。于是可以得到: 每个数据库是由一个或多个表空间所组成(至少一个)。 每个表空间基于一个或多个操作系统的数据文件(至少一个)。 每个表空间中可以存放有零个或多个段(Segment)。 每个段是由一个或多个区段(Extent)所组成。 每个区段是由一个或多个连续的Oracle数据块所组成。 每个Oracle数据块是由一个或多个连续的操作系统数据块所组成。 每个操作系统数据文件是由一个或多个区段(Extent)所组成。 每个操作系统数据文件是由一个或多个操作系统数据块所组成。 有关段,区段,和Oracle数据块等我们在接下来的章节中要详细地介绍。 6.3 表空间和数据文件之间的关系及表空间的分类 通过前面的讨论可知:Oracle将数据逻辑地存放在表空间里,而物理地存放在数据文件里。表空间(Tablespaces)在任何一个时刻只能属于一个数据库,但是反过来并不成立,因为一个数据库一般都有多个表空间。每个表空间都是由一个或多个操作系统的数据文件所组成,但是一个操作系统的数据文件只能属于一个表空间。 表空间可以被进一步划分成一些更小的逻辑存储单位。在一个Oracle数据库中,每个数据文件(Data files)可以而且只能属于一个表空间和一个数据库。数据文件实际上是存储模式对象数据的一个容器/仓库。 在一个Oracle数据库中一般有两类表空间,他们是系统(SYSTEM)表空间和非系统(Non-SYSTEM)表空间。 系统(SYSTEM)表空间是与数据库一起建立的,在系统表空间中存有数据字典,在系统表空间中还包含了系统还原(回滚)段。虽然在系统表空间中可以存放用户数据,但考虑到Oracle系统的效率和管理上的方便,在系统表空间上不应该存放任何用户数据。非系统(Non-SYSTEM)表空间可以由数据库管理员创建,在非系统表空间中存储一些单独的段,这些段可以是用户的数据段,索引段,还原段,和临时段等。引入非系统表空间可以方便磁盘空间的管理,也可以更好地控制分配给用户磁盘空间的数量。引入非系统表空间还可以将静态数据和动态数据有效地分开,也可以按照备份的要求将数据分开存放。使用如下的命令创建一个非系统表空间:CREATE TABLESPACE表空间名 [DATAFILE子句] [MINIMUM EXTENT 正整数[K|M]] [BLOCKSIZE正整数[K]] [LOGGING|NOLOGGING] [DEFAULT 存储子句] [ONLINE|OFFLINE] [PERMANENT|TEMPORARY] [区段管理子句] [段管理子句] 在这里对以上命令中的一些子句和选项给出进一步的解释: 表空间名:所要创建的表空间名。

Oracle tablespace (表空间)的创建、删除、修改、扩展及检查等

Oracle tablespace (表空间)的创建、删除、修改、扩展及检查等 oracle 数据库表空间的作用 1.决定数据库实体的空间分配; 2.设置数据库用户的空间份额; 3.控制数据库部分数据的可用性; 4.分布数据于不同的设备之间以改善性能; 5.备份和恢复数据。 --oracle 可以创建的表空间有三种类型: 1.temporary: 临时表空间,用于临时数据的存放; create temporary tablespace "sample"...... 2.undo : 还原表空间. 用于存入重做日志文件. create undo tablespace "sample"...... 3.用户表空间: 最重要,也是用于存放用户数据表空间 create tablespace "sample"...... --注:temporary 和undo 表空间是oracle 管理的特殊的表空间.只用于存放系统相关数据. --oracle 创建表空间应该授予的权限 1.被授予关于一个或多个表空间中的resource特权; 2.被指定缺省表空间; 3.被分配指定表空间的存储空间使用份额; 4.被指定缺省临时段表空间。 select tablespace_name "表空间名称",status "状态",extent_management "区管理方式",allocation_type "磁盘扩展管理方式",segment_space_management "段管理方式" from dba_tablespaces; --查询各个表空间的区、段管理方式 --1、建立表空间 --语法格式: create tablespace 表空间名

Oracle用户管理、表空间、临时表空间、索引学习

一、用户的创建和管理 创建和删除用户是Oracle用户管理中的常见操作,但这其中隐含了Oracle数据库系统的系统权限与对象权限方面的知识。掌握还Oracle用户的授权操作和原理,可以有效提升我们的工作效率。Oracle数据库的权限系统分为系统权限与对象权限。系统权限( Database System Privilege )可以让用户执行特定的命令集。例如,CREATE TABLE权限允许用户创建表,GRANT ANY PRIVILEGE 权限允许用户授予任何系统权限。对象权限( Database Object Privilege )可以让用户能够对各个对象进行某些操作。例如DELETE权限允许用户删除表或视图的行,SELECT权限允许用户通过select从表、视图、序列(sequences)或快照(snapshots)中查询信息。 每个Oracle用户都有一个名字和口令,并拥有一些由其创建的表、视图和其他资源。Oracle 角色(role)就是一组权限(privilege)(或者是每个用户根据其状态和条件所需的访问类型)。用户可以给角色授予或赋予指定的权限,然后将角色赋给相应的用户。一个用户也可以直接给其他用户授权。 1、创建用户 Oracle内部有两个建好的用户:SYSTEM和SYS。用户可直接登录到SYSTEM用户以创建其他用户,因为SYSTEM具有创建别的用户的权限。在安装Oracle时,用户或系统管理员首先可以为自己建立一个用户。例如: create user user01 identified by u01; 该命令还可以用来设置其他权限,详细情况参见自学资料。要改变一个口令,可以使用alter user命令: alter user user01 identified by usr01; 现在user01的口令已由“u01”改为“usr01”。 2、删除用户 删除用户,可以使用drop user命令,如下所示: drop user user01; 如果用户拥有对象,则不能直接删除,否则将返回一个错误值。指定关键字CASCADE,可删除用户所有的对象,然后再删除用户。下面的例子用来删除用户与其对象: drop user user01 CASCADE; 3、三种标准角色

表外业务的特点及其风险管理

表外业务的特点及其风险管理2008年的全球金融危机给全球银行业的经营管理再次敲响了警钟,表外业务的泛滥和高风险成为导致这次金融危机的重要诱因。近年来,国内银行业表外业务发展很快,理财产品、代客衍生产品、国际结算等表外业务新产品层出不穷,如何认识表外业务的风险特征,采取有针对性地管理措施,是中国银行业健康发展面临的重要课题。一、表外业务的内涵表外业务(off-balancesheetactivities)中的“ 表” 指“ ,的是资产负债表,之所以称其为表外” 是由于这些业务按照传统的会计理论无法在资产负债表内核算。由于会计与法律制度不同,表外业务的定义和范围存在或大或小的差异。(一)巴塞尔委员会对表外业务的定义按照巴塞尔委员会所确定的标准,商业银行表外业务分为广义和狭义两种:狭义的表外业务是指构成银行或有资产、或有负债,在一定条件下可以转化为表内资产或负债的业务;广义的表外业务泛指银行从事的所有不在资产负债表中反映的业务,包括狭义的表外业务及结算、代理等金融服务类表外业务。(二)人民银行对表外业务的定义2000年11月9日,中国人民银行发布《商业银行表外业务风险管理指引》,将表外业务定义为“ 商业银行所从事的,按照现行的1会计准则不计入资产负债表内,不形成现实资产负债,但能改变损益的业务。具体包括担保类、承诺类和金融衍生交易三种类型的业务。” (三)表外业务和中间业务的区别,根据2001年中国人民银行发布《商业银行中间业务暂行规定》中间业务是指“ 不构成商业银行表内资产、表内负债,形成银行非利息收入的业务”,这一表述与表外业务的定义相似。二者的区别在于所涵盖的业务类别不同。人民银行规定,中间业务涵盖的业务类别不仅包含属于表外业务范围的担保、承诺和金融衍生交易三类交易,还包括支付结算、银行卡、代理、托管、咨询等银行完全不承担资金损失的手续费类业务。通过对国内外表外业务定义的对比,我们可以看出,我国商业银行的中间业务与巴塞尔委员会定义的广义表外业务的内容基本一致,而我国商业银行的表外业务即巴塞尔委员会定义的狭义的表外业务。而中间业务不仅包括有可能转换为表内资产、负债的表外业务,还包括银行不承担资金损失的手续费类业务。本文提到的表外业务区别于银行不承担任何资金损失的中间业务,主要指商业银行的或有资产和或有负债。二、表外业务快速兴起的原因(一)避险需要(二)规避监管(三)市场竞争(四)利润追求 2 (五)国内三、表外业务的特点及风险特征四、国内商业银行对于表外业务的认识误区五、加强表外业务的思考和建议二、商业银行表外业务兴起的背景及原因表外业务是社会经济和信用关系发展到一定阶段的必然产物,是商业银行适应市场经济发展的必然结果。从某种程度上讲,表外业务发展是商业银行现代化的一个重要标志,尤其是上个世纪70 年代以来,基于外部经营环境的变化和自身管理水平的提升,商业银行纷纷加快业务创新步伐,其中表外业务的快速发展更引人注目,表外业务已成为西方商业银行与资产业务和负债业务并驾齐驱的三大支柱之一。1、金融市场的发展及融资方式的变化。金融市场的迅速发展,导致直接融资规模不断扩大,而通过商业银行实现的间接融资规模日趋缩小,商业银行传统生存模式受到严峻挑战,迫使商业银行在表外从事大量非传统银行业务,如从事有价证券发行,资产证券化等业务。由于直接融资活动的扩大,各种长短期有价证券在发行、转让及债权债务的结算等环节上的违约风险不断加大,从而客观上产生了大量信3用担保的需求,这也促成了商业银行贷款承诺、信用担保等表外业务的发展。2、布雷顿森林体系的解体及金融自由化。1973 年布雷顿森林体系的瓦解带来了全球性货币金融活动的自由化。由于浮动汇率、浮动利率取代了固定汇率和固定利率,导致包括商业银行在内的各经济主体,日益受利率、汇率波动的影响,经营活动的风险不断扩大,特别是对商业银行的资产负债业务及其经营管理活动的影响尤为严重。为了规避市场风险,作为新兴风险管理手段的以期货、期权和互换为主体的金融衍生工具迅速发展起来。3、避免金融资本管制。1988 年,巴塞尔委员会提出了商业银行的资本充足率最低应达到8的要求。为了达到

ORACLE的逻辑存储管理

ORACLE的逻辑存储管理 Oracle在逻辑存储上分4个粒度:表空间Tablespace、段Segment、盘区Extent、块Block。 Oracle数据库在逻辑上是由多个表间组成的,表空间中存储的对象叫段,段由区组成,区是磁盘分配的最小单位。 每个区的大小是数据块大小的整数倍,区的大小可以不相同。 数据块是数据库中最小的I/O单位,同时也是内存数据缓冲区的单位,及数据文件存储空间单位。 一、数据库由一个或多个表空间组成; 二、表空间由一个或多个数据文件组成,一个表空间包含多个段; 三、段由一个或多个区组成(Oracle的分区表可以包括多个分区,每个分区都是一个独立的段);一个段对应唯一的表空间。 四、区是数据文件中一个连续的分配空间,由一个或多个块组成; 五、块是数据库中最小、最基本的单位,是数据库使用的最小的I/O单元。 一、块(Block) 数据块Block是Oracle存储数据信息的最小单位。 Oracle就是通过数据块来屏蔽不同操作系统存储结构的差异。无论是Windows环境,还是Unix/Linux环境,他们的操作系统存储结构和方式、甚至字符排列的方式都是不同的。Oracle利用数据块将这些差异加以屏蔽,全部数据操作采用对Block的操作,相当于是一

个层次的抽象。 Oracle所有对数据的操作和空间分配,实际上都是针对数据块Block的操作。我们从数据表中搜索出一行,实际中Oracle就会从内存缓冲区(或者硬盘)中读取到该行所在的数据块,再返回该数据块上的指定数据行。 数据块是有大小的,在一个数据库建立的时候,通过参数进行设置。(注意:Oracle数据库参数中,数据块大小的参数db_block_size 是建库之后不能进行修改的)。 数据库中每个块的大小都是相同的,而且所有的块都有相同的格式,由“块头+表目录+行目录+空闲空间+数据空间”组成。块头包含着块类型(比如是表块、还是索引块)的信息、磁盘上块的位置等信息。表目录(table directory),如果有的话,包含着此块中存储各行的表的信息(如果一个块中存有多个表中的数据)。行目录(row directory)包含着数据行的描述信息,它是一个指针数组,指示了每一行在数据块中的物理位置。块头、表目录、行目录统称为块开销(block overhead),是oracle原来统计、管理块本身的。剩下的两部分很简单,已经存有数据的就是数据空间,暂时没存的就是空闲空间。 数据块的大小是通过KB字节个数来指定的,默认为8KB。相关参数为db_block_size。 查看参数设置:show parameter db_block_size; 设置数据块的大小是依据不同类型的系统的。如果数据块设置比

ORACLE_UNDO表空间的管理总结

undo表空间的管理: 1、undo作用 2、undo管理模式 3、undo参数 4、undo表空间的建立删除 作用: 事务回退、事务恢复、读一致性、闪回数据 读一致性:用户看到的所有数据都是别人已经提交的或者是自己操作过但还没提交的 事务恢复、前滚:oracle重启时会恢复到没有commit的状态,系统监控进程读取undo表空间段头查找已提交事务,在日志文件中找到记录,然后实例恢复。 事务回退:用户可以用roolback回滚没有commit的数据 闪回(flash back):任何操作都会把数据的操作保存到undo,运用undo表空间的记录,来恢复近期的数据。9i以后版本才支持 管理模式: 现在版本一般用自动管理

新手最好自动管理 show parameter undo_m 参数中的undo_management 定义了是否自动管理。 show parameter undo_t 查看undo_tablespace参数指定用的是哪个表空间 undo表空间中的段分三种: 系统段----------系统表空间镜像数据 非系统段-----------非系统表空间的镜像数据 deferred段---------临时段---任何表空间脱机后,所有变化的数据存入undo临时段,当再次联机时在从undo写入 查看段: SQL> select * from v$rollname; USN NAME ---------- ------------------------------ 0 SYSTEM 1 _SYSSMU1$ 2 _SYSSMU2$ 3 _SYSSMU3$ 4 _SYSSMU4$ 5 _SYSSMU5$ 6 _SYSSMU6$ 7 _SYSSMU7$ 8 _SYSSMU8$ 9 _SYSSMU9$ 10 _SYSSMU10$ 其中0为系统段,其他为非系统段,分公有还是私有默认都是公有,oracle中至少要有一个非系统段。 查看文件状态 SQL> select status,enabled from v$datafile; 查看deferred段 select segment_name,segment_type from dba_segments where segment_type like '%defe%' 只有某个表空间脱机时,就会产生deferred段,一旦online后deferred段消失 参数: SQL> show parameter undo_ NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ undo_management string AUTO undo_retention integer 900 undo_tablespace string UNDOTBS1

Oracle表空间管理逻辑

表空间(Tablespace)——为数据库提供使用空间的逻辑结构,其对应物理结构是数据文件,一个表空间可以包含多个数据文件。本地管理表空间(Locally Managed Tablespace简称LMT)——8i以后出现的一种新的表空间的管理模式,通过本地位图来管理表空间的空间使用。字典管理表空间(Dictionary-Managed Tablespace简称DMT)——8i以前包括以后都还可以使用的一种表空间管理模式,通过数据字典管理表空间的空间。 本地化管理: 就是指Oracle不再利用数据字典表来记录Oracle表空间里面的区的使用状况,而是在每个表空间的数据文件的头部加入了一个位图区,在其中记录每个区的使用状况。每当一个区被使用,或者被释放以供重新使用时,Oracle都会更新数据文件头部的这个记录,反映这个变化。 本地化管理的表空间的创建过程: 语法:CREATE TABLESPACE 表空间名字 DATAFILE ’数据文件详细信息’ [EXTENT MANAGEMENT { LOCAL {AUTOALLOCATE | UNIFORM [SIZE INTETER [K|M] ] } } ] 关键字EXTENT MANAGEMENT LOCAL 指定这是一个本地化管理的表空间。对于系统表空间,只能在创建数据库的时候指定EXTENT MANGEMENT LOCAL,因为它是数据库创建时建立的第一个表空间。在8i中,字典管理还是默认的管理方式,当选择了LOCAL关键字,即表明这是一个本地管理的表空间。当然还可以继续选择更细的管理方式:是AUTOALLOCATE 还是UNIFORM.。若为AUTOALLOCATE,则表明让Oracle来决定区块的使用办法;若选择了UNIFORM,则还可以详细指定每个区块的大小,若不加指定,则为每个区使用1M大小。 本地管理表空间的优点: 1)减少了递归空间管理 本地管理表空间是自己管理分配,而不是象字典管理表空间需要系统来管理空间分配,本地表空间是通过在表空间的每个数据文件中维持一个位图来跟踪在此文件中块的剩余空间及使用情况。并及时做更新。这种更新只对表空间的额度情况做修改而不对其他数据字典表做任何update操作,所以不会产生任何回退信息,从而大大减少了空间管理,提高了管理效率。同时由于本地管理表空间可以采用统一大小分配方式(UNIFORM),因此也大大减小了空间管理,提高了数据库性能。 2)系统自动管理extents大小或采用统一extents大小 本地管理表空间有自动分配(AUTOALLOCATE)和统一大小分配(UNIFORM)两种空间分配方式,自动分配方式(AUTOALLOCATE)是由系统来自动决定extents大小,而统一大小分配(UNIFORM)则是由用户指定extents大小。这两种分配方式都提高了空间管理效率。 3)减少了数据字典之间的竞争 因为本地管理表空间通过维持每个数据文件的一个位图来跟踪在此文件中块的空间情况并做更新,这种更新只修改表空间的额度情况,而不涉及到其他数据字典表,从而大大减少了数据字典表之间的竞争,提高了数据库性能。 4)不产生回退信息

创建Oracle表空间的步骤

1、先查询空闲空间 1.select tablespace_name,file_id,block_id,bytes,blocks from dba_free_space; 2、增加Oracle表空间 先查询数据文件名称、大小和路径的信息,语句如下: 1.select tablespace_name,file_id,bytes,file_name from dba_data_files; 3、修改文件大小语句如下 1.alter database datafile 2.'需要增加的数据文件路径,即上面查询出来的路径 3.'resize 800M; 4、创建Oracle表空间 1.create tablespace test 2.datafile '/home/app/oracle/oradata/oracle8i/test01.dbf' size 8M 3.autoextend on 4.next 5M 5.maxsize 10M; 6. 7.create tablespace sales 8.datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M 9.autoextend on 10.next 50M 11.maxsize unlimited 12.maxsize unlimited 是大小不受限制 13. 14.create tablespace sales 15.datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M 16.autoextend on 17.next 50M 18.maxsize 1000M 19.extent management local uniform; 20.unform表示区的大小相同,默认为1M 21. 22.create tablespace sales 23.datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M 24.autoextend on 25.next 50M 26.maxsize 1000M 27.extent management local uniform size 500K; 28.unform size 500K表示区的大小相同,为500K

Oracle表空间与权限管理

表空间都狠重要,我在尝试的时候就遇到2个错误,但是后来解决了,在网上各位大虾的指导下。问题:1.表建在哪个表空间2.表是哪个用户创建的。 解决: 1.建表的create 语句后面加上tablespace FROEST,其中FROEST是表空间的名字s 2.建一个froest的用户,权限分配为connect,resource,用pl/sql登录的时候Connect as Normal,这样登录后创建的表是froest用户的,如果用Connect as SYSDBA那么创建的表是SYS用户的。 oracle 建表需要建立在表空间上,所以需先建立一个表空间 建立表空间语句: 1)。create tablespace "FROEST" datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\froest.dbf' size 10M autoextend on next 500k 2)。create tablespace FROEST datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\froest.dbf' size 10M default storage(initial 500k next 500k minextents 1 maxextents unlimited pctincrease 0 ) 注释: pctincrease 的零设置,使管理空间的任务更为容易,因为使用非零pctincrease 设置可能导致表空间空闲空间碎片问题。 2.MINIMUM EXTENT 50M 表示在这个表空间中创建对象时对对象的extent 的约束,最小要50M;

表空间管理作业答案

表空间管理作业1 1、创建本地管理表空间test01,数据文件test01.dbf,初始大小8M,可以自动扩充,每次增加5M,最大大小100M。区的大小由系统自动分配,段的管理为手动。 Create tablespace test01 Datafile ‘d:\oracle\test\test01.dbf’size 8M Autoextend on Next 5M Maxsize 100M Extent management local autoallocate /可省略 Segment space management manual; 2、创建本地管理表空间test02,数据文件test02_1.dbf,初始大小1024K,允许自动扩充,每次扩充50M,最大大小无限制,数据文件test01_2.dbf,初始大小1M,不允许自动扩充。区的大小统一为2048K,段的管理为自动。 Create tablespace test02 Datafile ‘d:\oracle\test\test02_1.dbf’size 1024K Autoextend on Next 50M Maxsize unlimited, Datafile ‘d:\oracle\test\test02_2.dbf’size 1M Autoextend off Extent management local uniform size 2048K Segment space management auto; 3、创建本地管理表空间indx,数据文件indx01.dbf,初始大小5M,允许自动扩充,每次扩充50M,最大大小1000M,区采用统一大小,使用系统默认值。 Create tablespace indx Datafile ‘d:\oracle\test\indx01.dbf’size 5M Autoextend on Next 50M Maxsize 1000M Extent management local uniform Segment space management auto;

Oracle 数据文件的管理策略

Oracle 数据文件的管理策略 数据文件是物理上存储表空间数据的操作系统文件,在创建表空间的同时将为它建立数据文件。在创建表空间前,DBA不仅要考虑表空间的管理方式,还需要决定与表空间对应的数据文件的数量、大小以及位置。 1.确定数据文件的数量 在为其他非SYSTEM表空间设置数据文件的数量时,需要考虑如下限制条件: ●初始化参数DB_FILES指定在SGA区中能够保存的数据文件信息的最大数量,也 就是一个实例所能支持的数据文件的最大数量。 ●操作系统中每一个进程能够同时打开的文件数量是有限的,这个限制的大小取决于 操作系统本身。 ●每新建一个数据文件,都会在数据库的控制文件中添加一条记录。如果在控制文件 中指定了MAXDATAFILES子句,那么在控制文件中最多只能保存 MAXDA TAFILES条数据文件的记录。但是数据库所拥有的数据文件的最大值仍然 是DB_FIELS参数指定。如果MAXDATAFILES参数小于DB_FILES参数,则Oracle 会自动对控制文件进行扩展,以便容纳更多的数据文件记录。 2.确定数据文件的存放位置 表空间数据的物理存放位置由数据文件的存放位置决定。因此,要正确地为表空间设置物理存储位置,就必须合理地选择数据文件的存放位置。 例如,如果数据库可以使用多个磁盘,可以考虑将可能并发访问的数据文件分散存储在各个磁盘中,这样可以减少由于磁盘I/O冲突对系统性能造成的影响。 3.分离存放数据文件与日志文件 如果数据库的可靠性要求较高,则必须保证数据文件与重做日志文件分别保存在不同的磁盘中。如果数据文件和重做日志文件保存在同一个磁盘中,当这个磁盘损坏时,数据库中的数据将永久性地丢失。 在使用复合重做日志文件时,如果各个成员日志文件分别存放在独立的磁盘中,那么同时丢失所有重做日志的可能性很小,这时将数据文件与重做日志文件保存在相同的磁盘中是允许的。

银行表外业务的主要风险及其管理方

商业银行表外业务的主要风险及管理方法 与传统的表内业务相比,商业银行的表外业务也存在信贷风险、市场风险、操作风险等常见的金融风险,不过,表外业务风险更为分散、隐蔽性更强、表现形式更为多样化,这要求商业银行的表外业务风险管理需要借助更多的工具,需要更为复杂和灵活的管理方法。 一、表外业务风险的类别 商业银行在划分表外业务和传统业务的风险采用了基本相似的方法。表外业务的风险有以下种类: (一)信贷风险 传统意义上银行的信用风险在于信贷业务中,大规模贷款的企业容易造成信用风险。但在实际上,商业银行的表外业务,如信用证业务、票据承兑业务、担保业务等,在交易对象无力履约时同样会引发信用风险,此类或有负债业务的风险却往往被人忽视。虽然这些业务不直接涉及债权债务关系,但当潜在的债务人由于各方原因发生支付违约时,银行就有可能变成债务人。例如,在信用证业务和票据发行业务中,一旦开证人或票据发行人资金周转困难或资金链断裂因而不能按期偿付,银行就要承担连带偿付责任。 (二)市场风险 市场风险是因利率、外汇市场、资本市场和商品市场的价格

变动造成商业银行表内和表外业务发生损失的风险。由于利率、汇率等的频繁波动,在银行的交易活动中市场风险最为显著,是表外业务面临的主要的风险之一,尤其在各种复杂的金融衍生业务中非常突出。市场风险主要包括以下几种:利率风险、汇率风险、权益风险和商品风险。 (三)操作风险 操作风险是指由于银行系统内部内控机制的缺陷带来失误,或者发生灾难事故而造成意外损失。主要指由于系统故障、业务操作流程不合理、人为过错、外部意外事件造成损失的风险。它主要关系到各种欺诈、业务操作中断或系统失败、内部流程管理等风险。 (四)流动性风险 流动性风险是商业银行面临的主要风险之一,当银行的流动性不足,出现较大缺口而无法及时弥补,无法以合理的成本迅速获得足够的资金,常常会导致严重后果。历史上因流动性问题发生银行遭受巨大损失甚至倒闭的事件不胜枚举。流动性问题对银行的表外业务影响也很大,比如银行提供过多的授信或备用信用证,就可能发生无法满足客户资金需求的风险。再如银行在进行金融衍生工具交易时,想要进行对冲轧平其头寸,却没有相应的对手,无法以合适的价格完成抛补而出现资金缺口而面临风险。 (五)筹资风险 筹资风险是指当银行自有资金不足又缺乏其他可用资金时,

相关主题
文本预览
相关文档 最新文档