(2020年){企业管理表格}表空间和数据文件的管理

上传人:精****库 文档编号:141138142 上传时间:2020-08-04 格式:PPTX 页数:81 大小:357.56KB
返回 下载 相关 举报
(2020年){企业管理表格}表空间和数据文件的管理_第1页
第1页 / 共81页
(2020年){企业管理表格}表空间和数据文件的管理_第2页
第2页 / 共81页
(2020年){企业管理表格}表空间和数据文件的管理_第3页
第3页 / 共81页
(2020年){企业管理表格}表空间和数据文件的管理_第4页
第4页 / 共81页
(2020年){企业管理表格}表空间和数据文件的管理_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《(2020年){企业管理表格}表空间和数据文件的管理》由会员分享,可在线阅读,更多相关《(2020年){企业管理表格}表空间和数据文件的管理(81页珍藏版)》请在金锄头文库上搜索。

1、Oracle存储管理之,第九章 表空间和数据文件的管理,第九章 表空间和数据文件的管理,【教学导航】,第九章 表空间和数据文件的管理,9.1 表空间和数据文件概述 9.2 表空间磁盘空间管理 9.2.1 表空间管理的策略 9.2.2 创建表空间 9.2.3 修改表空间 9.2.4 删除表空间 9.2.5查看表空间 9.3 管理数据文件 9.3.1 数据文件管理的策略 9.3.2 创建数据文件 9.3.3 修改数据文件 9.3.4 删除数据文件 9.3.5 查看数据文件 9.4 在OEM中管理表空间和数据文件,【内容纲要】,第九章 管理表空间和数据文件,使用不同的系统视图命令查看表空间和数据文件

2、信息 使用SQL*PLUS和OEM工具管理表空间和数据文件 能根据实际情况操作表空间和数据文件包括:创建、修改、删除等,【任务描述】,Oracle将数据物理地存在数据文件中,而逻辑地存在表空间中,数据库存储体系结构,9.1 概述,【知识讲解与操作指导】,为什么引入如此复杂的存储体系结构,9.1 概述,主要描述oracle数据库的外部存储结构 在操作系统中如何组织、管理数据。 与操作系统平台有关。是逻辑存储结构在物理上的、可见的、可操作的、具体的实现形式。 物理存储结构对应的操作系统文件存储在磁盘上。,物理结构,用于描述在oracle内部组织和管理数据的方式 指定数据库的物理空间如何使用 与操作

3、系统平台无关,是由oracle数据库创建和管理的。 为一层次结构(Hierarchy),由表空间( tablespaces), 段(segments), 分区(extents), 和块( blocks),逻辑结构( Logical Structure),9.1 概述,9.1 概述,表空间(Tablespaces): 在任一时刻只能属于一个数据库 由一个或多个数据文件所组成 数据文件(Data files): 可以而且只能属于一个表空间 和一个数据库 是存储模式对象数据的 一个容器/仓库 任何方案对象(如表、索引)都被存储在表空间的数据文件中。,表空间和数据文件,9.1 概述,(1)能够将数据字

4、典与用户数据分离开来,避免由于字典对象和用户对象保存在同一个数据文件中而产生的I/O冲突。 (2)能够将回退数据与用户数据分离开来,避免由于硬盘损坏而导致永久性的数据丢失。 (3)能够将表空间的数据文件分散保存到不同的硬盘上,平均分布物理I/O操作。 (4)能够将某个表空间设置为脱机状态或联机状态,以便对数据库的一部分进行备份和恢复。 (5)能够将某个表空间设置为只读状态,从而将数据库的一部分设置为只读状态。 (6) 能够为某种特殊用途专门设置一个表空间,比如临时表空间等,以优化表空间的使用效率。 (7)能够更加灵活地为用户设置表空间限额。,表空间和数据文件的作用,9.1 概述,系统(SYST

5、EM) 与数据库一起建立 存储数据字典 包含了系统还原段 非系统(Non-SYSTEM)表空间 存储一些单独的段 方便磁盘空间管理 控制分配给用户磁盘空间的数量,SYSTEM SYSAUX,Users Tools Index temp undo,表空间的分类,9.1 概述,oracle建议: 不要将用户数据存储在系统表空间中。对于大部分数据库来说,至少应创建一个非SYSTEM表空间,用它们来存放用户数据,以实现用户数据和系统数据的完全隔离。,9.1 概述,大文件(bigfile)表空间 它只能放置一个数据文件(或临时文件) 其数据文件可以包括4G个数据块。 大文件表空间是为超大型数据库而设计,

