《oracle表空间和数据文件管理8069.pptx》由会员分享,可在线阅读,更多相关《oracle表空间和数据文件管理8069.pptx(60页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 11、增加第、增加第4组重做日志组,含组重做日志组,含3个成员,位于个成员,位于磁盘不同位置(分别为磁盘不同位置(分别为C,D,E三个盘符根目三个盘符根目录下),且每个重做日志文件大小录下),且每个重做日志文件大小15M。2、查询正在使用的日志组、查询正在使用的日志组?3、如何删除当前正在使用的日志组?、如何删除当前正在使用的日志组?QuestionOracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 25、在数据库启动到什么状态时可以获得、在数据库启动到什么状态时可以获得V$DATAFILE
2、和和V$LOGFILE视图的数据视图的数据?这些数据字典视图从什么地方获取到数据这些数据字典视图从什么地方获取到数据?4、有哪几种情况会发生日志切换?、有哪几种情况会发生日志切换?7表空间和数据文件管理表空间和数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 4目标目标在完成本章学习后,你将掌握下列技能在完成本章学习后,你将掌握下列技能:lOracle的存储结构的存储结构l表空间的管理表空间的管理l数据文件的管理数据文件的管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 5本章内容本章内容lOracle的存储结构的存储结构
3、l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 6本章内容导航本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 7Oracle的存储结构的存储结构l分为物理
4、存储结构和逻辑存储结构分为物理存储结构和逻辑存储结构Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 8Oracle的存储结构的存储结构l物理存储结构物理存储结构数据库文件在磁盘中的物理存放方式数据库文件在磁盘中的物理存放方式Oracle数据库文件主要有数据文件、日志文件、数据库文件主要有数据文件、日志文件、参数文件、控制文件参数文件、控制文件l逻辑存储结构逻辑存储结构数据库中数据的逻辑组织方式数据库中数据的逻辑组织方式Oracle逻辑存储结构主要包括表空间、段、区、逻辑存储结构主要包括表空间、段、区、块块Oracle数据库应用与设计数据库应用与设计杭州电子科技大学
5、杭州电子科技大学 9表空间的概念表空间的概念l表空间是用户可以在表空间是用户可以在Oracle系统中使用的最大系统中使用的最大的逻辑存储结构。用户在数据库中建立的所有的逻辑存储结构。用户在数据库中建立的所有内容都会存储在表空间中。内容都会存储在表空间中。l从物理上说数据库的数据存放在数据文件中,从物理上说数据库的数据存放在数据文件中,从逻辑上说数据是被存放在表空间中的。从逻辑上说数据是被存放在表空间中的。l一个表空间可以有多个数据文件。一个数据文一个表空间可以有多个数据文件。一个数据文件只能属于一个表空间。件只能属于一个表空间。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电
6、子科技大学 10数据库、表空间、数据文件、磁盘数据库、表空间、数据文件、磁盘之间关系之间关系数据库数据库表空间表空间1表空间表空间3表空间表空间2数据文件数据文件1数据文件数据文件3数据文件数据文件2磁盘磁盘1磁盘磁盘2逻辑存储结构逻辑存储结构物理存储结构物理存储结构Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 11大楼大楼数据库公司公司A公司公司BRoom601Room603Room1101Room101RoomA01表空间表空间A表空间表空间B数据文数据文件件1数据文数据文件件2数据文数据文件件3数据文数据文件件4数据文数据文件件5Oracle数据库应用与设
7、计数据库应用与设计杭州电子科技大学杭州电子科技大学 12表空间的作用表空间的作用控制数据库所占用的磁盘空间;控制用户所占用的表空间分配,即控制用户所占用的空间分配;通过将不同表的数据、分区表中不同分区的数据放置到不同的表空间(或其中的数据文件)中,可以提高数据库的I/O性能,并有利于进行部分备份和恢复等管理工作;能够将一个表的数据和这个表的索引数据分别放置到不同的表空间(或其中的数据文件)中,以提高数据库的I/O性能;可以将表空间设置成只读状态而保持大量静态数据。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 13本章内容导航本章内容导航lOracle的存储结构的
8、存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 14表空间的类型表空间的类型分类分类表空间表空间存放数据存放数据系统系统表空间表空间SYSTEMSYSAUX系统数据系统数据(数据字典表及其数据等)(数据字典表及其数据等)非系统非系统表空间表空间大表空间大表空间小表空间小表空间用户数据用户数据(表、索引等)(表、索引等)临时表空间临时表空间临时数据临时数据回滚表空间回滚表空间回滚数据回滚数据
9、Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 15创建表空间创建表空间l创建表空间语法:创建表空间语法:CREATETEMPORARY|UNDOTABLESPACE表空间名表空间名DATAFILE子句子句MINIMUMEXTENT正整数正整数K|MBLOCKSIZE正整数正整数KONLINE|OFFLINELOGGING|NOLOGGINGDEFAULTSTORAGE存储子句存储子句EXTENTMANAGEMENTDICTIONARY|LOCALAUTOALLOCATE|UNIFORMSIZE正整数正整数K|MSEGMENTSPACEMANAGEMENTAUTO
10、|MANUAL;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 16创建表空间创建表空间lTEMPORARY|UNDOTEMPORARY表示创建临时表空间表示创建临时表空间,UNDO表示表示创建回滚表空间创建回滚表空间,如未使用表示创建永久表空间。如未使用表示创建永久表空间。lDATAFILE子句子句指定与表空间相关联的数据文件的位置、名称和指定与表空间相关联的数据文件的位置、名称和大小。大小。语法如下:语法如下:DATAFILE|TEMPFILE文件名文件名SIZEK|MREUSEAUTOEXTENTOFF|ONNEXT正整数正整数K|MMAXSIZEUNLIM
11、ITED|正整数正整数K|MOracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 17SQLcreatetablespacemytbs01datafilec:mytbs01.dbfsize5m;SQLcreatetablespacemytbs02datafilec:mytbs02_1.dbfsize5m,c:mytbs02_2.dbfsize5mautoallocate;Oracle将自动按表空间中不同对象的大将自动按表空间中不同对象的大小分配相应大小的区(最小区小分配相应大小的区(最小区64k)。)。其缺点是在表空间中可能会造成一些磁其缺点是在表空间中可能会造成一些磁
12、盘空间的浪费。盘空间的浪费。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 18创建表空间创建表空间lMINIMUMEXTENT表空间中盘区可以分配到的最小的尺寸。该值是表空间中盘区可以分配到的最小的尺寸。该值是块的整数倍。块的整数倍。lBLOCKSIZE为表空间说明非标准块的大小,该选项只适用于为表空间说明非标准块的大小,该选项只适用于永久表空间。永久表空间。lONLINE|OFFLINE设置为设置为ONLINE则创建的表空间立即可以使用,则创建的表空间立即可以使用,设置为设置为OFFLINE则使表空间不可用。则使表空间不可用。Oracle数据库应用与设计数据库
13、应用与设计杭州电子科技大学杭州电子科技大学 19SQLcreatetablespacemytbs03datafilec:mytbs03.dbfsize5mautoextendonnext2mmaxsize11m;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 20创建表空间创建表空间lLOGGING|NOLOGGING表空间中所有数据变化是否写入重做日志文件中,表空间中所有数据变化是否写入重做日志文件中,默认为默认为LOGGING。lDEFAULTSTORAGE存储子句存储子句说明在该表空间中所创建的对象的默认存储参数。说明在该表空间中所创建的对象的默认存储参数。
14、Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 21CREATE TABLESPACE mytbs04 DATAFILE C:OraDbJHH_IDX00.dbf SIZE 50MAUTOEXTEND ON NEXT 50M MAXSIZE 4000M DEFAULT STORAGE(INITIAL 24K NEXT 24KMINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCREASE 0);Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 22创建表空间创建表空间lEXTENTMANAGEMENT表空间的区
15、管理方式是采用数据字典管理方式表空间的区管理方式是采用数据字典管理方式(DICTIONARY)还是本地化管理方式)还是本地化管理方式(LOCAL)。)。10g开始强烈建议使用本地化管理开始强烈建议使用本地化管理方式。本地管理方式的方式。本地管理方式的AUTOALLOCATE和和UNIFORM参数指出区的大小。参数指出区的大小。SEGMENTSPACEMANAGEMENT表空间中段的管理方式采用自动管理方式表空间中段的管理方式采用自动管理方式(AUTO)还是手动管理方式()还是手动管理方式(MANUAL)。)。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 23SQ
16、Lcreatetablespacemytbs05datafilec:mytbs05.dbfsizereuseuniformsegmentspacemanagementauto;即管理段中已用数据块和空闲数据块的方式。即管理段中已用数据块和空闲数据块的方式。虽然虽然oracle极力推荐极力推荐auto的方式,但是在的方式,但是在oracle10g中如果不使用中如果不使用segmentspacemanagement子句指定为子句指定为auto,则使用,则使用manual段管理方式。段管理方式。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 24使用使用OEM创建表空间
17、创建表空间Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 25本章内容导航本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 26临时表空间临时表空间l临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。当临时表空间不足时,表现为运算速度异常的慢。l 最好为每个
18、数据库用户都指定一个公用的临时表空间,如果不指定,这些临时数据就都会放在SYSTEM表空间中,从而产生大量的碎片。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 27临时表空间临时表空间创建临时表空间创建临时表空间l创建一个本地管理的临时表空间创建一个本地管理的临时表空间TEMPTBScreatetemporarytablespacetemptbstempfilec:oracleproduct10.2.0orcltemp01.orasize50Mautoextendonnext5Mmaxsizeunlimitedextentmanagementlocal;l把临时
19、数据放在把临时数据放在TEMP临时表空间临时表空间alterdatabasedefaulttemporarytablespacetemptbs;l查看临时文件信息查看临时文件信息selectfile#,status,bytes,namefromv$tempfile;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 28SQLcreate temporary tablespace tmptsb1 tempfile c:temptmptsb1.dbf size 4m autoallocate在临时表空间不能指定为在临时表空间不能指定为autoallocate;也不能把段
20、刊方式指定为也不能把段刊方式指定为auto方式。方式。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 29本章内容导航本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 30回滚表空间回滚表空间l 回滚(UNDO)表空间用于存放回滚数据,当执行DML操作时,Oracle会将这些操作的旧数据写入到回滚段。l Oracle9i前管
21、理回滚数据使用回滚段。l 从Oracle9i开始,管理回滚数据不仅可以使用回滚段,还可以使用回滚表空间。因为规划和管理回滚段比较复杂,所以Oracle10g已经完全丢弃用回滚段,而是使用回滚表空间来管理回滚数据。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 31回滚表空间回滚表空间回滚数据的作用回滚数据的作用l回滚事务回滚事务当执行当执行DML操作修改数据时,回滚数据被存放到回滚段,而新数据操作修改数据时,回滚数据被存放到回滚段,而新数据则被存放到数据段中,如果事务操作存在问题,就需要回退事务,则被存放到数据段中,如果事务操作存在问题,就需要回退事务,以取消事务
22、变化。以取消事务变化。l读一致性读一致性用户检索数据库数据时,用户检索数据库数据时,Oracle总是使用用户只能看到被提交过的总是使用用户只能看到被提交过的数据或特定时间点的数据,以确保数据的一致性。数据或特定时间点的数据,以确保数据的一致性。l事务恢复事务恢复如果在数据库运行过程中出现例程失败,那么当重启数据库时,后如果在数据库运行过程中出现例程失败,那么当重启数据库时,后台进程台进程SMON会自动执行例程恢复。会自动执行例程恢复。l闪回查询闪回查询取得特定时间点的数据库数据,它是取得特定时间点的数据库数据,它是9i开始新增加的特性。开始新增加的特性。Oracle数据库应用与设计数据库应用与
23、设计杭州电子科技大学杭州电子科技大学 32回滚表空间回滚表空间回滚表空间的回滚表空间的管理参数管理参数lUNDO_MANAGEMENT指定回滚数据的管理方式。如果要使用自动管理模式,必指定回滚数据的管理方式。如果要使用自动管理模式,必须设置该参数为须设置该参数为AUTO,如果使用手工管理模式,必须设,如果使用手工管理模式,必须设置该参数为置该参数为MANUAL。lUNDO_TABLESPACE指定例程所要使用的指定例程所要使用的UNDO表空间。表空间。lUNDO_RETENTION控制回滚数据的最大保留时间,其默认值为控制回滚数据的最大保留时间,其默认值为900秒。秒。Oracle数据库应用与
24、设计数据库应用与设计杭州电子科技大学杭州电子科技大学 33回滚表空间回滚表空间创建回滚表空间创建回滚表空间l创建回滚表空间创建回滚表空间UNDOTBScreateundotablespaceundotbsdatafilec:oracleproduct10.2.0orclundo01.orasize40M;创建创建undo表空间时不能指定统一区大小的选项表空间时不能指定统一区大小的选项(uniform),否则出错。),否则出错。l把回滚数据放在把回滚数据放在undotbs1回滚表空间回滚表空间altersystemsetundo_management=autoscope=spfile;alter
25、systemsetundo_tablespace=undotbsscope=spfile;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 34本章内容导航本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 35表空间的状态属性表空间的状态属性l离线(离线(Offline)状态)状态表空间不可用。任何保存在该表空间中的数据库对象
26、将不可表空间不可用。任何保存在该表空间中的数据库对象将不可存取。具有存取。具有Normal、Temporary、Immediate和和ForRecovery四种模式。四种模式。l在线(在线(Online)状态)状态用户可以访问其中的数据。用户可以访问其中的数据。l只读(只读(Read-Only)状态)状态表空间中的表只能读,不能更新。表空间中的表只能读,不能更新。l读写(读写(Read-Write)状态)状态表空间能正常使用的状态。表空间能正常使用的状态。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 36表空间的状态属性表空间的状态属性loffline状态下的四
27、种模式:状态下的四种模式:正常(正常(Normal)默认的模式,表示表空间以正常方式切换到离线状态。默认的模式,表示表空间以正常方式切换到离线状态。在此过程中,在此过程中,Oracle会执行一次检查点,将相关信息写入数会执行一次检查点,将相关信息写入数据文件中,然后再关闭表空间的所有数据文件;若在这个过据文件中,然后再关闭表空间的所有数据文件;若在这个过程未发生任何错误,则进入了程未发生任何错误,则进入了normal的离线状态。下次转回的离线状态。下次转回Online的时候,不需要恢复。的时候,不需要恢复。临时(临时(Temporary)表示表空间以临时的方式切换到离线状态。在此过程中,表示表
28、空间以临时的方式切换到离线状态。在此过程中,Oracle会执行一次检查点,但在执行检查点的时候并不会检会执行一次检查点,但在执行检查点的时候并不会检查各个数据文件的状态,即使某些数据文件处于不可用的状查各个数据文件的状态,即使某些数据文件处于不可用的状态,态,Oracle也会忽略这些错误而进入也会忽略这些错误而进入temporary状态。因此状态。因此在下次转回在下次转回Online的时候,可能要恢复。的时候,可能要恢复。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 37表空间的状态属性表空间的状态属性loffline状态下的四种模式:状态下的四种模式:立即(立
29、即(Immediate)表示表空间以立即的方式切换到离线状态。这时表示表空间以立即的方式切换到离线状态。这时Oracle不会执行检查点,也不会检查数据文件是否可用,而是直接不会执行检查点,也不会检查数据文件是否可用,而是直接将属于该表空间的数据文件设置为脱机状态。因此在转回将属于该表空间的数据文件设置为脱机状态。因此在转回Online的时候,必须恢复。的时候,必须恢复。用于恢复(用于恢复(ForRecovery)表示表空间以用于恢复的方式切换到离线状态。如果要表示表空间以用于恢复的方式切换到离线状态。如果要对表空间进行基于时间的恢复,可用此种模式。对表空间进行基于时间的恢复,可用此种模式。Or
30、acle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 38表空间的状态设置表空间的状态设置l把表空间把表空间users以以Temporary方式置于离线状态方式置于离线状态altertablespaceusersofflinetemporary;l把表空间把表空间users置于在线状态置于在线状态altertablespaceusersonline;l把表空间把表空间users置于只读状态置于只读状态altertablespaceusersreadonly;l把表空间把表空间users置于读写状态置于读写状态altertablespaceusersreadwrite;Ora
31、cle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 39本章内容导航本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 40表空间信息查询表空间信息查询l查询表空间的基本信息查询表空间的基本信息SQLselecttablespace_name,contents,statusfromdba_tablespaces;查询表空间的默认存储参数
32、查询表空间的默认存储参数SQLselecttablespace_name,initial_extent,next_extent,extent_managementfromdba_tablespaces;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 41表空间信息查询表空间信息查询l查询表空间中数据文件的信息查询表空间中数据文件的信息SQLselecttablespace_name,file_name,bytes/(1024*1024)MBfromdba_data_files;查询表空间中空闲空间大小查询表空间中空闲空间大小SQLselecttablespace_
33、name,sum(bytes/(1024*1024)free_MBfromdba_free_spacegroupbytablespace_name;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 42-设置数据库默认表空间设置数据库默认表空间SQLalterdatabasedefaulttablespacemytbs01;-设置数据库默认临时表空间设置数据库默认临时表空间SQLalterdatabasedefaulttemporarytablespacemytmptbs01;-查询数据库的默认表空间查询数据库的默认表空间SQLselectusername,defa
34、ult_tablespace,temporary_tablespacefromdba_users;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 43本章内容导航本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 44删除表空间删除表空间l删除表空间语法:删除表空间语法:DROPTABLESPACE表空间名表空间名INCLUD
35、INGCONTENTSANDDATAFILESCASCADECONSTRAINTS;INCLUDINGCONTENTS:将表空间及其中保存:将表空间及其中保存的数据库对象全部删除。的数据库对象全部删除。ANDDATAFILES:删除表空间同时也删除对应:删除表空间同时也删除对应的数据文件。的数据文件。CASCADECONSTRAINTS:删除所有的引用完:删除所有的引用完整性约束。整性约束。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 45OEM中管理表空间中管理表空间Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 46本章内容导航
36、本章内容导航lOracle的存储结构的存储结构l创建表空间创建表空间l临时表空间临时表空间l回滚表空间回滚表空间l表空间的状态表空间的状态l表空间信息查询表空间信息查询l删除表空间删除表空间l数据文件管理数据文件管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 47数据文件是用于存储数据库中数据的操作系统文件。数据文件和表空间是密不可分的,一个表空间不能没有数据文件,而一个数据文件只能属于一个表空间。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 48数据文件管理数据文件管理l 数据文件用来存储数据库的数据。l 读取数据时,先从数据
37、文件中读取数据,并存储到SGA的数据缓冲区中,如果缓冲区中已有要读取的数据,就不要再从磁盘中读取了。存储数据时,事务提交时改变的数据先存储到数据缓冲区中,再由后台进程DBWR决定如何将其写入到数据文件中。l 表空间在物理上表现为数据文件,通过查询数据字典视图DBA_DATA_FILES可以了解表空间和与其对应的数据文件。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 49数据文件创建数据文件创建l创建数据文件的创建数据文件的SQL语句及说明语句及说明SQL语句语句说明说明createtablespace创建一个表空间和组成它的数据文件创建一个表空间和组成它的数据文
38、件createtemporarytablespace创建一个临时表空间和组成它的临时文件(临时文件创建一个临时表空间和组成它的临时文件(临时文件是一种特殊的数据文件,用于存放临时数据,不能永是一种特殊的数据文件,用于存放临时数据,不能永久存放用户数据)久存放用户数据)altertablespaceadddatafile创建一个数据文件,并将其添加到(永久)表空间创建一个数据文件,并将其添加到(永久)表空间altertablespaceaddtempfile创建一个临时文件,并将其添加到临时表空间创建一个临时文件,并将其添加到临时表空间createdatabase创建一个数据库及其和创建一个数据
39、库及其和system表空间关联的数据文件表空间关联的数据文件Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 50数据文件管理数据文件管理数据文件的新增和大小修改数据文件的新增和大小修改l为表空间为表空间users增加一个数据文件增加一个数据文件altertablespaceusertbsadddatafilec:oracleproduct10.2.0orcluser03.orasize50M;l修改数据文件修改数据文件user03的大小为的大小为100Malterdatabasedatafilec:oracleproduct10.2.0orcluser03.ora
40、resize100M;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 51数据文件管理数据文件管理数据文件自动扩展数据文件自动扩展l查询查询USERTBS表空间中各数据文件自动扩展属性表空间中各数据文件自动扩展属性selectfile_name,autoextensiblefromdba_data_fileswheretablespace_name=USERTBS;l设置数据文件设置数据文件user03可自动扩展可自动扩展alterdatabasedatafilec:oracleproduct10.2.0orcluser03.oraautoextendonnext
41、10mmaxsizeunlimited;l关闭数据文件关闭数据文件user03的自动扩展的自动扩展alterdatabasedatafilec:oracleproduct10.2.0orcluser03.oraautoextendoff;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 52数据文件管理数据文件管理移动数据文件移动数据文件l移动表空间的数据文件包括移动表空间的数据文件包括4步步:修改表空间为修改表空间为offline状态状态复制数据文件到另外一个磁盘复制数据文件到另外一个磁盘使用使用altertablespacerenamedatafile语句修改数
42、语句修改数据文件的名称据文件的名称(适用于移动同一表空间的数据文件适用于移动同一表空间的数据文件);或使用;或使用alterdatabaserenamefile语句修改数语句修改数据文件的名称据文件的名称(适用于移动多个表空间的数据文件适用于移动多个表空间的数据文件)切换表空间状态为切换表空间状态为onlineOracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 53在在OPEN状态下移动数据文件状态下移动数据文件移动同一个表空间的数据文件移动同一个表空间的数据文件1、SQLaltertablespacemytbs01offline;2、把数据文件复制到新的位置、把数据
43、文件复制到新的位置3、SQLaltertablespacemytbs01renamedatafilec:mytbs01_1.dbf,c:mytbs01_2.dbftoc:newmytbs01_1.dbf,c:newmytbs01_2.dbf4、SQLaltertablespacemytbs01online;-5、备份控制文件或数据库、备份控制文件或数据库SQLalterdatabasebackupcontrolfiletotraceOracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 54移动多个表空间的数据文件移动多个表空间的数据文件1、SQLaltertablesp
44、acemytbs03offline;SQLaltertablespacemytbs02offline;2、把数据文件复制到新的位置、把数据文件复制到新的位置3、SQLaltertablespacemytbs01renamedatafilec:mytbs02_1.dbf,c:mytbs03_2.dbftoc:newmytbs02_1.dbf,c:newmytbs03_2.dbf4、SQLaltertablespacemytbs02online;SQLaltertablespacemytbs03online;-5、备份控制文件或数据库、备份控制文件或数据库SQLalterdatabasebacku
45、pcontrolfiletotraceOracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 55在在mount状态下移动数据文件状态下移动数据文件因为系统表空间(因为系统表空间(system、sysaux)不能被脱机,所以要)不能被脱机,所以要移动数据文件只能在移动数据文件只能在mount状态下进行。状态下进行。1)SQLshutdownimmediate;2)SQLstartupmount;3)移动数据文件移动数据文件4)SQLalterdatabaserenamefilec:oracleproduct10.2.0oradataorclsystem01.dbftoc:
46、system01.dbf;5)SQLalterdatabaseopen;6)备份控制文件或数据库。备份控制文件或数据库。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 56数据文件管理数据文件管理online和和offline属性属性lonline表示数据文件可以被正常使用。表示数据文件可以被正常使用。offline表示数据文件不能被使用。表示数据文件不能被使用。offlinedrop将数据文件置为将数据文件置为offline状态,并删除数据文件。状态,并删除数据文件。只有在数据库运行在归档模式下,才可以将数据只有在数据库运行在归档模式下,才可以将数据文件设为文件
47、设为offline状态;若运行在非归档模式下,则状态;若运行在非归档模式下,则可以将数据文件设为可以将数据文件设为offlinedrop。Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 57数据文件管理数据文件管理数据文件删除数据文件删除l删除一个数据文件删除一个数据文件alterdatabasedatafilec:disk3orcluser03.oraofflinedrop;此时只是把文件状态变为此时只是把文件状态变为recover,没有从数据库,没有从数据库磁盘中删除文件,可恢复磁盘中删除文件,可恢复恢复数据文件恢复数据文件介质恢复介质恢复recoverdat
48、afilec:disk3orcluser03.ora;alterdatabasedatafilec:disk3orcluser03.oraonline;Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 58查询数据文件的信息查询数据文件的信息1、查询数据文件的信息、查询数据文件的信息数据字典视图数据字典视图dba_data_files或动态数据字典视图或动态数据字典视图V$datafile2、查询临时文件的信息、查询临时文件的信息数据字典视图数据字典视图dba_temp_files3、查询数据文件的使用信息、查询数据文件的使用信息可以在可以在OEM中查看中查看4、查
49、询数据文件的读写统计信息、查询数据文件的读写统计信息动态视图动态视图v$filestat和和v$tempstatOracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 59OEM中数据文件的管理中数据文件的管理Oracle数据库应用与设计数据库应用与设计杭州电子科技大学杭州电子科技大学 60本章内容小结本章内容小结lOracle的逻辑存储结构和物理存储结构的逻辑存储结构和物理存储结构l表空间的创建和删除语法表空间的创建和删除语法l表空间的表空间的4个状态及其设置个状态及其设置l临时表空间和回滚表空间的理解和创建临时表空间和回滚表空间的理解和创建l表空间查询相关数据字典表空间查询相关数据字典l数据文件的新建、修改、移动和自动扩展数据文件的新建、修改、移动和自动扩展