迁移表空间到指定路径

来源:互联网 发布:凯立德v5配置端口修改 编辑:程序博客网 时间:2024/05/17 22:36

环境介绍

OS :windows 2003   64bit

database :oracle 10.2.0.1.0  64bit

 前两天公司同事反映他们的一台测试服务器,C分区剩余空间不足,需要清理下。连上去才发现,数据文件都放在了C盘。

于是应同事要求,将部分表空间文件迁移到D分区上。发现两个比较大的数据文件,文件名字忘记了。在这里大概记录一下操作步骤

1、将目标表空间offline

2、将目标表空间的数据文件移动到指定路径

3、修改目标表空间数据文件路径

4、将目标表空间online

 

注意:这里迁移的是普通用户的表空间,可以在线迁移。如果是sys表空间,则需要restart 数据库。

1、目标表空间offline

查看下原文件路径和状态

select file#,name,status from v$datafile;

将目标表空间offline

alter tablespace users offline;

2、移动目标表空间数据文件到指定路径

如果是linux OS的话,可以直接用mv命令来移动。但是在windows环境下,即使这些数据文件已经offline,数据文件上面没有i/o操作,仍然是

无法移动的,因为这些文件仍然被oracle的进程占用,因此只能用复制的方法来移动

从这个角度看,window系统这方面要比linux可靠些,可以防止一些误操作。

3、修改数据文件路径

alter tablespace users rename datafile  ' 源路径 '   to  '目标路径 ';     --标注红色的关键词经常忘记

验证路径是否修改成功

select file#,name,status from v$datafile;

4、目标表空间online

alter tablespace users online;

验证表空间状态

 

 

 

 

 

 

 

 

 

 

 

0 0
原创粉丝点击