8管理表空间.pptx
- 文档编号:15802605
- 上传时间:2023-07-08
- 格式:PPTX
- 页数:43
- 大小:149.76KB
8管理表空间.pptx
《8管理表空间.pptx》由会员分享,可在线阅读,更多相关《8管理表空间.pptx(43页珍藏版)》请在冰点文库上搜索。
管理表空间,本章内容,9.1表空间概述9.2管理表空间的准则9.3创建表空间9.4修改表空间9.5删除表空间9.6查询表空间信息9.7在OEM中管理表空间,9.1表空间概述,表空间是Oracle数据库中最大的逻辑结构。
Oracle数据库是由一个或多个表空间组成。
表空间和数据库物理结构联系密切。
它在物理上与磁盘上的数据文件相对应。
数据逻辑上存放在表空间中;物理上存放在数据文件中。
Oracle数据库的存储结构,表空间的作用,控制数据库所占用的磁盘空间。
控制用户所占用的表空间配额。
通过表空间管理数据流向,提高I/O性能。
将表空间设置为只读状态从而保持静态数据。
表空间提供了一个备份和恢复单位。
表空间的类型,按是否存放的是系统数据分:
按表空间的存放内容分:
按表空间中文件的大小及最多个数分:
表空间的类型I,按是否存放的是系统数据分:
系统表空间:
SYSTEM:
存储Oracle的系统数据(如数据字典表)。
创建数据库时,SYSTEM第一个被创建,具有较高的管理权限,不能被脱机。
SYSAUX:
是Oracle10g新引入的辅助系统表空间。
存放其他可选组件的系统数据。
两者都不可以被删除和更改。
非系统表空间:
分离不同类型数据信息,便于管理表空间。
表空间的类型II,按表空间内容分:
永久性表空间、临时表空间、撤销表空间selecttablespace_name,contentsfromdba_tablespaces;永久性表空间:
存放永久性数据。
临时表空间:
存储的是临时性数据。
(orderby等SQL语句会产生大量的临时数据。
在创建用户时,要给其指定一个临时表空间,存放其操作产生的临时数据,如果没有指定,就会增用系统表空间,影响服务器效率。
)撤销表空间:
存放回滚段的数据信息。
表空间的类型III,大文件表空间、小文件表空间select*fromv$tablespace;selecttablespace_name,bigfilefromdba_tablespaces;大文件表空间是10g引入的表空间,为超大数据库设计的。
大文件表空间只能放置一个数据文件,数据文件可以包括4G个数据块。
最大可以达到32TB。
小文件表空间可以放置1022个数据文件。
表空间的区、段管理方式,区(Extent)的管理方式段(Segment)的管理方式,表空间的区管理方式,针对区的分配方式的不同,表空间的管理有两种管理方式:
数据字典管理方式(DMT)传统管理方式。
10g已经不再使用该方式。
Oracle通过对数据字典中相关的基础表进行更新来分配新区、回收旧区。
本地管理方式(LMT)10g默认的管理方式。
表空间中所有数据文件头均有一个位图(bitmap),用于记录表空间所有区的分配情况。
更新该位图来实现区的分配和回收。
不对任何表作更新操作。
在本地管理方式下,可以用关键字来指定表空间区的分配方式:
UNIFORM:
统一分配,所有区大小都相同。
AUTOALLOCATE:
自动分配,指定由Oracle来自动管理区大小,Oracle会自动选择合适的大小。
表空间的段管理方式,在本地管理方式中,还可以指定段的管理方式:
段的管理主要是Oracle管理段中已用数据块和空闲数据块的机制。
MANUAL(手工):
通过空闲列表管理。
AUTO(自动):
使用位图管理。
根据位图中取值来判断数据块是否可用。
效率高。
表空间的状态,一、读写(readwrite)二、只读(Readonly)三、脱机状态(Offline)正常(Normal):
执行检查点,不需要恢复。
临时(Temporary):
执行检查点,但不必保证所有数据文件都联机可用;如脱机时,有文件不可用,忽略错误。
可能需要恢复。
立即(Immediate):
不执行检查点。
需要恢复。
用于恢复(ForRecover):
用于恢复的关闭方式。
9.2管理表空间的准则,创建多个非系统表空间满足不同类型的用户存储数据的需要。
为用户设置表空间配额,9.3创建表空间,用户必须拥有Createtablespace权限才能创建表空间。
所有的表空间都应有sys用户来创建。
在表空间的创建中,Oracle完成几个工作:
在数据字典、控制文件中记录该表空间。
在操作系统中指定相应的物理文件对应数据文件。
在预警文件中记录下创建表空间的信息。
体验创建表空间:
在OEM中创建表空间newtbs,并指定相关参数。
1.要指定表空间名;2.指定表空间的类型;3.指定和表空间物理对应的数据文件及属性;4.指定区的管理参数;5.指定段的管理参数;6.指定其他属性logging/nologging等,语法,Createsmallfile|bigfilePermanent|Temporary|Undotablespace表空间名datafile|tempfiledatafile_clause1,logging|nologgingExtentManagementlocal|dictionaryUniformsize.k|mAutoallocatedefaultstorageSegmentSpaceManagementAuto|manualblocksizeintegerK|MOnline|Offline,举例1:
创建表空间:
firth数据文件:
C:
oracleproduct10.2.0oradataorclfirth01.dbf大小为10M采用本地管理自动分配区,自动管理段。
该如何写SQL语句?
CREATESMALLFILETABLESPACEFIRSTDATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLfirth01.dbfSIZE10MLOGGINGEXTENTMANAGEMENTLOCALautoallocateSEGMENTSPACEMANAGEMENTAUTO,举例2:
创建表空间:
second数据文件:
C:
oracleproduct10.2.0oradataorclsecond01.dbf大小10M,自动增长,每次增长2M,最大为30M本地管理统一尺寸128K分配,如何创建?
CREATESMALLFILETABLESPACESECONDDATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLsecond01.dbfSIZE10MAUTOEXTENDONNEXT2MMAXSIZE20MLOGGINGEXTENTMANAGEMENTLOCALSEGMENTSPACEMANAGEMENTAUTO,举例3:
创建表空间:
third重用已经存在的数据文件:
C:
oracleproduct10.2.0oradataorclthird01.dbf本地管理自动分配区,手工管理段要求创建为脱机表空间,如何创建?
CREATESMALLFILETABLESPACETHIRD“DATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLthird01.dbfSIZE10MREUSELOGGINGEXTENTMANAGEMENTLOCALSEGMENTSPACEMANAGEMENTMANUALOFFLINE,举例4:
创建大文件表空间,创建大文件表空间:
Forth_big数据文件:
C:
ORACLEPRODUCT10.2.0ORADATAORCLForth_big01.dbf,大小30M,CREATEBIGFILETABLESPACEFORTH_BIGDATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLForth_big01.dbfSIZE30M,举例5:
创建临时表空间,创建临时表空间:
five_temp数据文件:
five_temp01.dbf放在C:
ORACLEPRODUCT10.2.0ORADATAORCL,大小10M统一指定区尺寸,大小为5KB。
CREATESMALLFILETEMPORARYTABLESPACEFIVE_TEMPTEMPFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLfive_temp01.dbfSIZE10MEXTENTMANAGEMENTLOCALUNIFORMSIZE5K注意:
临时表空间不能用来创建对象,所以,就没有具体的段。
所以,不能指定段的管理方式。
举例6:
创建撤销表空间,创建撤销表空间:
six_undo数据文件:
C:
ORACLEPRODUCT10.2.0ORADATAORCLsix_undo01.dbf,大小5M,CREATESMALLFILEUNDOTABLESPACESIX_UNDODATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLsix_undo01.dbfSIZE5Mextentmanagementlocalautoallocate注意:
不可以显示指定uniformsize字句。
9.4修改表空间,主要包括:
扩展表空间的存储空间(添加数据文件、增大数据文件等)修改表空间的属性(名称、状态、是否为默认表空间),扩展表空间,增加数据文件:
altertablespaceusersadddatafileC:
oracleproduct10.2.0oradataorclusers02.dbfsize10m;注意:
不能为大文件表空间增加第二个数据文件。
如果要为临时表空间增加临时数据文件,必须使用Altertablespaceaddtempfile语句。
ALTERTABLESPACETEMPADDTEMPFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLtemp01.dbfSIZE10M,扩展表空间,增大数据文件的大小:
ALTERDATABASEDATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBFRESIZE10M,允许数据文件自动扩展ALTERDATABASEDATAFILEC:
ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBFAUTOEXTENDONNEXT1MMAXSIZEUNLIMITED,修改表空间属性,修改表空间的可用性及读写性:
Altertablespacefirstoffline注意:
System、sysaux、temp、undotbs1几个表空间,不可以改为脱机的,因为随时要写入数据。
AltertablespacefirstonlineAltertablespacefirstreadonly注意:
System、sysaux、temp、undotbs1几个表空间,不可以改为只读的,因为随时要写入数据。
Altertablespacefirstreadwrite,修改表空间的名称,修改表空间的名称:
Altertablespacefirstrenametofirst_new;注意:
修改表空间名称是10g特有的功能,所以初始化参数compatible必须设置为10.0或更高的。
SYSTEM、SYSAUX表空间的名称不能被修改。
脱机状态的表空间也不可以被更名。
设置默认表空间:
创建用户时,如果没有指定它使用的表空间,则它使用的永久表空间默认的是SYSTEM,临时表空间默认的是TEMP;为了避免应用系统与Oracle系统竞争SYSTEM表空间和temp表空间,Oracle10g建议将非SYSTEM表空间设置为默认永久表空间,将非TEMP临时表空间设置为默认临时表空间,。
例如:
alterdatabasedefaulttablespacefirst;alterdatabasedefaulttemporarytablespacetemp1;,设置默认表空间,9.5删除表空间,语句:
Droptablespace如:
droptablespaceforth_bigIncludingcontents;仅删除数据字典、控制文件中记录的表空间的信息,而表空间对应的物理的数据文件不会被删除,仍留在磁盘上。
droptablespaceforth_bigincludingcontentsanddatafiles;包括逻辑记录表空间的信息及对应物理的数据文件。
Oracle中system表空间不可删除。
用户必须拥有DropTablespace系统权限才可以删除表空间。
最好在删除表空间前,使它处于脱机状态。
9.6查询表空间,V$tablespaceDBA_TablespacesALL_TablespacesUSER_TablespacesDBA_segmentsALL_segmentsUSER_segmentsDBA_extentsALL_extentsUSER_extents,V$datafileV$tempfileDBA_datafilesDBA_tempfilesDBA_ts_quotasDBA_free_spaceUSER_free_space,9.7在OEM中管理表空间,略,THEEND!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 管理 空间
![提示](https://static.bingdoc.com/images/bang_tan.gif)