Oracle数据库讲义(第六章).ppt_第1页
Oracle数据库讲义(第六章).ppt_第2页
Oracle数据库讲义(第六章).ppt_第3页
Oracle数据库讲义(第六章).ppt_第4页
Oracle数据库讲义(第六章).ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

讲 义,Oracle数据库,2009.3,李明俊,六章 Oracle表空间管理,本章内容,6.1 本地化管理表空间 6.2 临时表空间管理 6.3 UNDO表空间管理,在Oracle数据库的逻辑结构部分介绍了表空间概念,在这里重点介绍表 空间的管理。在Oracle8i一下的版本采用的传统的数据字典管理表空间;以 后的版本则采用了先进的本地化管理表空间。本教程讲本地化管理表空间。 6.1 本地化管理表空间 6.1.1 本地化表空间概念 本地管理表空间(Locally Managed Tablespace LMT)是通过本地位图来 管理表空间的空间使用。 1.基本概念 . 位-本地管理表空间的空间管理单位,是由若干个区组成。 . 位图数据文件头部加入的管理区的位置图,记录每个区的使用情况。 2.本地化管理表空间的优点 . 减少访问数据字典。 . 减少了回滚段的使用。 . 位图自动跟踪管理空闲块。 . 自动完成碎片合并问题。,6.1.2 创建表空间因素 数据库创建完成后,系统自动创建的表空间主要有:SYSTEM表空间、 USERS用户表空间、UNDOTBS回退表空间、TEMP临时表空间、INDEX索引表 空间等。更多的表空间要有管理员来创建和管理。 创建表空间主要考虑磁盘文件的分配问题。考虑的因素如下: . 磁盘竞争问题 访问频率高的表空间存储在不同磁盘上。 . 段分离问题 不同类型的数据放在不同表空间上。 . 关键数据文件镜像问题 控制文件、日志文件最好做镜像。 . 数据文件备份问题 考虑数据文件备份的方便、安全性。 6.1.3 创建表空间 Oracle可以创建的表空间有三种类型: . USERS: 用户表空间,存放用户数据表空间。可建多个用户表空间。 . TEMPORARY: 临时表空间,存放临时数据。 . UNDOTBS : 回退表空间,存放重做日志数据。,1. 创建表空间常用语句格式: CREATE TABLESPACE tablespace_name DATAFILE datefile_clause1 ,datefile_clause2 EXTENT MANAGEMENT LOCAL UNIFORM SIZE nnnK|M AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO|MANUAL ONLINE|OFFLINE LOGGING|NOLOGGING ; 其中: tablespace_name 表空间名 datafile_clausel SIZE nnnnK|M REUSE AUTOEXTEND OFF|ON NEXT nnnM MAXSIZE nnnK|M|UNLIMITED 其中:REUSE 如果File 已经存在,覆盖原有的文件。 如果File不存在,则忽略REUSE。 AUTOEXTEND - 自动扩展 OFF(关) ON(开) NEXT-每次扩展nnnK|M MAXSIZE - 文件扩展最大nnnK|M UNLIMITED - 无限,CREATE TABLESPACE tablespace_name DATAFILE datefile_clause1 ,datefile_clause2 EXTENT MANAGEMENT LOCAL UNIFORM SIZE nnnK|M AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO|MANUAL ONLINE|OFFLINE LOGGING|NOLOGGING ; 其中 EXTENT MANAGEMENT LOCAL 代表本地化表空间,可以缺省。 UNIFORM SIZE - 区大小相同,nnnK|M。 默认为1M。 AUTOALLOCATE 区大小系统动态自动分配。缺省是=自动分配。 SEGMENT SPACE MANAGEMENT 段空间分配方式。 ONLINE|OFFLINE 表空间联机/脱机。缺省等于ONLINE。 LOGGING|NOLOGGING 创建日志/不创建日志。缺省等于LOGGING。,2. 创建UNIFORM表空间 CREATE TABLESPACE tablespace DATAFILE datafile SIZE nnnM REUSE AUTOEXTEND OFF |ON NEXT nnnK|M MAXSIZE nnnnK|M|UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE nnnK|M ONLINE|OFFLINE LOGGING|NPLOGGING ; 例:创建一个USER1_DATA表空间,尺寸为100M。 CREATE TABLESPACE USER1_DATA DATAFILE f:oracleoradatatestuserl_data.dbf SIZE 100m autoextend on next 100m maxsize 1000m EXTENT MANAGEMENT LOCAL UNIFORM size 500k OFFLINE NOLOGGING;,3. 创建AUTOALLOCATE表空间 CREATE TABLESPACE tablespace DATAFILE datafile SIZE nnnK|MREUSE AUTOEXTEND OFF |ON NEXT nnnK|M MAXSIZE nnnK|M|UNLIMITED EXTENT MANAGEMENT LOCAL AUTOALLOCATE ONLINE|OFFLINE LOGGING|NPLOGGING ; 例:创建一个USER2_DATA表空间,尺寸为100M。 CREATE TABLESPACE USER2_DATA DATAFILE f:oracleoradatatestuser2_data.dbf SIZE 100m autoextend on next 100m maxsize 1000m EXTENT MANAGEMENT LOCAL AUTOALLOCATE OFFLINE NOLOGGING;,例:创建一个USER3_DATA表空间,尺寸为300M,并创建3个100M数据文件。 CREATE TABLESPACE USER2_DATA DATAFILE e:oracleoradatatestuser3_data1.dbf SIZE 100m autoextend on next 100m maxsize 1000m, e:oracleoradatatestuser3_data2.dbf SIZE 100m autoextend on next 100m maxsize unlimited, e:oracleoradatatestuser3_data3.dbf SIZE 100m EXTENT MANAGEMENT LOCAL UNIFORM OFFLINE NOLOGGING;,6.1.4 修改表空间 1. 为表空间增加数据文件 . 增加数据文件等于增加表空间的大小。 . 数据文件的磁盘位置不限。 语法格式: ALTER TABLESPACE 表空间名 ADD DATAFILE 文件1,文件2 . 例: ALTER TABLESPACE USER1_DATA ADD DATAFILE E:oracleoradatauser01.dbf SIZE 30M; 2. 为表空间的数据文件改变大小 . 数据文件可以加大,只要有空余磁盘空间。 . 数据文件可以缩小,只要数据文件有空闲空间。 语法格式: ALTER DATABASE DATAFILE 文件名 RESIZE nnnM; 例: ALTER DATABASE DATAFILE E:oracleoradatauser01.dbf RESIZE 20M;,数据文件1,数据文件2,数据文件3,表空间,3. 数据文件的自动扩展 . 数据文件在限定的最大范围内自动扩展。 . 限定数据文件每次扩展的大小。 . 在创建表空间和增加数据文件时都可以设置自动扩展。 语法格式: ALTER DATABASE DATAFILE 文件名 SIZE nnnM AUTOEXTEND ON NEXT nnnM MAXSIZE nnnM|UNLIMITED; 例: ALTER DATABASE DATAFILE E:oracleoradatauser01.dbf RESIZE 500M AUTOEXTEND ON NEXT 50M MAXSIZE 1000M; 4. 修改表空间属性 表空间可以设置成:ONLINE(联机)、OFFLINE(脱机)、 READ ONLY(只读)、READ WRITE(读写)。 语法格式: ALTER TABLESPACE 表空间名 ONLINE|OFFLINE|READ ONLY|READ WRITE;,例: ALTER TABLESPACE USER1_DATA ONLINE; -表空间USER1_DATA联机。 ALTER TABLESPACE USER1_DATA OFFLINE; -表空间USER1_DATA脱机。 ALTER TABLESPACE USER1_DATA READ ONLY; -表空间USER1_DATA只读。 ALTER TABLESPACE USER1_DATA READ WRITE; -表空间USER1_DATA读写。 5. 数据文件重命名 . 数据文件移动位置,改变存储磁盘。 . 数据文件改名。 要完成数据文件重命名要完成四步操作。 语句格式: ALTER TABLESPACE 表空间名 rename datafile 文件1,文件2 . to 文件a,文件b .; 例: ALTER TABLESPACE 表空间名 rename datafile E:oracleoradatauser01.dbf TO E:oracleuser.dbf;,表空间脱机,修改数据文件,执行修改语句,表空间联机,6.1.5 删除表空间 语法格式: DROP TABLESPACE 表空间名 including contents and datafiles; 其中:无选择 当表空间为空才能删除。 including contents 删除表空间及对象。 including contents and datafiles 删除表空间、对象及数据文件。 including contents cascade constrain - 删除关联。 例: DROP TABLESPACE user_data; DROP TABLESPACE user1_data including contents; DROP TABLESPACE user2_data including contents and datafiles; DROP TABLESPACE user3_data including contents and datafiles cascade constrain;,6.1.6 查询表空间 表空间的信息有两种查询方法: 1. 数据字典静态视图查询 DBA_TABLESPACES - 数据库中所有表空间的信息 USER_TABLESPACES - 当前用户中所有表空间的信息 DBA_DATA_FILES - 表空间所有数据文件信息 DBA_FREE_SPACE - 所有表空间中可用的自由区 2. 数据字典动态视图查询 V$TABLESPACE - 表空间的动态信息 V$DATAFILE - 数据文件的动态信息,6.2 临时表空间管理 6.2.1 临时表空间概念 临时表空间主要用于用户进行排序、汇总时所需的临时工作空间。 . 所有用户共用磁盘空间。 . 排序操作更加有效、性能更高。 . 事务完成后自动释放。 . 临时表空间用TEMP表示。 6.2.2 创建临时表空间 语句格式: Create temporary Tablespace 临时表空间名 Tempfile 临时数据文件名 AUTOEXTEND参数 EXTENT MANAGEMENT LOCAL Uniform Size nnnM; 例:Create temporary Tablespace TEMP2 Tempfile E:oracleoradatatestTemp01.dbf Size 50M AUTOEXTEND ON NEXT 10m maxsize 100m EXTENT MANAGEMENT LOCAL Uniform Size 5M;,6.2.3 修改临时表空间 1. 为临时表空间增加临时文件。 语句格式: ALTER TABLESPACE 临时表空间名 ADD TEMPFILE 文件 . 例: ALTER TABLESPACE TEMP2 ADD TEMPFILE E:oracleoradatatesttemp02.dbf SIZE 30M; 2. 为临时表空间的临时文件修改大小。 语句格式: ALTER DATABASE TEMPFILE 文件名 RESIZE nnnM; 例: ALTER DATABASE TEMPFILE E:oracleoradatatesttemp02.dbf RESIZE 50M; 6.2.4 查询临时表空间 1. 查询临时表空间静态视图 dba_temp_files 2. 查询临时表空间动态视图 v$tempfile、v$tempstat,6.3 UNDO表空间管理 6.2.1 创建UNDO表空间要求 . 可以创建多个UNDO表空间,同一时间只能激活一个UNDO表空间。 . 自动管理UNDO,参数UNDO_MANAGEMENT = AUTO . 指定激活的UNDO表空间,参数UNDO_TABLESPACE=UNDO表空间名 . 数据在UNDO的保留时间,参数UNDO_RETENTION=10800(9i2版) . 数据文件管理方式要求用AUTOEXTEND ON方式(自动扩展)。 . 区管理方式要求用AUTOALLOCATE方式(系统自动分配)。 6.2.2 创建UNDO表空间 语句格式: Create UNDO Tablespace UNDO表空间名 DATAfile UNDO数据文件名 AUTOEXTEND ON NEXT nnnm maxsize nnnM | Unlimited EXTENT MANAGEMENT LOCAL AUTOALLOCATE;,例:Create UNDO Tablespace UNDOTBS2 DATAfile E

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论