RMAN COPY 명령어를 이용한 Filesystem to ASM 이동하기(혹은 ASM to Filesystem)


# 고객께서 ASM으로 업그레이드가 필요하거나, ASM기반 RAC로 업그레이드 하기 위해, 기존 ASM을 쓰고있는데 Tablespace를 잘못


만들었거나 했을때에 유용하게 쓸 수 있습니다.


 


1. 현재 Datafile은 DATA Diskgroup에 있고 ASM으로 옮겨야할 dbf는 /u01 아래에 있습니다.


SQL> create tablespace test
  2  datafile ‘/u01/test.dbf’ size 10m;


Tablespace created.


SQL> select name from v$datafile;


NAME
——————————————————————————–
+DATA/orcl/datafile/system.256.823945567
+DATA/orcl/datafile/sysaux.257.823945567
+DATA/orcl/datafile/undotbs1.258.823945567
+DATA/orcl/datafile/users.259.823945567
+DATA/orcl/datafile/example.265.823945657
/u01/test.dbf


6 rows selected.



 


2. 이동대상 Datafile을 offline 시킵니다.


SQL> alter tablespace test offline;


Tablespace altere


 


3. RMAN을 실행시켜 COPY를 시킵니다.


[oracle@msyu u01]$ rman target /


Recovery Manager: Release 11.2.0.3.0 – Production on Sun Dec 27 13:01:04 2015


Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.


connected to target database: ORCL (DBID=1351726376)


RMAN> copy datafile ‘/u01/test.dbf’ to ‘+DATA’; <– A to B, B to A를 달리 해주면 ASM to Filesystem으로도 옮길 수 있습니다.


Starting backup at 27-DEC-15
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=27 device type=DISK
channel ORA_DISK_1: starting datafile copy
input datafile file number=00006 name=/u01/test.dbf
output file name=+DATA/orcl/datafile/test.267.899557303 tag=TAG20151227T130142 RECID=2 STAMP=899557302
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 27-DEC-15


 


4. ASM으로 옮겨왔으니 이제 Rename을 해줍니다. 그리고 Tablespace를 online 하여 줍니다.


SQL> alter database rename file ‘/u01/test.dbf’ to ‘+DATA/orcl/datafile/test.267.899557303’;


Database altered.


SQL> alter tablespace test online;


Tablespace altered.


SQL> select name from v$datafile;


NAME
——————————————————————————–
+DATA/orcl/datafile/system.256.823945567
+DATA/orcl/datafile/sysaux.257.823945567
+DATA/orcl/datafile/undotbs1.258.823945567
+DATA/orcl/datafile/users.259.823945567
+DATA/orcl/datafile/example.265.823945657
+DATA/orcl/datafile/test.267.899557303


6 rows selected.



 


5. Object를 생성해봅니다.


SQL> create table tt tablespace test as select * from v$version;


Table created.


SQL> select * from tt;


BANNER
——————————————————————————–
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – 64bit Production
PL/SQL Release 11.2.0.3.0 – Production
CORE    11.2.0.3.0      Production
TNS for Linux: Version 11.2.0.3.0 – Production
NLSRTL Version 11.2.0.3.0 – Production


 


6. 기존 Filesystem에 있는 dbf 파일은 지우고 작업을 마무리 합니다.


[oracle@msyu u01]$ ls -al
합계 10280
drwxr-xr-x  3 oracle oinstall     4096 12월 27 12:57 .
drwxr-xr-x 26 root   root         4096 12월 27 12:51 ..
drwxr-xr-x  5 oracle oinstall     4096  8월 20  2013 app
-rw-r—–  1 oracle oinstall 10493952 12월 27 12:59 test.dbf
[oracle@soonhyog u01]$ rm -rf test.dbf


 


 



 


Comments

comments

haisins

오라클 DBA 박용석 입니다. haisins@gmail.com 으로 문의 주세요.

RMAN COPY 명령어를 이용한 Filesystem to ASM 이동하기(혹은 ASM to Filesystem)”의 2개의 댓글

  • 2020년 6월 10일 9:34 오전
    Permalink

    ASIS 에서 TOBE로 가능한겁니까?
    서로 다른 서버에서도 가능한지 궁금합니다.

    ASIS는 파일시스템이고 TOBE가 ASM로 구성이 되어있을때
    예를 들면
    ASIS의 테이블 스페이스를 OFFLINE 시킨후에
    /orawork로 백업(offline)후에 백업본을 TOBE로 복사(FTP전송)후에
    진행하면 되는건지 궁금합니다.

    댓글달기
    • 2020년 6월 23일 4:36 오후
      Permalink

      네… 가능합니다. 양방향 모두 가능 합니다. RMAN 으로 가능하고…11g 이상 부터 FTP 안하고 SCP 또는 NFS 파일시스템으로 바로 원격지 카피도 됩니다.

      댓글달기

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다