6、以减少数据文件的数量,使更新数据文件头部信息的操作快得多。 小文件(small file)表空间 以前的oracle表空间的新名称。可以放置多达1024个数据文件。 System,sysaux表空间总是被创建为小文件表空间,大文件表空间与小文件表空间,9.2 表空间的磁盘空间管理,Oracle 10g 的表空间按照区和段进行管理 针对区的分配方式的不同,有两种管理方式: 数据字典管理的表空间: 空闲分区由数据字典来管理。 当分区被分配或收回时对应的(系统)表将被修改。 本地管理的表空间: 空闲分区在表空间中管理。 用位图(Bitmap)来记录空闲分区。 位图中的每一位对应于一块或一组块。 位值

7、指示空闲或分配。,注:在创建表空间时选择其中一种空间管理方法,在以后将无法改变该方法。,Header,Free space,Data,Oracle数据块包含块头(header)、数据空间(data)、空闲空间(free space)三个部分。,块的结构,9.2 表空间的磁盘空间管理,9.2 表空间的磁盘空间管理,两者比较 数据字典管理的表空间: 分区的管理是在数据字典中进行的。 每一个存储在同一表空间中的段可以具有不同的存储子句。 需要合并碎片。 本地管理的表空间: 减少数据字典表的竞争 当磁盘空间分配或收回时不会产生回滚(还原数据) 不需要合并碎片,9.2 表空间的磁盘空间管理,一、区的分配

8、方式: UNIFORM:统一分配 ,指定表空间中所有区的大小都相同。 AUTOALLOCATE:自动分配,指定由ORACLE来自动管理区的大小,(默认设置) 在AUTOALLOCATE方式下,区的大小随表的大小自动地动态改变,其对应关系如下表,本地管理方式,9.2 表空间的磁盘空间管理,二、段管理方式 oracle中用来管理段中已用数据块和空闲数据块的机制。 表空间的段管理方式: MANUAL方式:使用可用列表来管理段的空闲数据块,默认设置 AUTO方式:使用位图来管理段的已用数据块和空闲数据块。,本地管理方式,9.3 创建表空间,9.3.1 创建表空间的准则 9.3.2 使用OEM创建表空间

9、 9.3.3 使用SQL命令创建表空间,9.3 创建表空间,1.创建多个(非SYSTEM)表空间 2.设置表空间的默认存储参数(针对数据字典管理方式) 3.为用户设置表空间配额,9.3.1 创建表空间的准则,1创建多个(非system)表空间 使用多个表空间以便在执行数据库操作时有更大的灵活性。需要考虑如下策略: 用户数据与数据字典分开存放; 将应用程序数据彼此分开存放; 将不同表空间的数据文件存储在不同的磁盘上以减少I/O争用; 将回退段数据与用户数据分开存放,以避免磁盘故障导致数据永久丢失;,9.3 创建表空间,9.3.1 创建表空间的准则,1创建多个(非system)表空间 使单独的表空

10、间脱机,同时使其它的表空间联机; 保留表空间用于特定类型的数据库使用,如更快的更新操作,只读操作或者临时段存储;备份单独的表空间。 能够更加灵活地为用户设置存储限额,等等,9.3 创建表空间,9.3.1 创建表空间的准则,2设置表空间的默认存储参数 当创建一个新的数据字典管理的表空间时,可以为该表空间中将要创建的方案对象指定默认的存储参数。 当创建一个新的本地管理的表空间时,不需要指定默认的存储参数。 注:如果没有为一个新的表空间指定默认的存储参数,则oracle针对用户操作系统的默认存储参数就成为该表空间的默认存储参数。,9.3 创建表空间,9.3.1 创建表空间的准则,3.为用户设置表空间

