一、从数据文件层次移动
1.offline datafile
alter database datafile 'd:\oracle\xxx.dbf' offline;
2.移动数据文件到新位置
3.命名新文件,使数据文件名称指向新地址文件名
alter database rename file 'xxx.dbf' to 'd:\aaa.dbf';
4介质恢复,offline数据文件,需要media recovery.
recover datafile 'd:\aaa.dbf';
5.online数据文件
alter database datafile 'd:\aaa.dbf' online;
二、从表空间层次移动
1、将表空间offline
alter tablespace jerry offline;
2、移动数据文件到新的位置
3、命名新文件,使数据文件名称指向新地址文件名
alter tablespace jerry rename datafile 'd:\aaa.dbf' to 'd:\oracle\xxx.dbf';
4.ONLINE表空间
alter tablespace jerry online;
测试
1.先备份数据库,以防测试失败恢复
C:\Users\jerry>rman target /
恢复管理器: Release 11.2.0.1.0 - Production on 星期五 2月 21 12:53:13 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
连接到目标数据库: ORCL (DBID=1342507489)
RMAN> backup database;
启动 backup 于 21-2月 -14
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=133 设备类型=DISK
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00001 名称=D:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF
输入数据文件: 文件号=00002 名称=D:\ORACLE\ORADATA\ORCL\SYSAUX01.DBF
输入数据文件: 文件号=00006 名称=D:\ORACLE\ORADATA\ORCL\JERRY.DBF
输入数据文件: 文件号=00003 名称=D:\ORACLE\ORADATA\ORCL\UNDOTBS01.DBF
输入数据文件: 文件号=00005 名称=D:\ORACLE\ORADATA\ORCL\EXAMPLE01.DBF
输入数据文件: 文件号=00004 名称=D:\ORACLE\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 21-2月 -14
通道 ORA_DISK_1: 已完成段 1 于 21-2月 -14
段句柄=D:\ORACLE\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_02_21\O1_MF_NNNDF_TAG20140221T125325_9JFPY6XD_.BKP 标记=TAG20140221T125325 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:45
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 21-2月 -14
通道 ORA_DISK_1: 已完成段 1 于 21-2月 -14
段句柄=D:\ORACLE\FLASH_RECOVERY_AREA\ORCL\BACKUPSET\2014_02_21\O1_MF_NCSNF_TAG20140221T125325_9JFPZNYR_.BKP 标记=TAG20140221T125325 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:02
完成 backup 于 21-2月 -14
2、查看数据库是否处理归档模式。
C:\Users\jerry>sqlplus / as sysdba;
SQL*Plus: Release 11.2.0.1.0 Production on 星期五 2月 21 12:54:44 2014
Copyright (c) 1982, 2010, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> SELECT T.NAME, T.LOG_MODE,T.OPEN_RESETLOGS FROM V$DATABASE T ;
NAME LOG_MODE OPEN_RESETL
--------- ------------ -----------
ORCL ARCHIVELOG NOT ALLOWED
3.创建测试表空间和表,
SQL> create tablespace test datafile 'D:\ORACLE\ORADATA\ORCL\test01.dbf' size 20m;
表空间已创建。
SQL> create table test01(id number) tablespace test;
表已创建。
SQL> insert into test01 values(1);
已创建 1 行。
SQL> insert into test01 values(2);
已创建 1 行。
SQL> insert into test01 values(3);
已创建 1 行。
SQL> commit;
提交完成。
4.移动数据文件(从数据文件层面)
4.1 offline datafile
SQL> alter database datafile 'D:\ORACLE\ORADATA\ORCL\TEST01.DBF' offline;
数据库已更改。
4.2 手工剪切数据库文件D:\ORACLE\ORADATA\ORCL\TEST01.DBF到D盘根目录。
4.3重新指向
SQL> alter database rename file 'D:\ORACLE\ORADATA\ORCL\TEST01.DBF' to 'D:\TEST01.DBF';
数据库已更改。
4.4介质恢复
SQL> recover datafile 'D:\TEST01.DBF';
完成介质恢复。
4.5 online数据文件。
SQL> alter database datafile 'D:\TEST01.DBF' online;
数据库已更改。
SQL> select * from test01;
ID
----------
1
2
3
二、从表空间层面移动
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
D:\ORACLE\ORADATA\ORCL\USERS01.DBF
D:\ORACLE\ORADATA\ORCL\UNDOTBS01.DBF
D:\ORACLE\ORADATA\ORCL\SYSAUX01.DBF
D:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF
D:\ORACLE\ORADATA\ORCL\EXAMPLE01.DBF
D:\TEST01.DBF
D:\ORACLE\ORADATA\ORCL\JERRY.DBF
已选择7行。
2.2offline 表空间
SQL> alter tablespace test offline;
表空间已更改。
2.3 手工剪切数据文件到D:\ORACLE\ORADATA\ORCL\
2.3 使表空间中数据文件名指向新的数据文件名称。
SQL> alter tablespace test rename datafile 'D:\TEST01.DBF' to 'D:\ORACLE\ORADATA\ORCL\TEST01.DBF';
表空间已更改。
2.4查看现在的数据文件地址。
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
D:\ORACLE\ORADATA\ORCL\USERS01.DBF
D:\ORACLE\ORADATA\ORCL\UNDOTBS01.DBF
D:\ORACLE\ORADATA\ORCL\SYSAUX01.DBF
D:\ORACLE\ORADATA\ORCL\SYSTEM01.DBF
D:\ORACLE\ORADATA\ORCL\EXAMPLE01.DBF
D:\ORACLE\ORADATA\ORCL\TEST01.DBF
D:\ORACLE\ORADATA\ORCL\JERRY.DBF
已选择7行。
2.5 online表空间
SQL> alter tablespace test online;
表空间已更改。
SQL> select * from test01;
ID
----------
1
2
3
阅读(2019) | 评论(0) | 转发(0) |