利用RMAN將資料庫從檔案系統遷移到ASM(單例項)
一、開啟ASM例項
[oracle@ASM ~]$ echo $ORACLE_SID
+ASM
[oracle@ASM ~]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Apr 6 01:01:28 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
Connected to an idle instance.
SQL> startup
ASM instance started
Total System Global Area 79691776 bytes
Fixed Size 1217812 bytes
Variable Size 53308140 bytes
ASM Cache 25165824 bytes
ASM diskgroups mounted
SQL> select name,state from v$asm_diskgroup;
NAME STATE
------------------------------ -----------
DATA MOUNTED
DGROUP1 MOUNTED
二、修改目標資料庫(TOASM)的SPFILE
SQL> ALTER SYSTEM SET CONTROL_FILES='+DGROUP1' SCOPE=SPFILE;
System altered.
SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST='+DGROUP1' SCOPE=SPFILE;
System altered.
三、關閉目標資料庫
SQL> SHUTDOWN IMMEDIATE
Database closed.
Database dismounted.
ORACLE instance shut down.
四、透過RMAN連線到目標資料庫,並啟動到NOMOUNT狀態
[oracle@ASM admin]$ rman target /
Recovery Manager: Release 10.2.0.1.0 - Production on Mon Apr 6 01:06:39 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
connected to target database (not started)
RMAN> startup nomount
Oracle instance started
Total System Global Area 230686720 bytes
Fixed Size 1218676 bytes
Variable Size 75499404 bytes
Database Buffers 150994944 bytes
Redo Buffers 2973696 bytes
RMAN>
五、還原控制檔案到ASM磁碟組,並將資料庫啟動到MOUNT狀態
RMAN> RESTORE CONTROLFILE FROM '/u01/oradata/TOASM/control01.ctl';
Starting restore at 06-APR-09
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=155 devtype=DISK
channel ORA_DISK_1: copied control file copy
output filename=+DGROUP1/toasm/controlfile/backup.269.683428107
Finished restore at 06-APR-09
RMAN> ALTER DATABASE MOUNT;
database mounted
released channel: ORA_DISK_1
RMAN>
六、利用RMAN複製資料檔案到ASM磁碟組
RMAN > BACKUP AS COPY DATABASE FORMAT '+DGROUP1';
Starting backup at 06-APR-09
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=155 devtype=DISK
channel ORA_DISK_1: starting datafile copy
input datafile fno=00001 name=/u01/oradata/TOASM/system01.dbf
output filename=+DGROUP1/toasm/datafile/system.258.683428337 tag=TAG20090406T011215 recid=2 stamp=683428412
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:01:25
channel ORA_DISK_1: starting datafile copy
input datafile fno=00003 name=/u01/oradata/TOASM/sysaux01.dbf
output filename=+DGROUP1/toasm/datafile/sysaux.259.683428421 tag=TAG20090406T011215 recid=3 stamp=683428457
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:45
channel ORA_DISK_1: starting datafile copy
input datafile fno=00005 name=/u01/oradata/TOASM/example01.dbf
output filename=+DGROUP1/toasm/datafile/example.261.683428467 tag=TAG20090406T011215 recid=4 stamp=683428481
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile fno=00002 name=/u01/oradata/TOASM/undotbs01.dbf
output filename=+DGROUP1/toasm/datafile/undotbs1.260.683428483 tag=TAG20090406T011215 recid=5 stamp=683428486
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
channel ORA_DISK_1: starting datafile copy
input datafile fno=00004 name=/u01/oradata/TOASM/users01.dbf
output filename=+DGROUP1/toasm/datafile/users.262.683428489 tag=TAG20090406T011215 recid=6 stamp=683428491
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
channel ORA_DISK_1: starting datafile copy
copying current control file
output filename=+DGROUP1/toasm/controlfile/backup.278.683428493 tag=TAG20090406T011215 recid=7 stamp=683428495
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current SPFILE in backupset
channel ORA_DISK_1: starting piece 1 at 06-APR-09
channel ORA_DISK_1: finished piece 1 at 06-APR-09
piece handle=+DGROUP1/toasm/backupset/2009_04_06/nnsnf0_tag20090406t011215_0.277.683428497 tag=TAG20090406T011215 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:05
Finished backup at 06-APR-09
RMAN>
七、利用RMAN的SWITCH 命令修改控制檔案內資料檔案的指標,使其指向新位置。
RMAN> SWITCH DATABASE TO COPY;
datafile 1 switched to datafile copy "+DGROUP1/toasm/datafile/system.258.683428337"
datafile 2 switched to datafile copy "+DGROUP1/toasm/datafile/undotbs1.260.683428483"
datafile 3 switched to datafile copy "+DGROUP1/toasm/datafile/sysaux.259.683428421"
datafile 4 switched to datafile copy "+DGROUP1/toasm/datafile/users.262.683428489"
datafile 5 switched to datafile copy "+DGROUP1/toasm/datafile/example.261.683428467"
RMAN> RECOVER DATABASE;
Starting recover at 06-APR-09
using channel ORA_DISK_1
starting media recovery
media recovery complete, elapsed time: 00:00:00
Finished recover at 06-APR-09
RMAN>
八、開啟資料庫
RMAN> ALTER DATABASE OPEN;
database opened
RMAN>
九、遷移臨時檔案
由於臨時檔案不會被遷移,所以我們只需要刪除原來的增加新的就可以。
SQL> SELECT NAME FROM V$TEMPFILE;
NAME
--------------------------------------------------
/u01/oradata/TOASM/temp01.dbf
SQL> ALTER TABLESPACE TEMP ADD TEMPFILE '+DGROUP1';
Tablespace altered.
SQL> ALTER TABLESPACE TEMP DROP TEMPFILE '/u01/oradata/TOASM/temp01.dbf';
Tablespace altered.
SQL> SELECT NAME FROM V$TEMPFILE;
NAME
--------------------------------------------------
+DGROUP1/toasm/tempfile/temp.263.683428909
SQL>
十、增加新的ONLINE REDOLOGS 到ASM
SQL> SELECT * FROM V$LOG;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM
---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- ---------
1 1 5 10485760 1 YES INACTIVE 473286 06-APR-09
2 1 6 10485760 1 NO CURRENT 474627 06-APR-09
3 1 4 10485760 1 YES INACTIVE 472097 06-APR-09
SQL> ALTER DATABASE ADD LOGFILE '+DGROUP1' SIZE 10M;
Database altered.
SQL> ALTER DATABASE ADD LOGFILE '+DGROUP1' SIZE 10M;
Database altered.
SQL> ALTER DATABASE ADD LOGFILE '+DGROUP1' SIZE 10M;
Database altered.
SQL> ALTER DATABASE DROP LOGFILE GROUP 1;
Database altered.
SQL> ALTER SYSTEM SWITCH LOGFILE;
System altered.
SQL> ALTER SYSTEM SWITCH LOGFILE;
System altered.
SQL> SQL> ALTER DATABASE DROP LOGFILE GROUP 2;
ALTER DATABASE DROP LOGFILE GROUP 2
*
ERROR at line 1:
ORA-01624: log 2 needed for crash recovery of instance TOASM (thread 1)
ORA-00312: online log 2 thread 1: '/u01/oradata/TOASM/redo02.log'
SQL> ALTER SYSTEM CHECKPOINT;
System altered.
SQL> ALTER DATABASE DROP LOGFILE GROUP 2;
Database altered.
SQL>ALTER DATABASE DROP LOGFILE GROUP 3;
Database altered.
SQL> SELECT MEMBER FROM V$LOGFILE;
MEMBER
--------------------------------------------------
+DGROUP1/toasm/onlinelog/group_4.275.683429043
+DGROUP1/toasm/onlinelog/group_5.276.683429047
+DGROUP1/toasm/onlinelog/group_6.264.683429049
SQL>
十一 遷移引數檔案
SQL> create pfile from spfile;
File created.
SQL> create spfile='+DATA' from pfile;
File created.
[oracle@orcl ~]$ cd $ORACLE_HOME/dbs
[oracle@orcl dbs]$ rm -i spfileorcl.ora
rm:是否刪除 一般檔案 “spfileorcl.ora”? y
[oracle@orcl dbs]$ cat initorcl.ora
spfile=+data/orcl/PARAMETERFILE/spfile.268.752447059
十二檢驗是否完成:
select file_name,tablespace_name from dba_data_files;
select * from v$logfile;
show parameter control;
show parameter spfile;
遷移完畢!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15747463/viewspace-757942/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 利用RMAN將資料庫從檔案系統遷移到ASM資料庫ASM
- 將資料庫從ASM遷移到檔案系統資料庫ASM
- 將資料庫從檔案系統遷移到ASM資料庫ASM
- 使用rman將資料庫遷移到ASM例項資料庫ASM
- 利用rman將本地資料檔案遷移到asmASM
- 使用rman copy將資料庫遷移到ASM例項資料庫ASM
- 資料庫從檔案系統遷移到ASM資料庫ASM
- Oracle 11g單例項ASM遷移到檔案系統Oracle單例ASM
- 將spfile從ASM裡遷移到檔案系統ASM
- 用rman從檔案系統遷移資料庫到asm資料庫ASM
- 從檔案系統遷移到ASM上ASM
- oralce 從檔案系統遷移到ASMASM
- 四、用rman從檔案系統遷移資料庫到asm資料庫ASM
- 利用RMAN在檔案系統與ASM之間遷移資料庫ASM資料庫
- 使用RAM將檔案系統遷移到ASMASM
- 使用RMAN遷移檔案系統資料庫到ASM資料庫ASM
- oracle 將表空間下的資料檔案從檔案系統遷移到ASM磁碟組OracleASM
- 單例項資料庫expdp遷移到RAC庫單例資料庫
- 把檔案系統的資料檔案遷移到ASM儲存ASM
- RAC 例項 遷移到 單例項 -- 使用RMAN Duplicate單例
- 實現資料庫由檔案系統遷移到 ASM 磁碟組中資料庫ASM
- 採用Duplicate不連線target資料庫的方式將檔案系統遷移到ASM資料庫ASM
- Oracle11g使用rman從單例項遷移到racOracle單例
- 資料庫遷移到ASM資料庫ASM
- 怎麼把達夢資料庫例項從Windows遷移到Linux系統資料庫WindowsLinux
- oracle將控制檔案從裸裝置遷移到檔案系統Oracle
- 利用rman遷移裸裝置資料檔案到檔案系統
- 單例項資料遷移到RAC補充單例
- 【資料遷移】RMAN遷移資料庫到ASM(二)切換資料檔案到ASM資料庫ASM
- 三、rman 資料庫遷移--從檔案系統到裸裝置資料庫
- 將資料庫遷移到ASM的實驗記錄資料庫ASM
- 用RMAN遷移檔案到ASM或從ASM遷出ASM
- 將ORACLE資料庫資料檔案遷移到其他目錄(ZT)Oracle資料庫
- 使用shell指令碼及asm cp或RMAN copy批量將資料檔案從ASM拷貝到檔案系統指令碼ASM
- 如何遷移ASM資料檔案到檔案系統ASM
- hp-ux利用rman將資料庫跨平臺遷移到aix平臺上UX資料庫AI
- 利用RMAN將非ASM檔案移動到ASM裡 - [ASM]ASM
- rman將linux平臺資料庫遷移到window平臺資料庫Linux資料庫