oracle表空间和数据文件管理_第1页
oracle表空间和数据文件管理_第2页
oracle表空间和数据文件管理_第3页
oracle表空间和数据文件管理_第4页
oracle表空间和数据文件管理_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、增加第4组重做日志组,含3个成员,位于磁盘不同位置(分别为C,D,E三个盘符根目录下),且每个重做日志文件大小15M。2、查询正在使用的日志组?3、如何删除当前正在使用的日志组?Question5、在数据库启动到什么状态时可以获得V$DATAFILE和V$LOGFILE视图的数据?这些数据字典视图从什么地方获取到数据?4、有哪几种情况会发生日志切换?表空间和数据文件管理目标在完成本章学习后,你将掌握下列技能:Oracle的存储结构表空间的管理数据文件的管理本章内容

Oracle的存储结构创建表空间临时表空间回滚表空间表空间的状态表空间信息查询删除表空间数据文件管理本章内容导航

Oracle的存储结构创建表空间临时表空间回滚表空间表空间的状态表空间信息查询删除表空间数据文件管理Oracle的存储结构分为物理存储结构和逻辑存储结构Oracle的存储结构物理存储结构数据库文件在磁盘中的物理存放方式Oracle数据库文件主要有数据文件、日志文件、参数文件、控制文件逻辑存储结构数据库中数据的逻辑组织方式Oracle逻辑存储结构主要包括表空间、段、区、块表空间的概念表空间是用户可以在Oracle系统中使用的最大的逻辑存储结构。用户在数据库中建立的所有内容都会存储在表空间中。从物理上说数据库的数据存放在数据文件中,从逻辑上说数据是被存放在表空间中的。一个表空间可以有多个数据文件。一个数据文件只能属于一个表空间。数据库、表空间、数据文件、磁盘

之间关系数据库表空间1表空间3表空间2数据文件1数据文件3数据文件2磁盘1磁盘2逻辑存储结构物理存储结构大楼数据库公司A公司BRoom601Room603Room1101Room101RoomA01表空间A表空间B数据文件1数据文件2数据文件3数据文件4数据文件5表空间间的作作用控制数数据库库所占占用的的磁盘盘空间间;控制用用户所所占用用的表表空间间分配配,即即控制制用户户所占占用的的空间间分配配;通过将将不同同表的的数据据、分分区表表中不不同分分区的的数据据放置置到不不同的的表空空间((或其其中的的数据据文件件)中中,可可以提提高数数据库库的I/O性能,,并有有利于于进行行部分分备份份和恢恢复等等管理理工作作;能够将将一个个表的的数据据和这这个表表的索索引数数据分分别放放置到到不同同的表表空间间(或或其中中的数数据文文件))中,,以提提高数数据库库的I/O性能;;可以将将表空空间设设置成成只读读状态态而保保持大大量静静态数数据。。本章内内容导导航Oracle的存储储结构构创建表表空间间临时表表空间间回滚表表空间间表空间间的状状态表空间间信息息查询询删除表表空间间数据文文件管管理表空间间的类类型分类表空间存放数据系统表空间SYSTEMSYSAUX系统数据(数据字典表及其数据等)非系统表空间大表空间小表空间用户数据(表、索引等)临时表空间临时数据

