遷移檔案系統管理下的db到asm下
C:>sqlplus as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:08:22 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已連線到空閒例程。
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 88081764 bytes
Database Buffers 75497472 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> alter database backup controlfile to 'c:control01.ctl';
資料庫已更改。
SQL> alter system set control_files='+DG' scope=spfile;
系統已更改。
SQL> alter system set db_recovery_file_dest='+DG';
系統已更改。
SQL> SHOW PARAMETER DB_RECOVERY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string +DG
db_recovery_file_dest_size big integer 2G
SQL> SHOW PARAMETER DB_NAME
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_name string TEST
SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> exit
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
C:>rman target
恢復管理器: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:11:40 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已連線到目標資料庫 (未啟動)
RMAN> startup nomount
Oracle 例項已啟動
系統全域性區域總計 167772160 位元組
Fixed Size 1247900 位元組
Variable Size 88081764 位元組
Database Buffers 75497472 位元組
Redo Buffers 2945024 位元組
RMAN> restore controlfile from 'c:control01.ctl';
啟動 restore 於 11-10月-09
使用目標資料庫控制檔案替代恢復目錄
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
通道 ORA_DISK_1: 已複製控制檔案副本
輸出檔名=+DG/test/controlfile/current.271.699995579
完成 restore 於 11-10月-09
RMAN> alter database mount;
資料庫已裝載
釋放的通道: ORA_DISK_1
RMAN> backup as copy database format '+DG';
啟動 backup 於 11-10月-09
啟動 implicit crosscheck backup 於 11-10月-09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=152 devtype=DISK
完成 implicit crosscheck backup 於 11-10月-09
啟動 implicit crosscheck copy 於 11-10月-09
使用通道 ORA_DISK_1
完成 implicit crosscheck copy 於 11-10月-09
搜尋恢復區域中的所有檔案
正在編制檔案目錄...
沒有為檔案編制目錄
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00001 name=C:ORADATATESTSYSTEM01.DBF
輸出檔名 = +DG/test/datafile/system.272.699995623 標記 = TAG20091011T191342 re
cid = 1 時間戳 = 699995675
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:55
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00002 name=C:ORADATATESTUNDOTBS01.DBF
輸出檔名 = +DG/test/datafile/undotbs1.273.699995679 標記 = TAG20091011T191342
recid = 2 時間戳 = 699995699
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:25
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00003 name=C:ORADATATESTSYSAUX01.DBF
輸出檔名 = +DG/test/datafile/sysaux.274.699995705 標記 = TAG20091011T191342 re
cid = 3 時間戳 = 699995722
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:25
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00004 name=C:ORADATATESTUSERS01.DBF
輸出檔名 = +DG/test/datafile/users.275.699995729 標記 = TAG20091011T191342 rec
id = 4 時間戳 = 699995733
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:07
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00005 name=C:ORADATATESTTEST.DBF
輸出檔名 = +DG/test/datafile/test.276.699995737 標記 = TAG20091011T191342 reci
d = 5 時間戳 = 699995738
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:03
完成 backup 於 11-10月-09
RMAN-06497: 警告: 控制檔案不是當前版本, 控制檔案自動備份將被跳過
RMAN>
RMAN> recover database;
啟動 recover 於 11-10月-09
使用通道 ORA_DISK_1
正在開始介質的恢復
存檔日誌執行緒 1 序列 22 已作為檔案 C:ORADATATESTREDO01.LOG 存在於磁碟上
存檔日誌檔名 =C:ORADATATESTREDO01.LOG 執行緒 =1 序列 =22
介質恢復完成, 用時: 00:00:03
完成 recover 於 11-10月-09
RMAN> run{
2> switch tempfile 1 to '+DG';
3> }
臨時檔案 1 在控制檔案中已重新命名為 +DG
RMAN> EXIT
恢復管理器完成。
C:>sqlplus as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:18:35 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
C:ORADATATESTREDO01.LOG
C:ORADATATESTREDO02.LOG
C:ORADATATESTREDO03.LOG
SQL> alter database rename file 'C:ORADATATESTREDO01.LOG' to '+DG';
資料庫已更改。
SQL> alter database rename file 'C:ORADATATESTREDO02.LOG' to '+DG';
資料庫已更改。
SQL> alter database rename file 'C:ORADATATESTREDO03.LOG' to '+DG';
資料庫已更改。
SQL> EXIT
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
C:>rman target
恢復管理器: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:21:16 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已連線到目標資料庫: TEST (DBID=1997875194, 未開啟)
RMAN> exit
恢復管理器完成。
C:>sqlplus as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:21:32 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
+DG
+DG
+DG
SQL> exit
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
C:>rman target
恢復管理器: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:21:42 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已連線到目標資料庫: TEST (DBID=1997875194, 未開啟)
RMAN> alter database open resetlogs;
使用目標資料庫控制檔案替代恢復目錄
資料庫已開啟
RMAN>
RMAN> exit
恢復管理器完成。
C:>sqlplus as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:24:08 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
--遷移之後居然發現資料檔案沒有使用asm中的而是繼續使用了檔案系統下的
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
C:ORADATATESTSYSTEM01.DBF
C:ORADATATESTUNDOTBS01.DBF
C:ORADATATESTSYSAUX01.DBF
C:ORADATATESTUSERS01.DBF
C:ORADATATESTTEST.DBF
SQL> exit
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
C:>sqlplus as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 10月 11 19:26:44 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 88081764 bytes
Database Buffers 75497472 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。
--重啟動之後問題依舊,仔細檢查步驟,發現在執行backup as copy database format '+DG';
之後居然忘了之行:
switch database to copy;
--暈死了...
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
C:ORADATATESTSYSTEM01.DBF
C:ORADATATESTUNDOTBS01.DBF
C:ORADATATESTSYSAUX01.DBF
C:ORADATATESTUSERS01.DBF
C:ORADATATESTTEST.DBF
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
+DG/test/onlinelog/group_1.277.699996111
+DG/test/onlinelog/group_2.278.699996117
+DG/test/onlinelog/group_3.279.699996125
SQL>
SQL> show parameter control
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string +DG/test/controlfile/current.2
71.699995579
SQL> show parameter db_re
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string +DG
db_recovery_file_dest_size big integer 2G
db_recycle_cache_size big integer 0
--無奈,只能透過重建controlfile來補救一下了...
SQL> alter database backup controlfile to trace;
資料庫已更改。
SQL> shutdown immediate
ORA-01109: 資料庫未開啟
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup nomount
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 88081764 bytes
Database Buffers 75497472 bytes
Redo Buffers 2945024 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 '+DG/test/onlinelog/group_1.277.699996111' SIZE 50M,
9 GROUP 2 '+DG/test/onlinelog/group_2.278.699996117' SIZE 50M,
10 GROUP 3 '+DG/test/onlinelog/group_3.279.699996125' SIZE 50M
11 -- STANDBY LOGFILE
12 DATAFILE
13 '+dg/test/datafile/SYSTEM.272.699995623',
14 '+dg/test/datafile/SYSAUX.274.699995705',
15 '+dg/test/datafile/TEST.276.699995737',
16 '+dg/test/datafile/UNDOTBS1.273.699995679',
17 '+dg/test/datafile/USERS.275.699995729'
18 CHARACTER SET ZHS16GBK
19 ;
CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
*
第 1 行出現錯誤:
ORA-01503: CREATE CONTROLFILE ??
ORA-01189: ????????????? RESETLOGS
ORA-01517: ????: '+DG/test/onlinelog/group_1.277.699996111'
SQL> alter session set nls_language=american;
Session altered.
SQL> /
Session altered.
SQL> CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 '+DG/test/onlinelog/group_1.277.699996111' SIZE 50M,
9 GROUP 2 '+DG/test/onlinelog/group_2.278.699996117' SIZE 50M,
10 GROUP 3 '+DG/test/onlinelog/group_3.279.699996125' SIZE 50M
11 -- STANDBY LOGFILE
12 DATAFILE
13 '+dg/test/datafile/SYSTEM.272.699995623',
14 '+dg/test/datafile/SYSAUX.274.699995705',
15 '+dg/test/datafile/TEST.276.699995737',
16 '+dg/test/datafile/UNDOTBS1.273.699995679',
17 '+dg/test/datafile/USERS.275.699995729'
18 CHARACTER SET ZHS16GBK
19 ;
CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01189: file is from a different RESETLOGS than previous files
ORA-01517: log member: '+DG/test/onlinelog/group_1.277.699996111'
SQL> /
CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS NOARCHIVELOG
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01189: file is from a different RESETLOGS than previous files
ORA-01517: log member: '+DG/test/onlinelog/group_1.277.699996111'
--由於資料檔案和redo不是來自同一個版本,顯然日誌更新,所以無法使用noresetlogs建立controlfile
SQL> CREATE CONTROLFILE REUSE DATABASE "TEST" RESETLOGS NOARCHIVELOG
2 MAXLOGFILES 16
3 MAXLOGMEMBERS 3
4 MAXDATAFILES 100
5 MAXINSTANCES 8
6 MAXLOGHISTORY 292
7 LOGFILE
8 GROUP 1 '+DG/test/onlinelog/group_1.277.699996111' SIZE 50M,
9 GROUP 2 '+DG/test/onlinelog/group_2.278.699996117' SIZE 50M,
10 GROUP 3 '+DG/test/onlinelog/group_3.279.699996125' SIZE 50M
11 -- STANDBY LOGFILE
12 DATAFILE
13 '+dg/test/datafile/SYSTEM.272.699995623',
14 '+dg/test/datafile/SYSAUX.274.699995705',
15 '+dg/test/datafile/TEST.276.699995737',
16 '+dg/test/datafile/UNDOTBS1.273.699995679',
17 '+dg/test/datafile/USERS.275.699995729'
18 CHARACTER SET ZHS16GBK
19 ;
Control file created.
SQL> alter database open resetlogs;
Database altered.
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
+DG/test/datafile/users.275.699995729
+DG/test/datafile/undotbs1.273.699995679
+DG/test/datafile/test.276.699995737
+DG/test/datafile/sysaux.274.699995705
+DG/test/datafile/system.272.699995623
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
+DG/test/onlinelog/group_3.279.699996125
+DG/test/onlinelog/group_2.278.699996117
+DG/test/onlinelog/group_1.277.699996111
SQL> show parameter control
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string +DG/test/controlfile/current.2
71.699995579
SQL>show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string E:oracleproduct10.2.0db_1databaseSPFILETEST.ORA
SQL>
--處理spfile,把spfile也放入asm中管理
--===========================
ASMCMD> mkdir PARAMETER
ASMCMD> ls
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETER/
ASMCMD> pwd
+dg/test
ASMCMD>
--===========================
SQL> create pfile from spfile;
File created.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup pfile='E:oracleproduct10.2.0db_1databaseinittest.ora'
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 92276068 bytes
Database Buffers 71303168 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> create spfile='+dg/test/parameter/spfile.ora' from pfile;
檔案已建立。
SQL> shutdown immediate
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
--編輯$ORACLE_HOME/database/inittest.ora檔案,其內容為:
spfile='+dg/test/parameter/spfile.ora'
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 92276068 bytes
Database Buffers 71303168 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string +DG/test/parameter/spfile.ora
SQL>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/19602/viewspace-1027763/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ASM下遷移控制檔案ASM
- 如何遷移ASM資料檔案到檔案系統ASM
- ASM檔案系統遷移ASM
- asm 檔案系統遷移ASM
- 使用RMAN遷移檔案系統資料庫到ASM資料庫ASM
- 用rman從檔案系統遷移資料庫到asm資料庫ASM
- 用RMAN遷移檔案到ASM或從ASM遷出ASM
- 四、用rman從檔案系統遷移資料庫到asm資料庫ASM
- 遷移資料庫檔案到ASM資料庫ASM
- ASM下遷移spfileASM
- 10G下從ASM複製檔案到檔案系統ASM
- 移動資料檔案從ASM到檔案系統ASM
- 【資料遷移】RMAN遷移資料庫到ASM(二)切換資料檔案到ASM資料庫ASM
- oracle 將表空間下的資料檔案從檔案系統遷移到ASM磁碟組OracleASM
- 從檔案系統遷移到ASM上ASM
- oralce 從檔案系統遷移到ASMASM
- ASM與檔案系統之間copy資料檔案--檔案系統到ASMASM
- asm拷貝檔案到檔案系統ASM
- 移動資料檔案從檔案系統到ASM磁碟組中ASM
- 利用rman遷移裸裝置資料檔案到檔案系統
- 使用RAM將檔案系統遷移到ASMASM
- 把檔案系統的資料檔案遷移到ASM儲存ASM
- redhat enterprise 4下遷移oracle 10g到asmRedhatOracle 10gASM
- 利用RMAN在檔案系統與ASM之間遷移資料庫ASM資料庫
- Azure ASM到ARM遷移 (三) Reserved IP的遷移ASM
- 將ASM裡面的檔案copy到檔案系統ASM
- 將spfile從ASM裡遷移到檔案系統ASM
- 資料庫從檔案系統遷移到ASM資料庫ASM
- 遷移和移動 UNIX 檔案系統(轉)
- ASM下資料檔案遷移至不同磁碟組小記ASM
- 透過xtts遷移單例項檔案系統表空間到RAC ASM儲存表空間TTS單例ASM
- 通過xtts遷移單例項檔案系統表空間到RAC ASM儲存表空間TTS單例ASM
- 遷移資料庫到ASM資料庫ASM
- Windows系統下控制檔案的移動及恢復Windows
- 將資料庫從ASM遷移到檔案系統資料庫ASM
- 將資料庫從檔案系統遷移到ASM資料庫ASM
- 利用RMAN將非ASM檔案移動到ASM裡 - [ASM]ASM
- 一、rman 資料庫遷移--從檔案系統到檔案系統用預設的備份路徑資料庫