三種ASM下將資料檔案由dg遷移到dg的方法
應客戶要求,需在ASM下將資料檔案由dg遷移到dg,經過幾天測試,有以下方法
一.
[root@darren ~]# su - grid
[grid@darren ~]$ asmcmd
ASMCMD> ls
DATA/
FRA/
ASMCMD> cd data/
ASMCMD> mkdir datafile
ASMCMD> ls
datafile/
SQL>ALTER DATABASE DATAFILE '+DATA/datafile/tbs_test_tablespac.dbf' OFFLINE;
ASMCMD>cp +data/datafile/tbs_test_tablespac.dbf +fra/datafile/tbs_test_tablespac.dbf
SQL>alter database rename file '+data/datafile/tbs_test_tablespac.dbf' to '+fra/datafile/tbs_test_tablespac.dbf';
SQL>RECOVER DATAFILE '+fra/datafile/tbs_test_tablespac.dbf';
SQL>alter database datafile '+fra/datafile/tbs_test_tablespac.dbf' online;
ALTER DISKGROUP DATA DROP FILE '+data/datafile/tbs_test_tablespac.dbf';
二.RMAN 下遷移
1.查出需要遷移的ASM資料檔案,本次是需要遷移tbs_test_tablespac表空間下的檔案。
SQL> select file_name,bytes/1024/1024/1024 ,tablespace_name from dba_data_files where tablespace_name ='tbs_test_tablespac';
3.將要遷移的 ASM 資料檔案OFFLINE:
SQL> ALTER DATABASE DATAFILE '+DATA/datafile/tbs_test_tablespac.dbf' OFFLINE;
$ rman target /
RMAN> COPY DATAFILE '+data/datafile/tbs_test_tablespac.dbf' TO '+fra/datafile/tbs_test_tablespac.dbf';
SQL> ALTER DATABASE RENAME FILE '+data/datafile/tbs_test_tablespac.dbf' TO '+fra/datafile/tbs_test_tablespac.dbf';
RMAN> SWITCH DATAFILE '+fra/datafile/tbs_test_tablespac.dbf' TO COPY;
RMAN> RECOVER DATAFILE '+fra/datafile/tbs_test_tablespac.dbf';
SQL> ALTER DATABASE DATAFILE '+fra/datafile/tbs_test_tablespac.dbf' ONLINE;
SQL> SELECT file_name FROM dba_data_files;
SQL> ALTER DISKGROUP DATA DROP FILE '+data/datafile/tbs_test_tablespac.dbf';
三.線上重定義表到新表空間:
1.建立新表空間
sql>create bigfile tablespace tbs_test_tablespac_2 datafile '+fra/datafile/tbs_test_tablespac.dbf' size 100M autoextend off;
1)驗證是否可以基於主鍵方式遷移
SQL>exec dbms_redefinition.can_redef_table(uname=>'test',tname=>'table_test',options_flag=>dbms_redefinition.cons_use_pk);
alter table test.table_test add constraint table_test_pk primary key (table_name) enable validate;
2)建立線上重定義中間表
SQL>create table TABLE_TEST2 (******) tablespace TBS_IDL_BID_2;
select table_name,tablespace_name from dba_tables where owner ='TEST';
3)線上重定義表
SQL>exec dbms_redefinition.start_redef_table(uname=>'TEST',orig_table=>'TABLE_TEST',int_table=>'TABLE_TEST2');
手動同步
SQL>exec dbms_redefinition.sync_interim_table(uname=>'TEST',orig_table=>'TABLE_TEST',int_table=>'TABLE_TEST2');
完成重定義
exec dbms_redefinition.finish_redef_table(uname=>'TEST',orig_table=>'TABLE_TEST',int_table=>'TABLE_TEST2');
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29863023/viewspace-1733115/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- asm管理的dg資料檔案缺失的處理方法ASM
- 利用rman將本地資料檔案遷移到asmASM
- 將資料庫從ASM遷移到檔案系統資料庫ASM
- 將資料庫從檔案系統遷移到ASM資料庫ASM
- 利用RMAN將資料庫從檔案系統遷移到ASM資料庫ASM
- 資料庫遷移到ASM資料庫ASM
- oracle 將表空間下的資料檔案從檔案系統遷移到ASM磁碟組OracleASM
- 將資料庫遷移到ASM的實驗記錄資料庫ASM
- 使用rman將資料庫遷移到ASM例項資料庫ASM
- 使用RAM將檔案系統遷移到ASMASM
- 資料庫從檔案系統遷移到ASM資料庫ASM
- 使用rman copy將資料庫遷移到ASM例項資料庫ASM
- 【DG】DG的3種保護模式模式
- 一次dg資料檔案及archive log遷移Hive
- 將spfile從ASM裡遷移到檔案系統ASM
- Monitor ASM DG IOASM
- oracle 表空間下資料檔案遷移的三種方法Oracle
- 把檔案系統的資料檔案遷移到ASM儲存ASM
- 利用RMAN將資料庫從檔案系統遷移到ASM(單例項)資料庫ASM單例
- DG三種模式 圖表解析模式
- 遷移到ASMASM
- 採用Duplicate不連線target資料庫的方式將檔案系統遷移到ASM資料庫ASM
- 將ORACLE資料庫資料檔案遷移到其他目錄(ZT)Oracle資料庫
- oracle物理DG管理-redo資料傳輸,應用與三種模式Oracle模式
- 從檔案系統遷移到ASM上ASM
- oralce 從檔案系統遷移到ASMASM
- oracle dg庫資料檔案空間不足Oracle
- DG備援資料檔案重新命名
- 將pentaho資料庫遷移到oracle資料庫資料庫Oracle
- RAC+DG(asm單例項)ASM單例
- 實現資料庫由檔案系統遷移到 ASM 磁碟組中資料庫ASM
- RAC搭建DG-生產端控制檔案和聯機日誌檔案傳至DG端-實現DG端資料庫open資料庫
- 【RAC】RAC本地資料檔案遷移至ASM的方法(3)ASM
- 【RAC】RAC本地資料檔案遷移至ASM的方法(2)ASM
- 【RAC】RAC本地資料檔案遷移至ASM的方法(1)ASM
- 物理DG與邏輯DG的區別與邏輯DG同步異常處理方法
- DG備庫手動管理 新增資料檔案
- oracle asm線上替換dg盤操作OracleASM