码迷,mamicode.com
首页 > 移动开发 > 详细

Oracle表空间数据文件移动

时间:2015-12-26 08:34:52      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:oracle   数据文件移动   表空间移动   

Oracle表空间数据文件移动

系统:windows

oracle:10g


实现把用户表空间中的数据文件从某一个路径移动到里一个路径

一、针对可offline的非系统表空间

本例移动oracle的案例表空间(EXAMPLE表空间),将其从

D:\ORADATA\ORCL\ 移动到 D:\ORACLE\ORADATA\

1.查看要改变的表空间的数据文件信息

SQL> select tablespace_name,file_name,online_status

 from dba_data_files

 where tablespace_name=‘EXAMPLE‘;


TABLESPACE_NAME FILE_NAME                  ONLINE_

--------------- ----------------------------------- -------

EXAMPLE      D:\ORADATA\ORCL\EXAMPLE01.DBF     ONLINE


2.将目标表空间设置为脱机状态

SQL> alter tablespace EXAMPLE offline;


3.再次查看目标表空间的状态,确保其已经是脱机状态

SQL> select tablespace_name,file_name,online_status

 from dba_data_files

 where tablespace_name=‘EXAMPLE‘;


TABLESPACE_NAME FILE_NAME                  ONLINE_

--------------- ----------------------------------- -------

EXAMPLE      D:\ORACLE\ORADATA\EXAMPLE01.DBF   OFFLINE


4.将原来的数据文件移动(或复制)到新的路径

SQL> host move D:\ORADATA\ORCL\EXAMPLE01.DBF D:\ORACLE\ORADATA\


5.修改该表空间的数据文件路径

SQL> alter tablespace EXAMPLE  

 rename datafile ‘D:\ORADATA\ORCL\EXAMPLE01.DBF‘

 to ‘D:\ORACLE\ORADATA\EXAMPLE01.DBF‘;


6.查看该表空间修改后的信息,确保信息无误

SQL> select tablespace_name,file_name,online_status

 from dba_data_files

 where tablespace_name=‘EXAMPLE‘;


TABLESPACE_NAME FILE_NAME                  ONLINE_

--------------- ----------------------------------- -------

EXAMPLE      D:\ORACLE\ORADATA\EXAMPLE01.DBF   OFFLINE


7.修改该表空间为在线状态

SQL> alter tablespace EXAMPLE online;


8.查看该表空间最后结果

SQL> select tablespace_name,file_name,online_status

 from dba_data_files

 where tablespace_name=‘EXAMPLE‘;


TABLESPACE_NAME FILE_NAME                  ONLINE_

--------------- ----------------------------------- -------

EXAMPLE      D:\ORACLE\ORADATA\EXAMPLE01.DBF   ONLINE


备注:本方法对SYSAUX、USERS表空间也适用


二、系统表空间移动

该方法需要数据库处于mount状态

1.关闭运行中的数据库

SQL> shutdown immediate


2.启动数据库到mount状态

SQL> startup mount


3.移动系统表空间(SYSTEM表空间)的数据文件

SQL> host move  D:\ORADATA\ORCL\SYSTEM01.DBF D:\ORACLE\ORADATA\


4.修改该表空间的数据文件路径

SQL> alter database rename file ‘D:\ORADATA\ORCL\SYSTEM01.DBF‘ to ‘D:\ORACLE\ORA

DATA\SYSTEM01.DBF‘;


5.启动数据库,打开实例

SQL> alter database open;


6.查看表空间修改结果

SQL> select tablespace_name,file_name,online_status from dba_data_files where ta

blespace_name=‘SYSTEM‘;


TABLESPACE_NAME FILE_NAME                  ONLINE_

--------------- ----------------------------------- -------

SYSTEM       D:\ORACLE\ORADATA\SYSTEM01.DBF    SYSTEM


备注:本方法对UNDOTBS1、TEMP表空间也适用


鸣谢:本人参考了多篇文章后总结而得,在此感谢各位网络分享者!

本文出自 “4699096” 博客,请务必保留此出处http://4709096.blog.51cto.com/4699096/1728449

Oracle表空间数据文件移动

标签:oracle   数据文件移动   表空间移动   

原文地址:http://4709096.blog.51cto.com/4699096/1728449

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!