管理表空间和数据文件.ppt

上传人:本田雅阁 文档编号:2263136 上传时间:2019-03-13 格式:PPT 页数:41 大小:114.51KB
返回 下载 相关 举报
管理表空间和数据文件.ppt_第1页
第1页 / 共41页
管理表空间和数据文件.ppt_第2页
第2页 / 共41页
管理表空间和数据文件.ppt_第3页
第3页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《管理表空间和数据文件.ppt》由会员分享,可在线阅读,更多相关《管理表空间和数据文件.ppt(41页珍藏版)》请在三一文库上搜索。

1、,管理表空间和数据文件,1.各种表空间的创建 2.表空间的可用性和读写模式 3.数据文件的创建和添加 4.改变数据文件(表空间)大小的方法 5.数据文件的可用性 6.表空间和数据文件的删除 7.数据文件的移动和重命名方法,表空间的存储管理方式,Oracle9i中表空间存储管理方式分为两种:字典管理方式表空间;本地管理方式表空间。 在创建表空间时选择其中一种空间管理方法,在以后将无法改变该方法。 在Orade8i之前,所有表空间都是基于数据字典进行管理的;从Oracle8i开始,允许使用本地管理表空间 ,默认为字典管理表空间。 但是从Orade9i开始,默认为本地管理方式表空间。如果要建立字典管

2、理表空间,则必须指定extent management dictionary子句。,创建表空间的语法,CREATE UNDOTABLESPACE tablespace DATAFILE datafile_clause, datafile_clause MINIMUM EXTENT integer K|M|BLOCKSIZE integerK |LOGGING | NOLOGGING |DEFAULT storage_clause |ONLINE |OFFLINE |PERMANENT |TEMPORARY |extent_management_clause |segment_managemen

3、t_clause 撤销表空间、用户表空间、临时表空间,创建用户表空间,1、创建本地管理方式的表空间(效率高) 2、创建字典管理的表空间(存储管理灵活),创建本地管理方式的表空间,CREATE TABLESPACE USER01 DATAFILE d:oralceoradatadb01userdata01.dbf SIZE 5M EXTENT MANAGEMENT LOCAL(可省略,默认)AUTOALLOCATE UNIFORM size 128K OEM方式创建,本地管理的表空间具有的优点,避免了递归空间管理操作。在字典管理表空间上的分配和释放区会导致访问回滚段和 数据字典基表,而在本地管理

4、表空间上的分配和释放区只需要修改其数据文件对应位图值。 降低了在数据字典基表上的冲突。因为本地管理表空间的“自由空间”信息没有记录 到数据字典基表上,所以分配和释放区时避免了访问数据字典基表。 不需要合并空间碎片。本地管理表空间会自动跟踪并合并相邻自由空间,而字典管理 表空间则可能需要手工合并空间碎片。 分配和释放区不会生成回滚信息。本地管理表空间分配和释放区仅仅修改其数据文件位图,而字典管理表空间分配和释放区要修改数据字典基表。,创建字典管理的表空间,CREATE TABLESPACE USER02 DATAFILE d:oralceoradatadb01userdata02.dbf SIZ

5、E 5M EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE( INITIAL 50K NEXT 50K MINEXTENTS 2 PCTINCREASE 0 MAXEXTENTS 50) 区的分配通过存储子句设置。段的管理与本地表空间一样。没有显示指定,则继承表空间这些参数设置。 如果Oracle 9i的SYSTEM表空间为本地管理方式,其它用户表空间必须使用本地管理方式。,创建本地管理方式的临时表空间,create temporary tablespace usertemp tempfile d:oralceoradatadb01usertemp01.

6、dbf size 500M reuse extent management local uniform size 16M; OEM方式,创建字典管理方式的临时表空间,与创建普通的字典管理方式的表空间类似,但需要指定TEMPORARY子句。 create tablespace usertemp02 datafile d:oralceoradatadb01usertemp02.dbf size 50M extent management dictionary default storage (initial 2M next 2M pctincrease 0 maxextents unlimited

7、) temporary;,修改表空间默认存储参数,INITIAL NEXT PCTINCREASE MINEXTENTS MAXEXTENTS Alter TABLESPACE tablespace minimum extent integer k|m | default storage_clause,alter tablespace app_data minimum extent 2m; alter tablespace app_data default storage initial 2m next 2m maxextents 999);,改变表空间的可用性,可用性指表空间处于联机状态还是

