ASM (2)
二、將資料庫轉移到ASM上
========================[@more@]
我們用RMAN實現這一功能。在轉移資料庫以前,先設若干跟檔案儲存位置相關的引數。
C:¥oracle¥product¥10.2.0¥db_1¥database>set oracle_sid=orcl
C:¥oracle¥product¥10.2.0¥db_1¥database>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 12月 28 10:38:52 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> connect/ as sysdba
已連線。
SQL> show parameter db_create_file_dest
NAME TYPE VALUE
--------------------- --------- ------------------------------
db_create_file_dest string C:¥oracle¥product¥10.2.0¥orada
ta
SQL> alter system set db_create_file_dest='+DGROUP1' scope=spfile;
系統已更改。
SQL> alter system set db_recovery_file_dest='+DGROUP1' scope=spfile;
系統已更改。
SQL> alter system set db_recovery_file_dest_size=3000M scope=spfile;
系統已更改。
SQL> alter system reset control_files scope=spfile sid='*';
系統已更改。
ALTER SYSTEM RESET 命令用來在SPFILE中刪除(unset)引數,此處用來刪除control_file引數,因為移到ASM上後需要重建control file。
將資料庫重啟到nomount狀態。
SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup nomount
ORACLE 例程已經啟動。
Total System Global Area 612368384 bytes
Fixed Size 1250428 bytes
Variable Size 272632708 bytes
Database Buffers 331350016 bytes
Redo Buffers 7135232 bytes
SQL> exit
從 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 斷開
啟動RMAN。
C:¥oracle¥product¥10.2.0¥db_1¥database>rman target /
恢復管理器: Release 10.2.0.1.0 - Production on 星期四 12月 28 10:42:58 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
連線到目標資料庫: orcl (未裝載)
RMAN> restore controlfile from
'C:¥oracle¥product¥10.2.0¥oradata¥ORCL¥CONTROLFILE¥O1_MF_2OT4KXWB_.CTL';
啟動 restore 於 28-12月-06
使用目標資料庫控制檔案替代恢復目錄
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=157 devtype=DISK
通道 ORA_DISK_1: 已複製控制檔案副本
輸出檔名=+DGROUP1/orcl/controlfile/backup.256.610368623
輸出檔名=+DGROUP1/orcl/controlfile/backup.257.610368627
完成 restore 於 28-12月-06
由於引數CREATE_FILE_DEST和RECOVERY_FILE_DEST都進行了設定,所以建立了2份controlfile。
轉移資料庫時使用命令 BACKUP AS COPY DATABASE...
RMAN> alter database mount;
資料庫已裝載
釋放的通道: ORA_DISK_1
RMAN> backup as copy database format '+DGROUP1';
啟動 backup 於 28-12月-06
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=153 devtype=DISK
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00001 name=C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥DATAFILE¥O1_MF_SYSTEM_2OT4J2H4_.DBF
輸出檔名 = +DGROUP1/orcl/datafile/system.258.610368679 標記 = TAG20061228T105117 recid = 1 時間戳 = 610368724
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:56
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00003 name=C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥DATAFILE¥O1_MF_SYSAUX_2OT4J2J3_.DBF
輸出檔名 = +DGROUP1/orcl/datafile/sysaux.259.610368733 標記 = TAG20061228T105117 recid = 2 時間戳 = 610368759
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:35
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00002 name=C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥DATAFILE¥O1_MF_UNDOTBS1_2OT4J2M1_.DBF
輸出檔名 = +DGROUP1/orcl/datafile/undotbs1.260.610368769 標記 = TAG20061228T105117 recid = 3 時間戳 = 610368771
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:04
通道 ORA_DISK_1: 啟動資料檔案副本
輸入資料檔案 fno=00004 name=C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥DATAFILE¥O1_MF_USERS_2OT4J2M1_.DBF
輸出檔名 = +DGROUP1/orcl/datafile/users.261.610368773 標記 = TAG20061228T105117 recid = 4 時間戳 = 610368773
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:03
通道 ORA_DISK_1: 啟動資料檔案副本
複製當前控制檔案
輸出檔名 = +DGROUP1/orcl/controlfile/backup.262.610368775 標記 = TAG20061228T105117 recid = 5 時間戳 = 610368778
通道 ORA_DISK_1: 資料檔案複製完畢, 經過時間: 00:00:03
通道 ORA_DISK_1: 啟動全部資料檔案備份集
通道 ORA_DISK_1: 正在指定備份集中的資料檔案
在備份集中包含當前的 SPFILE
通道 ORA_DISK_1: 正在啟動段 1 於 28-12月-06
通道 ORA_DISK_1: 已完成段 1 於 28-12月-06
段控制程式碼=+DGROUP1/orcl/backupset/2006_12_28/nnsnf0_tag20061228t105117_0.263.610368779 標記=TAG20061228T105117 註釋=NONE
通道 ORA_DISK_1: 備份集已完成, 經過時間:00:00:02
完成 backup 於 28-12月-06
RMAN> switch database to copy;
資料檔案 1 已切換成資料檔案副本 "+DGROUP1/orcl/datafile/system.258.610368679"
資料檔案 2 已切換成資料檔案副本 "+DGROUP1/orcl/datafile/undotbs1.260.610368769"
資料檔案 3 已切換成資料檔案副本 "+DGROUP1/orcl/datafile/sysaux.259.610368733"
資料檔案 4 已切換成資料檔案副本 "+DGROUP1/orcl/datafile/users.261.610368773"
RMAN> alter database open;
資料庫已開啟
RMAN> exit
恢復管理器完成。
資料庫轉移完成,用SQL*PLUS進入資料庫檢查狀態。
C:¥oracle¥product¥10.2.0¥db_1¥database>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 12月 28 10:56:48 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> connect / as sysdba
已連線。
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
-------------------------------- ------------------------
orcl OPEN
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
+DGROUP1/orcl/controlfile/backup.256.610368623
+DGROUP1/orcl/controlfile/backup.257.610368627
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
+DGROUP1/orcl/datafile/system.258.610368679
+DGROUP1/orcl/datafile/undotbs1.260.610368769
+DGROUP1/orcl/datafile/sysaux.259.610368733
+DGROUP1/orcl/datafile/users.261.610368773
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥ONLINELOG¥O1_MF_3_2OT4L52X_.LOG
C:¥ORACLE¥PRODUCT¥10.2.0¥FLASH_RECOVERY_AREA¥ORCL¥ONLINELOG¥O1_MF_3_2OT4L63F_.LOG
C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥ONLINELOG¥O1_MF_2_2OT4L2VC_.LOG
C:¥ORACLE¥PRODUCT¥10.2.0¥FLASH_RECOVERY_AREA¥ORCL¥ONLINELOG¥O1_MF_2_2OT4L43X_.LOG
C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥ONLINELOG¥O1_MF_1_2OT4L0WS_.LOG
C:¥ORACLE¥PRODUCT¥10.2.0¥FLASH_RECOVERY_AREA¥ORCL¥ONLINELOG¥O1_MF_1_2OT4L1X9_.LOG
已選擇6行。
SQL> select name from v$tempfile;
NAME
--------------------------------------------------------------------------------
C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥DATAFILE¥O1_MF_TEMP_2OT4LL2X_.TMP
可以看到controlfile和datafile都已經建在ASM磁碟上了,但是logfile和tempfile還在原先位置上。
轉移tempfile。
SQL> alter tablespace TEMP add tempfile;
表空間已更改。
SQL> alter database tempfile 'C:¥ORACLE¥PRODUCT¥10.2.0¥ORADATA¥ORCL¥DATAFILE¥O1_MF_TEMP_2OT4LL2X_.TMP' drop;
資料庫已更改。
SQL> select name from v$tempfile;
NAME
--------------------------------------------------------------------------------
+DGROUP1/orcl/tempfile/temp.264.610369327
轉移logfile,先增加3個組。
SQL> alter database add logfile size 50m;
資料庫已更改。
SQL> alter database add logfile size 50m;
資料庫已更改。
SQL> alter database add logfile size 50m;
資料庫已更改。
SQL> select group#,status from v$log order by group#;
GROUP# STATUS
---------- --------------------------------
1 CURRENT
2 INACTIVE
3 INACTIVE
4 UNUSED
5 UNUSED
6 UNUSED
已選擇6行。
SQL> alter database drop logfile group 2;
資料庫已更改。
SQL> alter database drop logfile group 3;
資料庫已更改。
刪除logfile group 1的時候會有些麻煩,因為你執行 SQL> alter system switch logfile 以後,GROUP 1的狀態並不是INACTIVE,而是ACTIVE。得執行多次該命令,才能使GROUP 1處於INACTIVE狀態。當然重啟資料庫也是個辦法。
當GROUP 1處於INACTIVE狀態時,我們就可以DROP GROUP 1。
SQL> select group#,status from v$log order by group#;
GROUP# STATUS
---------- --------------------------------
1 INACTIVE
4 INACTIVE
5 CURRENT
6 INACTIVE
SQL> alter database drop logfile group 1;
資料庫已更改。
SQL> select group#,status from v$log order by group#;
GROUP# STATUS
---------- --------------------------------
4 INACTIVE
5 CURRENT
6 INACTIVE
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------
+DGROUP1/orcl/onlinelog/group_4.265.610369507
+DGROUP1/orcl/onlinelog/group_4.266.610369511
+DGROUP1/orcl/onlinelog/group_5.267.610369523
+DGROUP1/orcl/onlinelog/group_5.268.610369527
+DGROUP1/orcl/onlinelog/group_6.269.610369537
+DGROUP1/orcl/onlinelog/group_6.270.610369541
已選擇6行。
這樣我們把整個資料庫都移到了ASM上。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/207/viewspace-896065/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java ASM學習(2)JavaASM
- Oracle 11gR2 ASM例項記憶體管理OracleASM記憶體
- [20191128]11GR2 asm例項audit檔案.txtASM
- 【ASM】Oracle asm刪除磁碟組注意事項ASMOracle
- 【ASM】ASM磁碟頭被重寫,如何修復ASM
- goldengate + asm + racGoASM
- gnu inline asminlineASM
- 【ASM】ASM啟動無法找到spfile問題原因ASM
- 從定位資料塊所在ASM磁碟到ASM strippingASM
- ORACLE11GR2 RAC解除安裝ASM例項步驟OracleASM
- ASM叢集檔案系統ACFS(ASM Cluster File System)ASM
- ASM Metadata Dump UtilityASM
- ASM磁碟組限制ASM
- 4.5.1.1 srvctl add asmASM
- Android Transform + ASM 初探AndroidORMASM
- RAC+ASM+DATAGUARDASM
- ASM Fast Mirror ResyncASMAST
- ASM(Automatic Storage Management)ASM
- OCFS,OCFS2,ASM,RAW 討論主題合併帖(轉)二ASM
- 淺談位元組碼增強技術系列2-Asm與CglibASMCGLib
- 【ASM】asm常用命令及主要功能介紹ASM
- Oracle ASM神書《撥雲見日 解密Oracle ASM核心》出版了OracleASM解密
- 【ASM】Oracle asm磁碟被格式化,如何掛載該磁碟組ASMOracle
- [20230216]資料庫連線訪問asm相關檢視2.txt資料庫ASM
- ASM下遷移spfileASM
- 遷移ASM磁碟組ASM
- Automatic Storage Management (ASM)(轉)ASM
- Multi-path handling for asmASM
- Oracle ASM擴容(NFS)OracleASMNFS
- ASM 翻譯系列第十三彈:ASM 高階知識 - Forcing the issueASM
- 【ASM】ASM資料檔案和OS檔案(FILESYSTEM)轉移方法總結ASM
- 【ASM】ORA-27504 ORA-27300 ORA-27303 while starting ASM (Doc ID 2281441.1)ASMWhile
- Oracle ASM AMDU工具的使用OracleASM
- 遇到ASM的兩個BUGASM
- 【RMAN】RMAN備份至ASMASM
- 【RAC】asm_diskgroups 引數ASM
- Oracle ASM Cluster File Systems (ACOracleASM
- 【32asm】04 - 重定位ASM
- Oracle:ASM & 密碼檔案OracleASM密碼