为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

磁盘空间存储-表空间与数据文件

2020-03-08 23页 doc 113KB 3阅读

用户头像

is_083599

暂无简介

举报
磁盘空间存储-表空间与数据文件3.3 段分离  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第3章讲述计划和管理表空间。本节说的是段分离。 l 标签:表空间  Oracle  ASM  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 3.3  段分离 一般可根据类型、大小和访问频率将段划分到不同的表空间中。此外,每个表空间将从自...
磁盘空间存储-表空间与数据文件
3.3 段分离  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第3章讲述和管理表空间。本节说的是段分离。 l 标签:表空间  Oracle  ASM  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 3.3  段分离 一般可根据类型、大小和访问频率将段划分到不同的表空间中。此外,每个表空间将从自己的磁盘组或磁盘设备上获益。然而在实际情况中,大多数计算站并 没有能力将每个表空间存储到自己的设备上。下面的要点了一些条件,您可以使用这些条件来确定如何将段分离到表空间中。这些条件之间不存在优先级,因为 优先级取决于特定的环境。使用自动存储管理(ASM)可以消除这里所列出的许多争用问题,从而不需要DBA进行额外的工作。第4章将详细讨论ASM。 ● 大段和小段应该在单独的表中。 ● 表段和它们所对应的索引段应该在单独的表中。 ● 单独的表空间应该用于每个应用程序。 ● 较少使用的段和较多使用的段应该在不同的表空间中。 ● 静态段应该和高DML段分离。 ● 只读表应该在其自己的表空间中。 ● 数据仓库的分段表应该在其自己的表空间中。 ● 根据是否逐行访问段以及是否通过完整表扫描访问段,使用适当的块大小来创建表空间。 ● 物化视图应该在与基表不同的单独表空间中。 ● 对于分区的表和索引,每个分区应该在其自己的表空间中。 使用EM数据库控制台,可以通过标识热点(在文件级或对象级中)来标识任意表空间上的总体争用情况。第8章将讨论性能调整,包括解决I/O争用问题。 4.1 传统磁盘空间存储  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是传统磁盘空间存储。 l 标签:存储  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 第4章物理数据库布局和存储管理 第3章讨论了数据库的逻辑组成部分、表空间,以及如何创建正确数量和类型的表空间,并根据使用模式和功能将表和索引段放在适当的表空间中。本章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞吐量和数据库的整体性能。 本章内容基于以下假设:正在使用本地化管理的表空间,并且具有自动段空间管理功能。除了使用存储在表空间自身中的位图而不是存储在表或索引头块中的 空闲列表来减少SYSTEM表空间上的加载之外,自动段空间管理(自动分配的或统一的)还可帮助更有效地使用表空间中的空间。从Oracle 10g开始,SYSTEM表空间被创建为本地管理的。因此,所有的读写表空间也必须是本地管理的。 本章的第一部分将回顾使用传统磁盘空间管理时一些常见的问题和解决,传统的磁盘空间管理使用数据库服务器上的文件系统。本章的第二部分将概述自 动存储管理(Automatic Storage Management,ASM),这个内置的逻辑卷管理程序可以简化管理、增强性能和改进可用性。 4.1  传统磁盘空间存储 在使用第三方逻辑卷或者Oracle自动存储管理(本章后面将讨论)的时候,必须能够管理数据库中的物理数据文件,从而确保高级别的性能、可用性和 可恢复性。一般来说,这意味着将数据文件分散到不同的物理磁盘。通过在不同磁盘上保存重做日志文件和控制文件的镜像副本,除了可以确保可用性外,当用户访 问驻留在多个物理磁盘上(而不是一个物理磁盘上)的表空间中的表时,还可以有效地改进I/O性能。标识特定磁盘卷上的I/O瓶颈或存储缺陷只是完成了一半 工作,一旦标识了瓶颈,就需要使用各种工具和知识将数据文件移动到不同的磁盘。如果数据文件具有过多的空间或空间不够,则调整已有数据文件的大小是一项常 见的任务。 本章将讨论调整表空间大小的各种不同,无论这些表空间是小文件表空间还是大文件表空间。此外,本章还将介绍将数据文件、联机重做日志文件和控制文件移动到不同磁盘的最常见方法。 4.1.1 调整表空间和数据文件的大小(1)  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是调整表空间和数据文件的大小。 l 标签:表空间  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 4.1.1  调整表空间和数据文件的大小 在理想的数据库中,应按照最优的大小创建所有的表空间和其中的对象。主动调整表空间的大小或建立自动扩展的表空间可以潜在地避免对性能的影响,这些 性能影响发生在表空间扩展或由于表空间中的数据文件无法扩展而造成应用程序失败的情况下。第6章将介绍监控空间利用率的更多细节。 用于调整表空间大小的过程和方法存在细微的区别,这取决于表空间是小文件表空间还是大文件表空间。小文件表空间是Oracle 10g之前唯一可用的表空间类型,可以由多个数据文件组成。与之相反,大文件表空间可以只由一个数据文件组成,但该数据文件可以远远大于小文件表空间中的 数据文件:具有64KB块的大文件表空间可以有最大为128TB的数据文件。此外,大文件表空间必须是本地管理的。 1. 使用ALTER DATABASE调整小文件表空间的大小 在下面的示例中,尝试调整USERS表空间的大小,该表空间包含一个数据文件,并且开始时的大小为5MB。首先,将其调整为15MB,然后意识到该表空间过大,将其缩减到10MB。接下来,尝试更多地缩减该表空间的大小。最后,尝试增加该表空间的大小。 SQL> alter database2 datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf' resize 15m;Database altered.SQL> alter database2 datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf' resize 10m;Database altered.SQL> alter database2 datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf' resize 1m;alter database*ERROR at line 1:ORA-03297: file contains used data beyond requested RESIZE valueSQL> alter database2 datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf' resize 100t;alter database*ERROR at line 1:ORA-00740: datafile size of (134********) blocks exceeds maximum file sizeSQL> alter database2 datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf' resize 50g;alter database*ERROR at line 1:ORA-01144: File size (6553600 blocks) exceeds maximum of 4194303 blocks   如果可用的空闲空间不支持重新调整大小的请求,或者数据超出请求减少的大小,或者超出Oracle文件大小的限制,则系统都会返回错误。 为了避免被动地手动调整表空间的大小,可以在修改或创建数据文件时使用autoextend、next和maxsize子句将其改为主动式调整。表4-1列出了alter datafile和alter tablespace命令中用于修改或创建数据文件的空间相关子句。 表4-1  数据文件扩展子句 子 句 说 明 autoextend 将该子句设置为ON时,允许扩展数据文件。将其设置为OFF时,则不允许扩展,并且将其他子句设置为0 next 在需要扩展时,分配给数据文件的下一个磁盘空间量的大小(以字节为单位);值可以限定为K、M、G、T,分别用于指定以千字节、兆字节、千兆字节、百万兆字节为单位的大小 maxsize 将该子句设置为unlimited时,Oracle中数据文件的大小是无限的,对于大文件表空间,数据文件最大为128TB;对于具有32K块的小文件表空间,数据文件最大为128GB (另外受到包含数据文件的文件系统的限制)。否则,将maxsize设置为数据文件中最大的字节量,使用与next子句中相同的限定符:K、M、G、T     在下面的示例中,针对datafile/u01/app/oracle/oradata/rmanrep/users01.dbf,设置autoextend为ON,指定数据文件的每次扩展为20MB,并且指定数据文件的大小总计不能超出1GB: SQL> alter database2 datafile '/u01/app/oracle/oradata/rmanrep/users01.dbf'3 autoextend on4 next 20m5 maxsize 1g;Database altered.   如果包含数据文件的磁盘卷没有可用于数据文件扩展的磁盘空间,就必须将数据文件移动到另一个磁盘卷,或者创建位于另一个磁盘卷上的表空间的第二个数 据文件。在该示例中,将第二个数据文件添加到不同磁盘卷上的USERS表空间,该表空间的初始大小为50MB,允许自动扩展数据文件,且每次扩展 10MB,最大数据文件大小为200MB: SQL> alter tablespace users2 add datafile '/u03/oradata/users02.dbf'3 size 50m4 autoextend on5 next 10m6 maxsize 200m;Tablespace altered.   注意,修改表空间中的已有数据文件时,使用alter database命令,而在添加数据文件到表空间时,使用alter tablespace命令。如同您将在后面所看到的那样,使用大文件表空间可简化这些类型的操作。 4.1.1 调整表空间和数据文件的大小(2)  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是调整表空间和数据文件的大小。 l 标签:表空间  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 2. 使用EM Database Control调整小文件表空间的大小 使用EM Database Control,可以使用前面小节中所描述的两种方法中的任何一种:增加大小并针对表空间的单个数据文件打开自动扩展,或者添加第二个数据文件。 调整小文件表空间中的数据文件  为了在EM Database Control中调整数据文件的大小,从数据库实例主页中选择Server选项卡,然后单击Storage标题下的Tablespaces。在图4-1 中,已经选择了XPORT表空间,它所分配空间的利用率已超过85%,因此决定使用第二个数据文件来扩展它的大小。此表空间最初是使用如下命令创建的: create tablespace xport datafile '/u02/oradata/xport.dbf' size 150m;   接下来将不设置自动扩展的表空间数据文件,而是将其当前大小从150MB改为200MB。 接下来将不设置自动扩展的表空间数据文件,而是将其当前大小从150MB改为200MB。 图4-1 使用EM Database Control编辑表空间   单击Edit按钮,可以看到XPORT表空间的特征,如图4-2所示。这是本地管理的、永久性的、非大文件表空间(即小文件表空间)。该页面的底部是XPORT表空间的一个数据文件,/u02/oradata/xport.dbf。 图4-2 表空间特征   选择XPORT表空间中唯一的数据文件,单击Edit按钮或数据文件名自身,可以看到Edit Tablespace: Edit Datafile页面,如图4-3所示,可以在其中改变数据文件的大小。在该页面上,将文件大小从150MB改为200MB,然后单击Continue按 钮。 图4-3 编辑表空间的数据文件   在图4-4中,返回到Edit Tablespace页面。此时,可以通过单击Apply按钮改变数据文件,通过单击Revert按钮取消改变,或者通过单击Show SQL按钮显示执行的SQL。 图4-4 确认数据文件改变   在提交改动之前,最好先通过单击Show SQL按钮显示将要执行的SQL命令:这是复习SQL命令语法的好方法。下面是单击Apply按钮时将要执行的SQL命令: ALTER DATABASE DATAFILE '/u02/oradata/xport.dbf' RESIZE 200M   【编辑:董书 TEL:(010)68476606】 4.1.1 调整表空间和数据文件的大小(3)  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是调整表空间和数据文件的大小。 l 标签:表空间  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 单击Apply按钮时,对数据文件的大小进行改动。Edit Tablespace: XPORT页面反映了成功的操作和数据文件的新大小,如图4-5所示。 添加数据文件到小文件表空间  添加数据文件到小文件表空间和使用EM Database Control调整数据文件大小一样容易。在前面的示例中,将XPORT表空间的数据文件扩展为200MB。因为包含XPORT表空间数据文件的文件系统 (/u02)容量已满,所以必须关闭已有数据文件上的AUTOEXTEND,然后在不同的文件系统上创建新的数据文件。在图4-6中,通过取消选中 Storage部分中的复选框,关闭了已有数据文件的AUTOEXTEND。下面是单击Continue按钮然后单击Apply按钮时针对该操作执行的 SQL命令: ALTER DATABASEDATAFILE '/u02/oradata/xport.dbf'AUTOEXTEND OFF;   (点击查看大图)图4-5 数据文件调整大小的结果   (点击查看大图)图4-6 编辑表空间的数据文件特征   在图4-1中的Tablespaces页面上,选择XPORT表空间旁边的单选按钮,并单击Edit按钮,会看到如图4-7所示的页面。 (点击查看大图)图4-7 编辑XPORT表空间   在图4-7中,单击Add按钮,会看到如图4-8所示的页面。 (点击查看大图)图4-8 向XPORT表空间添加数据文件   在图4-8所示的页面上,指定新数据文件的文件名和目录位置。因为已经知道/u04文件系统具有至少100MB的空闲空间,所以指定 /u04/oradata作为目录,并且指定xport2.dbf作为文件名,虽然该文件名自身并不需要包含表空间名称。此外,设置文件大小为 100MB,并且不选中AUTOEXTEND的复选框。 单击Continue按钮,然后单击Apply按钮,可以看到Update Message和XPORT表空间数据文件的新大小,如图4-9所示。 (点击查看大图)图4-9 添加数据文件后查看XPORT表空间   【责任编辑 4.1.1 调整表空间和数据文件的大小(4)  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是调整表空间和数据文件的大小。 l 标签:表空间  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 3. 从表空间中删除数据文件 在以前的Oracle版本中,删除表空间中的数据文件存在一定的问题。那就是无法提交单个的命令来删除数据文件,除非删除整个表空间。此时,只有3种选择: ● 容忍该数据文件。 ● 缩减该数据文件并关闭AUTOEXTEND。 ● 创建新的表空间,将所有的对象移动到新的表空间,并且删除原来的表空间。 从维护和元数据的观点来看,虽然创建新的表空间是最理想的选择,但执行有关步骤很容易产生错误,并且需要一定的停机时间,从而影响其可用性。 使用EM Database Control,可以删除数据文件并最小化停机时间,并且由EM Database Control生成所需的脚本。前面的示例通过添加数据文件来扩展XPORT表空间,而这里我们通过重新组织表空间来删除数据文件。在 Tablespace页面上,选择需要重新组织的表空间(在此例中是XPORT),在Actions下拉列表框中选择Reorganize,然后单击Go 按钮,如图4-10所示。 在图4-11所示的Reorganize Objects页面上,确认需要重新组织的XPORT表空间,然后单击Next按钮。 (点击查看大图)图4-10 Tablespace: Reorganize   (点击查看大图)图4-11 Reorganize Objects: Objects   如图4-12所示,在下一个页面中,可以为重新组织设置一些参数。例如,对于当前的重新组织,重新组织的速度和表空间的可用性哪一个更为重要。此 外,可以利用表空间重命名特性,而不是使用临时表空间作为工作区域,从而节省磁盘空间以及重新组织的时间。该页面上的其他参数包括指定并行执行、没有记录 的索引重建,以及重新组织完成后所需的统计收集级别。 (点击查看大图)图4-12 Reorganize Objects: Options   图4-13显示了脚本创建的状态。生成脚本所花费的时间基本上与表空间中对象的数量成比例。 (点击查看大图)图4-13 Processing: Generating Reorganization Script   小结界面中显示了在脚本生成期间遇到的任何警告或错误,如图4-14中的Impact Report所示。 (点击查看大图)图4-14 Reorganize Objects: Impact Report   【责任编辑:董书 4.1.1 调整表空间和数据文件的大小(5)  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是调整表空间和数据文件的大小。 l 标签:表空间  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 单击Next按钮后,可以看到Schedule页面,如图4-15所示。在当前情况中,继续前进并指定服务器的主机凭证,但在该向导的末尾不会提交该工作,因为还需要对脚本进行编辑。 (点击查看大图)图4-15 Reorganize Objects: Schedule   单击Next按钮,可显示如图4-16所示的Review页面。文本框中显示了所生成的脚本的摘录。不要立刻提交工作,而应单击Save Full Script,以在运行脚本前对其进行一些小的改动。 (点击查看大图)图4-16 Reorganize Objects: Review   在图4-17中,指定希望保存脚本的位置。 编辑完整的脚本时,应将execute immediate命令定位在创建表空间的位置: EXECUTE IMMEDIATE 'CREATE SMALLFILE TABLESPACE "XPORT_REORG0"DATAFILE '/u02/oradata/xport_reorg0.dbf' SIZE 200M REUSE,''/u04/oradata/xport2_reorg0.dbf'' SIZE 100M REUSELOGGING EXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO';   (点击查看大图)图4-17 Review: Save Full Script   因为希望删除数据文件,所以需要删除脚本中高亮显示的数据文件子句,然后改变第二个数据文件的位置,或者重新创建第一个数据文件,使其具有较大的空间。在该示例中,通过修改create tablespace命令,不仅创建较大的新表空间,而且将其放在不同的磁盘卷上: EXECUTE IMMEDIATE 'CREATE SMALLFILE TABLESPACE "XPORT_REORG0"DATAFILE ''/u04/oradata/xport.dbf''SIZE 300M REUSELOGGING EXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO';   一旦已经编辑完脚本,就应使用具有DBA权限的账户在SQL*Plus中运行脚本。脚本的输出看起来类似于下面这样: SQL> @reorg1.sql-- Target database: dw.world-- Script generated at: 08-JUL-2007 23:38Starting reorganizationExecuting as user: RJBCREATE SMALLFILE TABLESPACE "XPORT_REORG0" DATAFILE'/u04/oradata/xport_reorg0.dbf' SIZE 300M REUSE LOGGING EXTENT MANAGEMENTLOCAL SEGMENT SPACE MANAGEMENT AUTOALTER TABLE "SYS"."OBJ_FILL" MOVE TABLESPACE "XPORT_REORG0"DROP TABLESPACE "XPORT" INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTSALTER TABLESPACE "XPORT_REORG0" RENAME TO "XPORT"Completed Reorganization. Starting cleanup phase.Starting cleanup of recovery tablesCompleted cleanup of recovery tablesStarting cleanup of generated proceduresCompleted cleanup of generated proceduresScript execution completeSQL>   如果使用大文件表空间,则可以在很多情况下避免使用重新组织脚本,因为大文件表空间只由一个数据文件组成。下一节将讨论大文件表空间的重新组织。 【责任编辑:董书 4.1.1 调整表空间和数据文件的大小(6)  2009-01-19 11:07  刘伟琴  清华大学出版社  我要评论(0) l 摘要:《Oracle Database 11gDBA手册》将介绍Oracle 11g最新的特性以及如何将这些特性结合到Oracle数据库管理中。第4章将重点关注数据库和数据文件的物理方面,以及如何存储它们才能最大化I/O吞 吐量和数据库的整体性能。本节说的是调整表空间和数据文件的大小。 l 标签:表空间  Oracle  数据库  Oracle Database 11gDBA手册 l Oracle帮您准确洞察各个物流环节 4. 使用ALTER TABLESPACE调整大文件表空间的大小 大文件表空间只由一个数据文件组成。第6章将介绍关于大文件表空间的更多内容,这里仅介绍一些重新调整大文件表空间大小的细节。用于改变表空间数据 文件特征(例如最大尺寸、是否可以完全扩展,以及扩展盘区的大小)的大多数参数现在都可以在表空间级别上进行修改。首先创建一个大文件表空间,如下所示: create bigfile tablespace dmartsdatafile '/u05/oradata/dmarts.dbf' size 750mautoextend on next 100m maxsize unlimitedextent management localsegment space management auto;   只在具有小文件表空间的数据文件级别中有效的操作可以在表空间级别上用于大文件表  空间: SQL> alter tablespace dmarts resize 1g;Tablespace altered.   虽然将alter database命令和DMARTS表空间的数据文件规范一起使用也可以起作用,但使用alter tablespace语法的优点是显而易见的:不需要知道数据文件存储在何处。在具有小文件表空间的表空间级别上尝试改变数据文件参数是不允许的: SQL> alter tablespace users resize 500m;alter tablespace users resize 500m*ERROR at line 1:ORA-32773: operation not supported for smallfile tablespace USERS   如果大文件表空间因为其单个数据文件无法在磁盘上扩展而用完空间,则需要重新分配数据文件到另一个卷,4.1.2小节中将讨论这一点。使用本章后面 介绍的自动存储管理(ASM),完全可能做到不需要手动移动数据文件:不需要移动数据文件,只要添加另一个磁盘卷到ASM存储组即可。
/
本文档为【磁盘空间存储-表空间与数据文件】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索