表空间管理PPT课件.ppt

上传人:优*** 文档编号:127682768 上传时间:2020-04-04 格式:PPT 页数:29 大小:987KB
返回 下载 相关 举报
表空间管理PPT课件.ppt_第1页
第1页 / 共29页
表空间管理PPT课件.ppt_第2页
第2页 / 共29页
表空间管理PPT课件.ppt_第3页
第3页 / 共29页
表空间管理PPT课件.ppt_第4页
第4页 / 共29页
表空间管理PPT课件.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《表空间管理PPT课件.ppt》由会员分享,可在线阅读,更多相关《表空间管理PPT课件.ppt(29页珍藏版)》请在金锄头文库上搜索。

1、表空间管理 任课教师 冯玲 1 表空间管理 表空间概述创建表空间修改表空间删除表空间查看表空间 2 表空间概述 表空间时oracle数据库中最大的逻辑结构Oracle数据库是有一个或多个表空间组成表空间在物理上与磁盘上的数据文件相对应 一个表空间由一个或多个数据文件组成 但一个数据文件只能属于一个表空间 从物理上说数据存放在数据文件中 从逻辑上说数据存放在表空间中 总之 表空间提供一套有效组织数据的方法 可以将表空间看做数据库对象的容器 它被划分成一个一个独立的逻辑段 分别对应地存储数据库中锁创建的一个一个对象 方案对象 3 概念的对应关系 一个大楼里可以安排几个公司 可以搬入公司 也可以搬出

2、公司 一个公司锁占用的面积是它所占用的各个房间面积的总和 每个公司可以占用多个房间 也可以根据业务增减增减或减少房间 但在安排各个公司占用多少房间时最好规划一下在盖大楼时 可以根据使用目的建筑不同风格的房间 如银行 餐厅 舞厅 会议室 健身房等 进驻大楼的公司可以永久的也可以临时的 不同类型的公司一般使用某种风格的房间为了更好的交流 一般应将同一公司的各个房间安排在就近的地方 4 表空间作用 控制数据库所占用的磁盘空间 控制用户所占用的表空间配额 通过不同表的数据 分区表中不同分区的数据放置到不同的表空间中 可以提高数据库的I O性能 并有利于进行部分备份和恢复的管理工作 能够将一个表的数据和

3、这个表的索引数据分别放置到不同的表空间中 同样可以提高数据的I O性能 可以将表空间设置成只读状态而保持大量的静态数据 5 表空间类型 系统表空间 system表空间和sysaux表空间非系统表空间 除system表空间和sysaux表空间以外的表空间 临时表空间 撤销表空间 大文件表空间和小文件表空间 6 表空间的区 段管理方式 7 表空间的区管理方式 字典管理方式 传统的管理方式 是为了与早期版本兼容而保留的区管理方式 该方式是使用数据字典来管理存储空间的分配 使用过程会产生回退信息和重做信息 这是字典管理的特定也是缺点 本地管理方式 推荐方式 使用该管理方式 表空间中区分配与回收的管理信

4、息都被存储在表空间的数据文件中 而与数据字典无关 8 区分配方式 在本地管理方式下 可以有两种区分配方式 统一 uniform 指定表空间中所有区的大小都相同 区的大小默认是1m 也可以指定这个大小 在撤销表空间中不能使用这个选项 自动 autoallocate或system 指定由oracle系统自动管理区的大小 这是默认的设置 说明 在自动区的分配方式下 区的大小随表的大小自动动态改变 他们之间的对应关系为 9 表空间的段管理方式 在本地管理方式的表空间中 除了可以用uniform和autoallocate来指定区的分配方式之外 还可以指定段的管理方式 段管理方式主要是指oracle用来管

5、理段中以用数据块和空闲数据块的机制 在本地管理方式的表空间中 可以用两个关键字来指定段管理方式 Manual 手动 这时oracle将使用空闲列表来管理段的空闲数据块 这是为了与以前的版本相兼容而保留的 Auto 自动 这时oracle将使用位图来管理段的已用数据块和空闲数据块 即通过位图中单元的取值来判断段中的数据块是否可用 例 通过dba tablespaces数据字典视图可以查询当前数据库中各个表空间的区 段空间管理方式 selecttablespace name extent management allocation type segment space management con

6、tentsfromdba tablespaces 例 当system表空间的区管理方式是本地管理方式 则不可能创建字典管理的表空间 但可以创建本地管理的表空间 Createtablespacedic tbs01datafile f oracle dic tbs01 dbf size5mExtentmanagementdictionary Createtablespacedic tbs01datafile f oracle dic tbs01 dbf size5mExtentmanagementlocal 10 创建表空间 所有的表空间都应该由sys用户 数据字典的所有者 来创建 以避免出现管理

7、问题 用户必须拥有createtablespace系统权限才能创建表空间临时表空间和撤销表空间是特殊表空间 用户不能在其中创建方案对象 故需指明temporary和undo关键字 11 创建表空间命令格式 CREATETABLESPACEtablespace nameDATAFILE path filename SIZEinteger K M REUSE AUTOEXTEND OFF ON NEXTinteger K M MAXSIZE UMLIMITED integer K M MINIMUMEXTENTinteger K M DEFAULTSTORAGEstorage clause ONL