回滚表空间回滚数据创建表表空间间创建表表空间间语法法:CREATE[TEMPORARY|UNDO]TABLESPACE表空间间名[DATAFILE子句][MINIMUMEXTENT正整数数[K|M]][BLOCKSIZE正整数数K][ONLINE|OFFLINE][LOGGING|NOLOGGING][DEFAULTSTORAGE存储子子句][EXTENTMANAGEMENTDICTIONARY|LOCAL[AUTOALLOCATE|UNIFORMSIZE正整数数K|M]][SEGMENTSPACEMANAGEMENTAUTO|MANUAL];创建表表空间间TEMPORARY|UNDOTEMPORARY表示创创建临临时表表空间间,UNDO表示创创建回回滚表表空间间,如未使使用表表示创创建永永久表表空间间。DATAFILE子句指定与与表空空间相相关联联的数数据文文件的的位置置、名名称和和大小小。语法如如下::DATAFILE|TEMPFILE‘文件名名’SIZEK|MREUSE[AUTOEXTENTOFF|ON[NEXT正整数数K|MMAXSIZEUNLIMITED|正整数数K|M]]SQL>createtablespacemytbs01datafile‘‘c:\mytbs01.dbf’’size5m;SQL>createtablespacemytbs02datafile‘‘c:\mytbs02_1.dbf’’size5m,‘c:\mytbs02_2.dbf’’size5mautoallocate;Oracle将自动动按表表空间间中不不同对对象的的大小小分配配相应应大小小的区区(最最小区区64k)。其缺缺点是在在表空间间中可能能会造成成一些磁磁盘空间间的浪费费。创建表空空间MINIMUMEXTENT表空间中中盘区可可以分配配到的最最小的尺尺寸。该该值是块块的整数数倍。BLOCKSIZE为表空间间说明非非标准块块的大小小,该选选项只适适用于永永久表空空间。ONLINE|OFFLINE设置为ONLINE则创建的的表空间间立即可可以使用用,设置置为OFFLINE则使表空空间不可可用。SQL>createtablespacemytbs03datafile‘‘c:\mytbs03.dbf’’size5mautoextendonnext2mmaxsize11m;创建表空空间LOGGING|NOLOGGING表空间中中所有数数据变化化是否写写入重做做日志文文件中,,默认为为LOGGING。DEFAULTSTORAGE存储子句句说明在该该表空间间中所创创建的对对象的默默认存储储参数。。CREATETABLESPACEmytbs04DATAFILE'C:\OraDb\JHH_IDX00.dbf'SIZE50MAUTOEXTENDONNEXT50MMAXSIZE4000MDEFAULTSTORAGE(INITIAL24KNEXT24KMINEXTENTS1MAXEXTENTSUNLIMITEDPCTINCREASE0);创建表空空间EXTENTMANAGEMENT表空间的的区管理理方式是是采用数数据字典典管理方方式(DICTIONARY)还是本本地化管管理方式式(LOCAL)。10g开始强烈烈建议使使用本地地化管理理方式。。本地管管理方式式的AUTOALLOCATE和UNIFORM参数指出出区的大大小。SEGMENTSPACEMANAGEMENT表空间中中段的管管理方式式采用自自动管理理方式((AUTO)还是手手动管理理方式((MANUAL)。SQL>createtablespacemytbs05datafile‘‘c:\mytbs05.dbf’’sizereuseuniformsegmentspacemanagementauto;即管理段段中已用用数据块块和空闲闲数据块块的方式式。虽然然oracle极力推荐荐auto的方式,,但是在在oracle10g中如果不不使用segmentspacemanagement子句指定定为auto,则使用用manual段管理方方式。使用OEM创建表空空间本章内容容导航Oracle的存储结结构创建表空空间临时表空空间回滚表空空间表空间的的状态表空间信信息查询询删除表空空间数据文件件管理临时表空空间临时表空空间主要要用途是是在数据据库进行行排序运运算、管管理索引引、访问问视图等等操作时时提供临临时的运运算空间间,当运运算完成成之后系系统会自自动清理理。当临临时表空空间不足足时,表表现为运运算速度度异常的的慢。最好为每每个数据据库用户户都指定定一个公公用的临临时表空空间,如如果不指指定,这这些临时时数据就就都会放放在SYSTEM表空间中中,从而而产生大大量的碎碎片。临时表空空间——创建临时时表空间间创建一个个本地管管理的临临时表空空间TEMPTBScreatetemporarytablespacetemptbstempfile'c:\oracle\product\10.2.0\orcl\temp01.ora'size50Mautoextendonnext5Mmaxsizeunlimitedextentmanagementlocal;把临时数数据放在在TEMP临时表空空间alterdatabasedefaulttemporarytablespacetemptbs;查看临时时文件信信息selectfile#,status,bytes,namefromv$tempfile;SQL>createtemporarytablespacetmptsb1tempfile‘‘c:\temp\tmptsb1.dbf’size4mautoallocate在临时表表空间不不能指定定为autoallocate;也不能把把段刊方方式指定定为auto方式。本章内容容导航Oracle的存储结结构创建表空空间临时表空空间回滚表空空间表空间的的状态表空间信信息查询询删除表空空间数据文件件管理回滚表空空间回滚(UNDO)表空间用用于存放放回滚数数据,当当执行DML操作时,Oracle会将这些操作作的旧数据写写入到回滚段段。Oracle9i前管理回滚数数据使用回滚滚段。从Oracle9i开始,管理回回滚数据不仅仅可以使用回回滚段,还可可以使用回滚滚表空间。因因为规划和管管理回滚段比比较复杂,所所以Oracle10g已经完全丢弃弃用回滚段,,而是使用回回滚表空间来来管理回滚数数据。回滚表空间——回滚数据的作作用回滚事务当执行DML操作修改数据据时,回滚数数据被存放到到回滚段,而而新数据则被被存放到数据据段中,如果果事务操作存存在问题,就就需要回退事事务,以取消消事务变化。。读一致性用户检索数据据库数据时,,Oracle总是使用用户户只能看到被被提交过的数数据或特定时时间点的数据据,以确保数数据的一致性性。事务恢复如果在数据库库运行过程中中出现例程失失败,那么当当重启数据库库时,后台进进程SMON会自动执行例例程恢复。闪回查询取得特定时间间点的数据库库数据,它是是9i开始新增加的的特性。回滚表空间——回滚表空间的的管理参数UNDO_MANAGEMENT指定回滚数据据的管理方式式。如果要使使用自动管理理模式,必须须设置该参数数为AUTO,如果使用手手工管理模式式,必须设置置该参数为MANUAL。UNDO_TABLESPACE指定例程所要要使用的UNDO表空间。UNDO_RETENTION控制回滚数据据的最大保留留时间,其默默认值为900秒。回滚表空间——创建回滚表空空间创建回滚表空空间UNDOTBScreateundotablespaceundotbsdatafile'c:\oracle\product\10.2.0\orcl\undo01.ora'size40M;创建undo表空间时不能能指定统一区区大小的选项项(uniform),否则出错错。把回滚数据放放在undotbs1回滚表空间altersystemsetundo_management=autoscope=spfile;altersystemsetundo_tablespace=undotbsscope=spfile;本章内容导航航Oracle的存储结构创建表空间临时表空间回滚表空间表空间的状态态表空间信息查查询删除表空间数据文件管理理表空间的状态态属性离线(Offline)状态表空间不可用用。任何保存存在该表空间间中的数据库库对象将不可可存取。具有有Normal、Temporary、Immediate和ForRecovery四种模式。在线(Online)状态用户可以访问问其中的数据据。只读(Read-Only)状态表空间中的表表只能读,不不能更新。读写(Read-Write)状态表空间能正常常使用的状态态。表空间的状态态属性offline状态下的四种种模式:正常(Normal)默认的模式,,表示表空间间以正常方式式切换到离线线状态。在此此过程中,Oracle会执行一次检检查点,将相相关信息写入入数据文件中中,然后再关关闭表空间的的所有数据文文件;若在这这个过程未发发生任何错误误,则进入了了normal的离线状态。。下次转回Online的时候,不需需要恢复。临时(Temporary)表示表空间以以临时的方式式切换到离线线状态。在此此过程中,Oracle会执行一次检检查点,但在在执行检查点点的时候并不不会检查各个个数据文件的的状态,即使使某些数据文文件处于不可可用的状态,,Oracle也会忽略这些些错误而进入入temporary状态。因此在在下次转回Online的时候,可能能要恢复。表空间的状态态属性offline状态下的四种种模式:立即(Immediate)表示表空间以以立即的方式式切换到离线线状态。这时时Oracle不会执行检查查点,也不会会检查数据文文件是否可用用,而是直接接将属于该表表空间的数据据文件设置为为脱机状态。。因此在转回回Online的时候,必须须恢复。用于恢复(ForRecovery)表示表空间以以用于恢复的的方式切换到到离线状态。。如果要对表表空间进行基基于时间的恢恢复,可用此此种模式。表空间的状态态设置把表空间users以Temporary方式置于离线线状态altertablespaceusersofflinetemporary;把表空间users置于在线状态态altertablespaceusersonline;把表空间users置于只读状态态altertablespaceusersreadonly;把表空间users置于读写状态态altertablespaceusersreadwrite;本章内容导航航Oracle的存储结构创建表空间临时表空间回滚表空间表空间的状态态表空间信息查查询删除表空间数据文件管理理表空间信息查查询查询表空间的的基本信息SQL>selecttablespace_name,contents,statusfromdba_tablespaces;查询表空间的的默认存储参参数SQL>selecttablespace_name,initial_extent,next_extent,extent_managementfromdba_tablespaces;表空间信息查查询查询表空间中中数据文件的的信息SQL>selecttablespace_name,file_name,bytes/(1024*1024)MBfromdba_data_files;查询表空间中中空闲空间大大小SQL>selecttablespace_name,sum(bytes/(1024*1024))free_MBfromdba_free_spacegroupbytablespace_name;--设置数据库默默认表空间SQL>alterdatabasedefaulttablespacemytbs01;--设置数据库默默认临时表空空间SQL>alterdatabasedefaulttemporarytablespacemytmptbs01;--查询数据库的的默认表空间间SQL>selectusername,default_tablespace,temporary_tablespacefromdba_users;本章内容导航航Oracle的存储结构创建表空间临时表空间回滚表空间表空间的状态态表空间信息查查询删除表空间数据文件管理理删除表空间删除表空间语语法:DROPTABLESPACE表空间名[INCLUDINGCONTENTS[ANDDATAFILES]][CASCADECONSTRAINTS]

;INCLUDINGCONTENTS:将表空间及及其中保存的的数据库对象象全部删除。。ANDDATAFILES:删除表空间间同时也删除除对应的数据据文件。CASCADECONSTRAINTS:删除所有的的引用完整性性约束。OEM中管理理表空间本章内容导航航Oracle的存储结构创建表空间临时表空间回滚表空间表空间的状态态表空间信息查查询删除表空间数据文件管理理数据文件是用用于存储数据据库中数据的的操作系统文文件。数据文件和表表空间是密不不可分的,一一个表空间不不能没有数据据文件,而一一个数据文件件只能属于一一个表空间。。数据文件管理理数据文件用来来存储数据库库的数据。读取数据时,,先从数据文文件中读取数数据,并存储储到SGA的数据缓冲区区中,如果缓缓冲区中已有有要读取的数数据,就不要要再从磁盘中中读取了。存存储数据时,,事务提交时时改变的数据据先存储到数数据缓冲区中中,再由后台台进程DBWR决定如何将其其写入到数据据文件中。表空间在物理理上表现为数数据文件,通通过查询数据据字典视图DBA_DATA_FILES可以了解表空空间和与其对对应的数据文文件。数据文件创建建创建数据文件件的SQL语句及说明SQL语句说明createtablespace创建一个表空间和组成它的数据文件createtemporarytablespace创建一个临时表空间和组成它的临时文件(临时文件是一种特殊的数据文件,用于存放临时数据,不能永久存放用户数据)altertablespace…adddatafile创建一个数据文件,并将其添加到(永久)表空间altertablespace…addtempfile创建一个临时文件,并将其添加到临时表空间createdatabase创建一个数据库及其和system表空间关联的数据文件数据文件管理理——数据文件的新新增和大小修修改为表空间users增加一个数据据文件altertablespaceusertbsadddatafile‘c:\oracle\product\10.2.0\orcl\user03.ora’size50M;修改数据文件件user03的大小为100Malterdatabasedatafile‘c:\oracle\product\10.2.0\orcl\user03.ora’resize100M;数据文件管理理——数据文件自动动扩展查询USERTBS表空间中各数数据文件自动动扩展属性selectfile_name,autoextensiblefromdba_data_fileswheretablespace_name=’USERTBS’;设置数据文件件user03可自动扩展alterdatabasedatafile'c:\oracle\product\10.2.0\orcl\user03.ora'autoextendonnext10mmaxsizeunlimited;关闭数据文件件user03的自动扩展alterdatabasedatafile'c:\oracle\product\10.2.0\orcl\user03.ora'autoextendoff;数据文件管理理——移动数据文件件移动表空间的的数据文件包包括4步:修改表空间为为offline状态复制数据文件件到另外一个个磁盘使用altertablespace…renamedatafile语句修改数据据文件的名称称(适用于移动同同一表空间的的数据文件);或使用alterdatabase…renamefile语句修改数据据文件的名称称(适用于移动多多个表空间的的数据文件)切换表空间状状态为online在OPEN状态下移动数数据文件移动同一个个表空间的的数据文件件1、SQL>altertablespacemytbs01offline;2、把数据文文件复制到到新的位置置3、SQL>altertablespacemytbs01renamedatafile‘c:\mytbs01_1.dbf’,’c:\mytbs01_2.dbf’’to‘c:\new\mytbs01_1.dbf’’,’c:\new\mytbs01_2.dbf’4、SQL>altertablespacemytbs01online;----5、备份控制制文件或数数据库SQL>alterdatabasebackupcontrolfiletotrace移动多个表表空间的数数据文件1、SQL>altertablespacemytbs03offline;SQL>altertablespacemytbs02offline;2、把数据文文件复制到到新的位置置3、SQL>altertablespacemytbs01renamedatafile‘c:\mytbs02_1.dbf’,’c:\mytbs03_2.dbf’’to‘c:\new\mytbs02_1.dbf’’,’c:\new\mytbs03_2.dbf’4、SQL>altertablespacemytbs02online;SQL>altertablespacemytbs03online;----5、备份控制制文件或数数据库SQL>alterdatabasebackupcontrolfiletotrace在mount状态下移动动数据文件件因为系统表表空间(system、sysaux)不能被脱

温馨提示

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

评论

0/150

提交评论