发布于 2016-03-22 06:38:44 | 77 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

Oracle关系数据库管理系统

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。


最近接了个项目,遇到这样的问题,需要实现把用户表空间中的数据文件从某一个路径下移动到另一个路径下,实现过程说简单不简单,说复杂不复杂,下面小编给大家分享我的解决办法,对oracle表空间数据文件相关知识感兴趣的朋友一起学习吧

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

一、针对可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表空间也适用。

以上内容是小编给大家分享的Oracle表空间数据文件移动的方法,希望大家喜欢。



相关阅读 :
Oracle表空间数据文件移动的方法
Oracle7.X 回滚表空间数据文件误删除处理方法
Oracle批量导入文本文件快速的方法(sqlldr实现)
oracle表空间的创建及dmp 文件的导入(推荐)
Oracle表中重复数据去重的方法实例详解
LINUX下Oracle数据导入导出的方法详解
oracle表空间中空表统计方法示例介绍
oracle表空间表分区详解及oracle表分区查询使用方法
六分钟学会创建Oracle表空间的实现步骤
oracle增加表空间大小两种实现方法
Oracle 表空间查询与操作方法
Oracle建立二进制文件索引的方法
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务