《表格模板-09表空间和数据文件的管理 精品.ppt》由会员分享,可在线阅读,更多相关《表格模板-09表空间和数据文件的管理 精品.ppt(81页珍藏版)》请在第一文库网上搜索。
1、Oracle存存储储管理管理之之第九章第九章 表空表空间间和和数数据文件的管理据文件的管理【教学导教学导航航】 理解表空间和数据文件等各种存储理解表空间和数据文件等各种存储概念概念 理解数据库、表空间、数据文件三理解数据库、表空间、数据文件三者的关系者的关系 掌握使用掌握使用SQL命令和命令和OEM有效地管有效地管理表空间和数据文件的方法理表空间和数据文件的方法 理解表空间各种存储概念理解表空间各种存储概念 掌握对表空间管理方法掌握对表空间管理方法表空间和数据文件的管理策略表空间和数据文件的管理策略4课时课时第九章第九章 表空表空间间和和数数据文件的管理据文件的管理9.2.1 9.2.1 表空
2、间管理的策略表空间管理的策略9.2.2 9.2.2 创建表空间创建表空间9.2.3 9.2.3 修改表空间修改表空间9.2.4 9.2.4 删除表空间删除表空间9.2.59.2.5查看表空间查看表空间9.3.1 9.3.1 数据文件管理的策略数据文件管理的策略9.3.2 9.3.2 创建数据文件创建数据文件9.3.3 9.3.3 修改数据文件修改数据文件9.3.4 9.3.4 删除数据文件删除数据文件9.3.5 9.3.5 查看数据文件查看数据文件第九章第九章 管理表空管理表空间间和和数数据文件据文件 使用不同的系统视图命令查看表空间和数据文件信息 使用SQL*PLUS和OEM工具管理表空间和
3、数据文件 能根据实际情况操作表空间和数据文件包括:创建、修改、删除等【任务描述【任务描述】数据库数据库逻辑结构逻辑结构物理结构物理结构表空间表空间OS 块块Oracle块块段段区区数据文件数据文件OracleOracle将数将数据物理地存据物理地存在在数数据文件据文件中中, ,而而逻辑逻辑地地存在表空存在表空间间中中数据库存储体系结构数据库存储体系结构9.1 概述【知识讲解与操作指导【知识讲解与操作指导】为什么引入如此复杂的存储体系结构为什么引入如此复杂的存储体系结构9.1 概述 主要描述主要描述oracle数据库的外部存储结构数据库的外部存储结构 在操作系统中如何组织、管理数据。在操作系统中
4、如何组织、管理数据。 与操作系统平台有关。是逻辑存储结构在物理上与操作系统平台有关。是逻辑存储结构在物理上的、可见的、可操作的、具体的实现形式。的、可见的、可操作的、具体的实现形式。 物理存储结构对应的操作系统文件存储在磁盘上。物理存储结构对应的操作系统文件存储在磁盘上。PasswordfileParameterfileArchived Log filesControl filesDatafiles Redo Log filesOracle Database 用于描述在用于描述在oracle内部组织和管理数据的方式内部组织和管理数据的方式 指定数据库的物理空间如何使用指定数据库的物理空间如何使
5、用 与操作系统平台无关,是由与操作系统平台无关,是由oracle数据库创建数据库创建和管理的。和管理的。 为一层次结构(为一层次结构(Hierarchy),由表空间),由表空间( tablespaces), 段(段(segments), 分区分区(extents), 和块(和块( blocks)TablespaceDatafileSegmentBlocksExtentSegment逻辑结构(逻辑结构( Logical Structure)9.1 概述数据库数据库表空间表空间Oracle块块段段区区9.1 概述 在任一时刻只能属于一个数据库在任一时刻只能属于一个数据库 由一个或多个数据文件所组成
6、由一个或多个数据文件所组成 可以而且只能属于一个表空间可以而且只能属于一个表空间 和一个数和一个数据库据库 是存储模式对象数据的是存储模式对象数据的 一个容器一个容器/仓库仓库 任何方案对象(如表、索引)都被存储在任何方案对象(如表、索引)都被存储在表空间的数据文件中。表空间的数据文件中。表空间和数据文件表空间和数据文件TablespaceDatafileSegmentBlocksExtentSegment 9.1 概述(1)1)能够将数据字典与用户数据分离开来,避免由于字典对能够将数据字典与用户数据分离开来,避免由于字典对象和用户对象保存在同一个数据文件中而产生的象和用户对象保存在同一个数据
7、文件中而产生的I/OI/O冲突。冲突。(2)(2)能够将回退数据与用户数据分离开来,避免由于硬盘损能够将回退数据与用户数据分离开来,避免由于硬盘损坏而导致永久性的数据丢失。坏而导致永久性的数据丢失。(3)(3)能够将表空间的数据文件分散保存到不同的硬盘上,平能够将表空间的数据文件分散保存到不同的硬盘上,平均分布物理均分布物理I/OI/O操作。操作。(4)(4)能够将某个表空间设置为脱机状态或联机状态,以便对能够将某个表空间设置为脱机状态或联机状态,以便对数据库的一部分进行备份和恢复。数据库的一部分进行备份和恢复。(5)(5)能够将某个表空间设置为只读状态,从而将数据库的一能够将某个表空间设置为
8、只读状态,从而将数据库的一部分设置为只读状态。部分设置为只读状态。(6) (6) 能够为某种特殊用途专门设置一个表空间,比如临时能够为某种特殊用途专门设置一个表空间,比如临时表空间等,以优化表空间的使用效率。表空间等,以优化表空间的使用效率。(7)(7)能够更加灵活地为用户设置表空间限额。能够更加灵活地为用户设置表空间限额。表空间和数据文件的作用表空间和数据文件的作用9.1 概述 与数据库一起建立与数据库一起建立 存储数据字典存储数据字典 包含了包含了系统还原段系统还原段 存储一些单独的段存储一些单独的段 方便磁盘空间管理方便磁盘空间管理 控制分配给用户磁盘空间的数量控制分配给用户磁盘空间的数
9、量表空间的分类表空间的分类9.1 概述9.1 概述大文件(大文件(bigfile)表空间)表空间 它只能放置一个数据文件(或临时文件)它只能放置一个数据文件(或临时文件) 其数据文件可以包括其数据文件可以包括4G个数据块。个数据块。 大文件表空间是为超大型数据库而设计,以减大文件表空间是为超大型数据库而设计,以减少数据文件的数量,使更新数据文件头部信息少数据文件的数量,使更新数据文件头部信息的操作快得多。的操作快得多。小文件(小文件(small file)表空间)表空间 以前的以前的oracle表空间的新名称。可以放置多达表空间的新名称。可以放置多达1024个数据文件。个数据文件。 Syste
10、m,sysaux表空间总是被创建为小文件表空间大文件表空间与小文件表空间大文件表空间与小文件表空间9.2 表空表空间间的磁的磁盘盘空空间间管理管理Oracle 10g 的表空间按照的表空间按照区区和和段段进行管理进行管理针对针对区区的分配方式的不同,有两种管理方式:的分配方式的不同,有两种管理方式: 数据字典管理的表空间数据字典管理的表空间:空闲分区由数据字典来管理。空闲分区由数据字典来管理。当分区被分配或收回时对应的(系统)表将当分区被分配或收回时对应的(系统)表将被修改。被修改。 本地管理的表空间本地管理的表空间:空闲分区在表空间中管理。空闲分区在表空间中管理。用位图(用位图(Bitmap
11、)来记录空闲分区)来记录空闲分区。 位图中的每一位对应于一块或一组块。位图中的每一位对应于一块或一组块。位值指示空闲或分配。位值指示空闲或分配。注:注:在创建表空间时选择其中一种空间管理方在创建表空间时选择其中一种空间管理方法,在以后将无法改变该方法。法,在以后将无法改变该方法。 HeaderFree spaceData Oracle数据块包含块头(header)、数据空间(data)、空闲空间(free space)三个部分。 块的结构块的结构9.2 表空表空间间的磁的磁盘盘空空间间管理管理9.2 表空表空间间的磁的磁盘盘空空间间管理管理 两者比较两者比较 数据字典管理的表空间数据字典管理的
12、表空间: 分区的管理是在数据字典中进行的。 每一个存储在同一表空间中的段可以具有不同的存储子句。需要合并碎片。 本地管理的表空间本地管理的表空间:减少数据字典表的竞争当磁盘空间分配或收回时不会产生回滚(还原数据)不需要合并碎片9.2 表空表空间间的磁的磁盘盘空空间间管理管理UNIFORM:统一分配统一分配 ,指定表空间中所有区的大小都,指定表空间中所有区的大小都相同。相同。AUTOALLOCATE:自动分配,指定由:自动分配,指定由ORACLE来自来自动管理区的大小,(动管理区的大小,(默认设置默认设置)在在AUTOALLOCATE方式下,区的大小随表的大小自方式下,区的大小随表的大小自动地动
13、态改变,其对应关系如下表动地动态改变,其对应关系如下表表大小 区大小64KB 64KB1MB 1MB64MB 8MB1000MB 64MB本地管理方式本地管理方式9.2 表空表空间间的磁的磁盘盘空空间间管理管理 MANUAL方式:使用方式:使用可用列表可用列表来管理段来管理段的空闲数据块,的空闲数据块,默认设置默认设置 AUTO方式:使用方式:使用位图位图来管理段的已用数来管理段的已用数据块和空闲数据块。据块和空闲数据块。本地管理方式本地管理方式9.3 创创建表空建表空间间9.3 创创建表空建表空间间 1.创建多个(非创建多个(非SYSTEM)表空间)表空间 2.设置表空间的默认存储参数(针对
14、数据设置表空间的默认存储参数(针对数据字典管理方式)字典管理方式) 3.为用户设置表空间配额为用户设置表空间配额9.3.1 创建表空间的准则创建表空间的准则 1创建多个(非创建多个(非system)表空间)表空间使用多个表空间以便在执行数据库操作时使用多个表空间以便在执行数据库操作时有更大的灵活性。需要考虑如下策略:有更大的灵活性。需要考虑如下策略: 用户数据与数据字典分开存放;用户数据与数据字典分开存放; 将应用程序数据彼此分开存放;将应用程序数据彼此分开存放; 将不同表空间的数据文件存储在不同将不同表空间的数据文件存储在不同的磁盘上以减少的磁盘上以减少I/O争用;争用; 将回退段数据与用户
15、数据分开存放,将回退段数据与用户数据分开存放,以避免磁盘故障导致数据永久丢失;以避免磁盘故障导致数据永久丢失;9.3 创创建表空建表空间间9.3.1 创建表空间的准则创建表空间的准则1创建多个(非创建多个(非system)表空间)表空间 使单独的表空间脱机,同时使其它的表使单独的表空间脱机,同时使其它的表空间联机;空间联机; 保留表空间用于特定类型的数据库使用,保留表空间用于特定类型的数据库使用,如更快的更新操作,只读操作或者临时如更快的更新操作,只读操作或者临时段存储;备份单独的表空间。段存储;备份单独的表空间。 能够更加灵活地为用户设置存储限额,能够更加灵活地为用户设置存储限额,等等等等
16、9.3 创创建表空建表空间间9.3.1 创建表空间的准则创建表空间的准则2设置表空间的默认存储参数设置表空间的默认存储参数当创建一个新的数据字典管理的表空间时,可当创建一个新的数据字典管理的表空间时,可以为该表空间中将要创建的方案对象指定默认以为该表空间中将要创建的方案对象指定默认的存储参数。的存储参数。 当创建一个新的本地管理的表空间时,不需当创建一个新的本地管理的表空间时,不需要指定默认的存储参数。要指定默认的存储参数。注:如果没有为一个新的表空间指定默认的存注:如果没有为一个新的表空间指定默认的存储参数,则储参数,则oracleoracle针对用户操作系统的默认存针对用户操作系统的默认存储参数就成为该表空间的默认存储参数。储参数就成为该表空间的默认存储参数。 9.3 创创建表空建表空间间9.3.1 创建表空间的准则创建表空间的准则 配额是指用户在某个指定的表空间中允许配额是指用户在某个指定的表空间中允许使用的存储空间的大小。当用户创建表、使用的存储空间的大小。当用户创建表、索引等具有独立段结构的数据库方案对象索引等具有独立段结构的数据库方案对象时,都必须在表空间中为这此方案对象分