11、配额 配额是指用户在某个指定的表空间中允许使用的存储空间的大小。当用户创建表、索引等具有独立段结构的数据库方案对象时,都必须在表空间中为这此方案对象分配存储空间。一旦该用户用完了在某个表空间中为他分配 的配额,他将不能再在这个表空间中创建方案对象。,9.3 创建表空间,9.3.1 创建表空间的准则,9.3 创建表空间,在表空间的创建中,oracle会完成如下两件工作: 一是在数据字典和控制文件中记录下新创建的表空间 二是在操作系统中按指定的位置和文件名创建指定大小的操作系统文件,作为该表空间对应的数据文件。,9.3 创建表空间,创建表空间的方法 使用SQL命令创建表空间 使用OEM创建表空间,

12、以下以创建本地管理的表空间为例,介绍表空间的创建方法,使用如下的命令创建表空间(需具有CREATE TABLESPACE 系统权限):,9.3.2 使用SQL命令创建表空间,9.3 创建表空间,9.3 创建表空间,有三种创建(永久)表空间的方法 1)使用uniform区分配方式 在这种方式下,oracle将为表空间中所有对象都分配指定的相同大小的区(默认为1MB)。 Uniform区分配方式的优点:在表空间中不会产生磁盘碎片,可以节约磁盘空间 条件:能预测到表空间中存放的大部分对象都要求使用相同大小的区,1 创建(永久)表空间,SQLcreate tablespace pioneerusert

13、s01 Datafile e:oradataexamdbpioneeruserts01_1.dbf size 10M, e:oradataexamdbpioneeruserts01_2.dbf size 20M Uniform size 128K; 表空间已创建,9.3 创建表空间,2)使用AUTOALLOCATE区分配方式 在这种方式下,oracle将自动为表空间中不同对象分配相应大小的区(最小为64KB)。 缺点:在表空间中会产生磁盘碎片,进而造成磁盘空间的浪费,但可以减少DBA的工作量。 条件:能预测到表空间中存放的对象所需要的区的大小会有很大不同,SQLcreate tablespac

14、e pioneeruserts02 Datafile e:oradataexamdbpioneerts02_1.dbf size 2M AUTOALLOCATE; 表空间已创建,1 创建(永久)表空间,9.3 创建表空间,3)使用AUTO段管理方式 可用segment space management子句来指定表空间的段管理方式,注:若不使用上述子句,由默认使用manual段管理方式,SQLcreate tablespace pioneerindexts01 Datafile e:oradataexamdbpioneerindexts01_1.dbf size 2M Uniform size

15、128K segment space management AUTO; 表空间已创建,1 创建(永久)表空间,9.3 创建表空间,大文件表空间只能用于oracle 10g数据库,而且仅在本地管理的表空间中才支持大文件表空间。,SQLcreate bigfile tablespace pioneerbigts05 Datafile e:oradataexamdbpioneerbigts05_1.dbf size 2M 表空间已创建,2 创建大文件表空间,9.3 创建表空间,用做排序操作 可以由多个用户共享 不能包含任何永久对象 Oracle推荐使用本地管理的分区/区段(Extents),SQLc

16、reate temporary tablespace pioneertmpts01 Tempfilee:oradataexamdbpioneertmpts01_1.dbf size 4M EXTENT MANAGEMENT LOCAL Uniform size 1K; 表空间已创建,注:当建立临时表空间时,不能指定autoallocate选项,指定为本地管理方式,可以省略,3、 创建临时表空间,9.3 创建表空间,从oracle 10g开始,允许使用create bigfile temporary tablespace命令,创建一个只包含一个临时文件的大文件临时表空间。,SQLcreate bigfile temporary tablespace pioneerbigtmpts01 Tempfilee:oradataexamdbpioneerbigtmpts01_1.dbf size 4M EXTENT MANAGEMENT LOCAL Uniform size 1K;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号