8、脱机状态。联机,用户才能访问表空间的数据。脱机状态下,用户和Oracle都无法访问该表空间中的数据。 使表空间脱机的情况: (1)禁用数据库的某一部分数据,但允许访问数据库中的其他部分。 (2)进行脱机表空间的备份。 (3)在数据库打开状态下恢复表空间或数据文件。 System表空间、包含活动的重做段表空间已经默认的临时表空间都不能被脱机。,联机脱机语法格式,alter TABLESPACE tablespacename online |offline normal|temporary|immediate|for recover OEM方式,normal:该选项为默认值。在进入脱机状态的过程中

9、,Oracle会执行一次检查点,把SGA中所有暂存缓冲块写入数据文件并将数据文件关闭。在使此表空间重新联机之前,无须对其执行介质恢复,应尽可能使用normal。 temporary:Oracle对表空间内的所有联机数据文件执行检查点操作,在执行检查点时并不检查各个数据文件的状态,即使某些数据文件处于不可用状态,Oracle也会忽略这些错误。在使此表空间重新联机之前,脱机文件可能需要介质恢复。,immediate:这时Oracle不保证表空间文件可用,也不执行检查点,而是直接将该表空间的数据文件设置为脱机状态。在使此表空间重新联机之前,必须对脱机文件执行介质恢复操作。 for recover:如

10、果要对表空间进行基于时间的恢复,可以使用该参数将表空间切换到脱机状态。随后DBA可以使用备份的数据文件覆盖原有的数据文件,然后再为数据文件应用归档重做日志文件,将表空间恢复为某个时间点的状态。Oracle9i不赞成使用这个选项,它是为向后兼容保留的。,表空间的读写模式,如果不想让用户修改表空间中的任何数据,可以将表空间设置为只读。只读表空间只用于读取操作,不能进行写操作。system表空间不能设置为只读。 alter tablespace user read only|read write; (设置表空间读写要满足条件。) OEM方式,删除表空间,DROP TABLESPACE tablesp

11、ace including contentsand datafiles cascade constraints 在删除之前,必须确认其中的数据不需要在使用。在删除前和删除后对数据库进行完全备份。恢复。 不选用Including contents,无法删除包含有数据的表空间。(不能删除系统表空间) 不选择and datafiles,只删除控制文件和数据字典中数据文件信息。手工删除数据文件。 可删除只读表空间 删除表空间前,最好设置为脱机。确保没有活动的事务。,创建和添加数据文件,CREATE TABLESPACE 创建表空间及其数据文件 CREATE TEMPORARY TABLESPACE 创

12、建本地管理的临时表空间及其数据库文件 ALTER TABLESPACE ADD DATAFILE 创建数据文件并将其加入到表空间中 ALTER TABLESPACE ADD TEMPFILE 创建临时数据文件并将其加入到临时表空间中,datafilename size integerk|m reuse autoextend off|onnext integerk|m maxsize unlimited|integerk|m CREATE TABLESPACE DATA01 DATAFILE d:oracleoradatadb01data01.dbf SIZE 5M AUTOEXTEND OFF

13、, d:oracleoradatadb01data01.dbf SIZE 5M AUTOEXTEND ON MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL;,ALTER TABLESPACE tablespace ADD DATAFILE|TEMPFILE datafile_file_spec, datafile_file_spec Alter tablespace data01 add datafile d:oracleoradatadb01data01.dbf SIZE 5M AUTOEXTEND ON MAXSIZE UNLIMITED,OEM方式创建

14、和添加数据文件,改变数据文件大小,1、建立数据文件时设置自动增长方式。 在使用create tablespace 或alter tablespace时,指定数据文件定义子句的autoextend on参数将数据文件设置为自动增长方式。 2、更改已有数据文件为自动增长方式(已有数据文件为手工增长方式) ALTER DATABASE DATAFILE|TEMPFILE filename AUTOEXTEND OFF|ONNEXT integerK|M MAXSIZE UNLIMITED|integerK|M,改变数据文件大小,3、手工改变数据文件的大小 使用ALTER DATABASE DATAF

