数据库存储管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章数据库存储管理
内容简介:
(1)逻辑单元的管理:表空间、段、区间和数据块等;(2)物理文件管理:控制文件、数据文件、临时文件、重做日志文件和归档文件等;
(3)自动存储管理
5.1表空间的管理
提问:1) 表空间的概念2)表空间的组成
5.1.1查看表空间信息
有两种方法
(1) 通过oracle视图查看信息
例题1:查看表空间的内容和数量。
select * from v$tablespace;
例题2:查看表空间的内容和状态
select tablespace_name,contents,status from dba_tablespaces;
通过EM查看
以sysdba登录到EM,打开“管理”页面,在数据库管理/存储中单击“表空间”,打开“表空间管理”页面
5.1.2创建表空间
(1)通过create tablespace创建
表空间内容不同,创建方法也不同
a.本地管理表空间
将表空间的所有区间信息以位图的方式记录,所有的表空间都可以被本地
例题3:创建本地管理表空间
Create tablespace orcltbs01
datafile ‘c:\oracle\product\10.2.0\oradata\orcl\orcltbs01.dbf’ size 10M extent management local autoallocate;
(2)通过EM创建
例题4:创建表空间orcltbs02,指定最小区间为128KB
Creatae tablespace orcltbs02
datafile ‘c:\oracle\product\10.2.0\oradata\orcl\orcltbs02.dbf’ size 30M extent management local uniform size 128K;
b.大文件表空间
大文件表空间由唯一的、非常巨大的数据文件组成;只能包含一个数据文
例题5:创建大文件表空间
Create bigfile tablespace bigtbs
datafile ‘c:\oracle\product\10.2.0\oradata\orcl\bigtbs.dbf’ size 10G;
size:指定文件大小。
c.临时表空间
例题6:创建临时表空间tmptbs
create temporary tablespace tmptbs
tempfile ‘c:\oracle\product\10.2.0\oradata\orcl\temtbs.dbf’ size 20M reuse extent management local uniform size 16M;
注意:创建临时表空间时,不允许使用autoallocate,表空间中区间的大小必须通过uniform手工指定
(2)通过EM管理表空间
5.1.3修改表空间属性
(1)重命名表空间
例题7:将表空间orcltbs02更名为orcltbs03
Alter tablespace orcldbs02 rename to orcltbs03;
(2)本地管理表空间
例题8:给表空间增加数据文件
Alter tablespace orcltbs01
Add datafile ‘c:\oracle\product\10.2.0\oradata\orcl\orcltbs011.dbf’ size 10M;
(3)大文件表空间
例题9:修改大文件表空间的数据文件大小。
Alter tablespace bigtbs resize 4G;
(4)临时表空间
例题10:向临时表空间中添加临时文件tmptbs01.dbf 20M
Alter tablespace tmptbs
Add tempfile ‘c:\oracle\product\10.2.0\oradata\orcl\temtbs01.dbf’ size 20M ;
(5)设置联机和脱机
思考:什么情况下可将表空间设置为脱机状态?
注意:系统表空间、撤销表空间和临时表空间不能设置为脱机状态。
例题11:将表空间orcltbs01设置为脱机状态
Alter tablespace orcltbs01 offline;
Select tablespace_name,contents,status from dba_tablespaces;
例题12:将表空间orcltbs01设置为联机状态
Alter tablespace orcltbs01 online;
(6)设置只读表空间
目的:保护表空间中的数据文件不被修改
例题13:设置表空间orcltbs01为只读表空间
Alter tablespace orcltbs01 read only;
例题14:设置表空间orcltbs01为读写表空间
Alter tablespace orcltbs01 read write;
5.1.4删除表空间
为节省空间,对不用的表空间应及时删除。
删除表空间时,可以选择同时删除其内容和数据文件。
例题15:删除表空间orcltbs01.
Drop tablespace orcltbs01;
删除表空间的同时删除期中的段
Drop tablespace orcltbs01 including contents;
删除表空间的同时删除包含的段和数据文件
Drop tablespace orcltbs01 including contents and datafiles;
5.1.5段和数据块管理
表空间由段组成,在创建表空间时,可以指定段空间的管理方式。
段空间有2种管理方式:自动和手动。
例题16:创建表空间mytbs01,自动段管理方式
Create tablespace mytbs01
Datafile ‘c:\oracle\product\10.2.0\oradata\orcl\mytbs01.dbf’ size 30m Extent management local autoallocate
Segment space management auto;
例题17:创建手动段管理方式的表空间mytbs02
Create tablespace mytbs02
Datafile ‘c:\oracle\product\10.2.0\oradata\orcl\mytbs02.dbf’ size 30m Extent management local autoallocate
Segment space management manual;
例题18:创建表空间,指定块的大小