11gR2 11.2.0.4 移动非系统文件到ASM (使用ASMCMD)

                                                移动tesst.dbf 到ASM中

据库版本 11.2.0.4.8

环境 rac 两个节点

准备工作
1)创建测试文件 (假设创建在一个节点的本地文件,我这以rac2的/u02/test下为例)
SQL> create tablespace test datafile'/u02/test/test.dbf' size 20m;

Tablespace created.

2)查看数据文件存放位置
SQL> select file#,name from v$datafile;

     FILE# NAME
---------- --------------------
         1 +DATA/orcl/system01.
           dbf

         2 +DATA/orcl/sysaux01.
           dbf

         3 +DATA/orcl/undotbs01
           .dbf

         4 +DATA/orcl/users01.d
           bf

         5 +DATA/orcl/undotbs02
           .dbf

         6 /u02/test/test.dbf

6 rows selected.

开始--
1)查看文件是否offline

SQL> alter system switch logfile;

System altered.
2)查看文件在文件系统的位置和ASM中的格式
SQL> col file_name for a20
SQL> select file_id,file_name from dba_data_files;

   FILE_ID FILE_NAME
---------- --------------------
         4 +DATA/orcl/users01.d
           bf

         3 +DATA/orcl/undotbs01
           .dbf

         2 +DATA/orcl/sysaux01.
           dbf

         1 +DATA/orcl/system01.
           dbf

         5 +DATA/orcl/undotbs02
           .dbf

         6 /u02/test/test.dbf

6 rows selected.
3)让6号数据文件offline
SQL> alter database datafile 6 offline;

Database altered.
SQL> select file_name, file_id, online_status from dba_data_files where file_id=6;

FILE_NAME               FILE_ID ONLINE_
-------------------- ---------- -------
/u02/test/test.dbf            6 RECOVER

4)使用ASMCMD 复制文件到ASM
[root@rac2 u02]# su - grid
[grid@rac2 ~]$ asmcmd

ASMCMD> cp /u02/test/test.dbf  +DATA/orcl/test.dbf
copying /u02/test/test.dbf -> +DATA/orcl/test.dbf

ASMCMD> ls
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
control01.ctl
control02.ctl
redo01.log
redo02.log
redo03.log
redo04.log
spfileorcl.ora
sysaux01.dbf
system01.dbf
temp01.dbf
test.dbf
undotbs01.dbf
undotbs02.dbf
users01.dbf
ASMCMD> cd ..
ASMCMD> pwd
+DATA

5)重新注册数据文件(rename datafile)
SQL> alter database rename file '/u02/test/test.dbf' to '+DATA/orcl/test.dbf';

Database altered.
SQL> select file_name, file_id, online_status from dba_data_files where file_id=6;

FILE_NAME               FILE_ID ONLINE_
-------------------- ---------- -------
+DATA/orcl/test.dbf           6 RECOVER
6)恢复数据文件使其online
SQL> alter database recover datafile 6;

Database altered.

SQL> alter database datafile 6 online;

Database altered.
7)确认是否成功
SQL> select file_name, file_id, online_status from dba_data_files where file_id=6;

FILE_NAME               FILE_ID ONLINE_
-------------------- ---------- -------
+DATA/orcl/test.dbf           6 ONLINE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值