15、ILE RESIZE语句。 ALTER DATABASE DATAFILE d:oracleoradatadb01data01.dbf RESIZE 20M,OEM方式改变数据文件大小,改变数据文件的可用性,联机的数据文件可以被数据库使用,脱机的数据文件不能被数据库使用,也不能被用户访问。 数据文件设置为脱机状态,不会改变表空间的状态。但是如果表空间设置为脱机,则属于该表空间的所有数据文件都将进入脱机状态。,在归档模式中改变数据文件的可用性,ALTER DATABASE DATAFILE filename,filename ONLINE|OFFLINEDROP DROP在不归档模式下必须使用

16、ALTER DATABASE DATAFILE d:oracleoradatadb01data01.dbf OFFLINE ALTER DATABASE DATAFILE d:oracleoradatadb01data01.dbf ONLINE,在不归档模式中改变数据文件的可用性,ALTER DATABASE DATAFILE filename,filename ONLINE|OFFLINEDROP DROP在不归档模式下必须使用 使数据文件脱机,而且立即被删除。逻辑删除。,改变一个表空间中所有数据文件的可用性,ALTER TABLESPACE tablespace DATAFILE ONLI

17、NE|OFFLINE,数据文件的重命名和移动,1、alter tablespace命令重命名和移动 2、alter database命令重命名和移动 没有活动的还原数据或临时段的非系统表空间的数据文件,alter tablespace命令重命名和移动,(1)使用ALTER TABLESPACE将包含需要改名或移动的表空间脱机。ALTER TABLESPACE USER03 OFFLINE NORMAL (2)在操作系统中,重命名数据文件并移动数据文件 (3)对数据文件重命名 ALTER TABLESPACE tablespace RENAME DATAFILE filename,filenam

18、e TO filename,filename ALTER TABLESPACE USER03 RENAME DATAFILE d:oracleoradatadb01data03.dbf TO e:oracleoradatadb01data01.dbf (4)重新使表空间联机。 ALTER TABLESPACE USER03 ONLINE,alter database命令重命名和移动,(1)关闭数据库。SHUTDOWN (2)在操作系统中,重命名数据文件并且移动数据文件 (3)装载但不打开数据库 STARTUP MOUNT (4)对属于不同表空间的多个数据文件重命名 ALTER DATABASE

19、 RENAME FILE filename,filename TO filename,filename,ALTER DATABASE RENAME FILE d:oracleoradatadb01data04.dbf , d:oracleoradatadb01data05.dbf TO e:oracleoradatadb01data04.dbf , e:oracleoradatadb01data05.dbf (5)ALTER DATABASE 打开数据库,如果要打开系统表空间的数据文件,如何操作?,删除数据文件,当表空间以及表空间的内容不需要时,可以使用DROP TABLESPACE删除表空间

20、,在删除表空间的时候数据文件也被删除掉。 删除数据文件语句 ALTER DATABASE DATAFILE filename OFFLINE DROP,查询表空间信息,V$TABLESPACE DBA_TABLESPACE (USER) DBA_SEGMENTS(USER) DBA_EXTENTS (USER) DBA_FREE_SPACE (USER) V$DATAFILE V$TEMPFILE,查询数据文件信息,DBA_DATA_FILES DBA_EXTENTS(USER) DBA_FREE_SPACE(USER) V$DATAFILE V$DATAFILE_HEADER,数据库结构:D

21、BA_TABLESPACES,DBA_DATA_FILES 数据文件信息 V$datafile;,综合训练项目,(1)查看system表空间的大小,对应的数据文件的路径和名称。 (2)创建本地管理表空间DATA01,包含大小为1MB的一个数据文件,数据文件位于C盘根目录,每个区的大小为64KB。 (3)向上述表空间插入一个新表Table1,并插入数据。 (4)通过改变数据文件大小,将表空间DATA01大小增加为2MB。 (5)将数据文件改为空间自动增长,允许每次自动扩展500KB,最大大小为5MB。,(6)将表空间DATA01对应的数据文件从C盘根目录移动到数据文件默认路径。 (7)为表空间DATA01增加一个新的数据文件。 (8)改变DATA01表空间为只读表空间,删除创建的第一个表,解释发生现象。 (9)删除表空间DATA01和数据文件。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1