system和undo表空间不能处于脱机

数据文件是数据库的物理存储单位,而表空间TableSpace则是数据库的逻辑组成部分。数据库的数据是存储在表空间中的,而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。
产生表空间一般都是DBA或特权用户来完成的,如果要以其他的身份来产生,这个用户必须由Create tablespace权限才行。产生一个表空间时,一般需要产生一个数据文件,并确定文件的大小和段的大小。
产生一个表空间,确定数据文件,文件大小和区大小:
create tablespace date01 datafile d:/oracle/oradata/scut/date01.dbf size 200m uniform size 128k
删除一个表空间和数据文件:
drop tablespace date01 including contents and datafiles;

改变一个表空间的大小:
? 添加数据文件:
alter tablespace date01 add datafile d:/oracle/oradata/scut/date03.dbf size 50m;
? 手工增加文件尺寸
alter database datafile d:/oracle/oradata/scut/date03.dbf resize 100m;
? 设置文件数据自动扩展
alter database datafile d:/oracle/oradata/scut/date03.dbf autoextend on next 10m maxsize 500m;

移动数据文件:
移动数据文件有两种方式,一是alter tablespace,另一种是alter database。
? 在OPEN状态下移动数据文件
在这种状态下,移动文件通过alter dataspace命令来完成,并且要求表空间处于脱机状态。 由于system和undo表空间不能处于脱机,所以在这种方式中不能移动它们。
下面是移动一个普通数据文件的方法:
? 确定文件处于的表空间:
select tablespace_name from dba_data_files where file_name =D:/ORACLE/ORADATA/DATE03.DBF;
? 使表空间脱机:
alter tablespace date01 offline;
? 使用OS命令移动文件:
host move d:/oracle/oradata/scut/date03.dbf d:/oracle/ora92/date03.dbf;
? 执行Alter dataspace命令,必须确保文件被移动了:
alter tablespace date01 rename datafile d:/oracle/oradata/scut/date03.dbf to d:/oracle/ora92/date03.dbf’;
? 使表空间联机:
alter tablespace date01 online;

? 在MOUNT状态下移动数据文件
在MOUNT状态下,可以移动任何数据文件,包括SYSTEM和UNDO表空间。它使用的命令是alter database
? 关闭数据库
Shutdown immediate
Startup mount
? 移动数据
host move d:/oracle/oradata/scut/date03.dbf d:/oracle/ora92/date03.dbf;
? 执行alter database
Alter database date01 renam file ‘…..’ to ‘……’
? 打开数据库
Alter database open

本文转自
http://blog.tostudy.com.cn/blog/show_991.html
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值