8、INE OFFLINE LOGGING NOLOGGING PERMANENT TEMPORARY EXTENTMANAGEMENT DICTIONARY LOCAL AUTOALLOCATE UNIFORM SIZEinteger K M 其中 tablespace name 将要创建的表空间的名称 该名称在数据库中是惟一的 并且命名必须符合命名规则 path filename 一个或多个数据文件的存放路径与名称 OFF ON 禁止或允许自动扩展数据文件 NEXT 指定当需要更多盘区时分配给数据文件的磁盘空间 以K或M为单位 MAXSIZEUMLIMITED integer K M 指定允许

9、分配给数据文件的最大磁盘空间 MINMUMEXTENT 指定最小的长度 默认为操作系统和数据库块确定 ONLINE 在创建表空间之后使该表空间立即对授权访问该表空间的用户可用 OFFLINE 在创建表空间之后使该表空间不可用 LOGGING NOLOGGING 指定日志属性 它表示将来的表 索引等是否需要进行日志处理 默认值为LOGGING PERMANENT 指定表空间将用于保存永久对象 这是默认设置 TEMPORARY 指定表空间将用于保存临时对象 EXTENTMANAGEMENT 指定如何管理表空间的盘区 DICTIONARY 指定使用字典表来管理表空间 这是缺省设置 LOCAL 指定本

10、地管理表空间 AUTOALLOCATE 指定表空间由系统管理 用户不能指定盘区尺寸 UNIFORM 指定使用SIZE字节的统一盘区来管理表空间 缺省的SIZE为1M 如果既没指定AUTOALLOCATE又没指定UNIFORM 那么AUTOALLOCATE就是缺省设置 12 创建永久表空间 使用autoallocate区分配方式使用uniform区分配方式在数据文件子句中指定数据文件的扩展方式使用auto段管理方式 13 创建永久表空间 如果不指定permanent temporary undo选项 则创建的表空间是永久表空间 有三种创建永久表空间的方法 使用autoallocate区分配方式

11、使用uniform区分配方式 使用auto段管理方式 createtablespacetbs01datafile f oracle tbs01 dbf size20muniformsize128k 指定区尺寸为128k 如不指定 区尺寸默认为1m 14 使用autoallocate区分配方式 createtablespacetbs02datafile f oracle tbs02 dbf size2mautoallocate 说明 如果DBA能够预测到表空间中存放的对象所需的区大小会有很大不同 则使用autoallocate区分配方式是较好的选择 在这种方式中 oracle将自动按表空间中不同

12、对象的大小分配相应大小的区 有一个表大小和区大小的对应关系 最小的区为64k Autoallocate区分配方式的缺点是在表空间中可能会造成磁盘空间的浪费 但对于管理员的工作量是相对减少的 15 使用uniform区分配方式 createtablespacetbs03datafile f oracle tbs03 1 dbf size2m f oracle tbs03 2 dbf size2muniformsize128k 说明 如果DBA能够预测到表空间中存放的大部分对象都要求使用相同大小的区 那么使用uniform区分配方式是比较好的选择 在这种方式下 oracle将为表空间中所有对象指定

13、相同大小的区 默认大小为1m Uniform区分配方式的优点是表空间中不会产生磁盘碎片 节约磁盘空间 16 在数据文件子句中指定数据文件的扩展方式 createtablespacetbs04datafile f oracle tbs04 dbf size3mautoextendonnext2mmaxsize12m 说明 使用autoextendon选项的时也应该指定maxsize选项来限制数据文件的最大大小 以免数据文件无限制扩展 给数据库的管理带来困难 否则等到DBA发现数据文件已经过于庞大时 可能其中已经存在数据不能压缩 导致对数据库的安全运行产生影响 17 使用auto段管理方式 cre

14、atetablespacetbs05datafile f oracle tbs05 dbf size4mreuseuniformsegmentspacemanagementauto 18 创建大文件表空间 createbigfiletablespacemybigtbs01datafile f oracle mybigtbs01 dbf size10msegmentspacemanagementauto 说明 大文件表空间是oracle10g数据库的新特性 而且仅在本地管理的表空间中才支持大文件表空间 这种表空间只能包含一个数据文件 该数据文件可以包含4G个块 创建大文件表空间时可以指定区分配方

15、式 但不能将段管理方式指定为manual方式 19 创建UNDO表空间 撤销表空间只能使用本地管理方式 且不能在其中创建方案对象 表 索引等 createundotablespaceundotbs01datafile f oracle undotbs01 dbf size2mautoallocate 区自动分配createundotablespaceundotbs02datafile f oracle undotbs02 dbf size2mautoextendonnext1mmaxsizeunlimited 允许数据文件自动扩展createundotablespaceundotbs03dat

16、afile f oracle undotbs03 dbf size2muniformsize64k 创建undo表空间时不能指定统一区大小的选项 20 创建临时表空间 创建临时表空间temptbs01 采用区本地管理 统一分配方式 createtemporarytablespacetemptbs01tempfile f oracle temptbs01 dbf size4muniformsize64k 创建临时表空间时 区分配方式不能指定为autoallocate方式createsmallfiletemporarytablespacetemptbs02tempfile f oracle temptbs02 dbf size2mautoallocate 从oracle10g开始 允许创建只包含一个临时文件的大文件临时表空间 createbigfiletemporarytablespacetemptbs03tempfile f oracle temptbs03 dbf size4muniformsize64k 创建临时表空间 段管理方式不能指定为auto方式 createtemporary

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号