12c新特性,線上move資料檔案
本文轉載自oracle官方部落格https://blogs.oracle.com/database4cn/12c%e6%96%b0%e7%89%b9%e6%80%a7-%e5%9c%a8%e7%ba%bf%e6%93%8d%e4%bd%9c%e6%95%b0%e6%8d%ae%e6%96%87%e4%bb%b6
在oracle12c之前,若是想要把一個資料檔案改名或者遷移,必須在歸檔模式下先把這個資料檔案offline之後,然後進行OS上的copy或者rename 操作,最後在sqlplus裡面進行alter database rename file x to Y;如果不是archivelog模式在offline資料檔案的時候就會遇到ORA-01145
SQL> alter database datafile 8 offline;
alter database datafile 8 offline
*
ERROR at line 1:
ORA-01145: offline immediate disallowed unless media recovery enabled
12c oracle 增強了這個功能,我們可以線上進行資料檔案的改名和遷移,而無需offline 資料檔案,甚至都可以不開啟歸檔的情況下進行操作,這無疑oracle在非停機運維的能力上又增強了。
下面是改名的一個操作輸出,當然移動路徑也可以用這個辦法:
SQL> archive log list;
Database log mode No Archive Mode <<<<<非歸檔
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 517
Current log sequence 519
SQL>
SQL>
SQL> ALTER DATABASE MOVE DATAFILE '/refresh/home/app/oracle/oradata/orcl/users01.dbf' to '/refresh/home/app/oracle/oradata/orcl/users02.dbf' ;
Database altered.
上述執行成功後,原有資料檔案就直接被清理了,如果你想保留原有的資料檔案,可以指定Keep 關鍵字來實現,注意此引數不適用原資料檔案採用OFM的場景。
SQL> ALTER DATABASE MOVE DATAFILE '/refresh/home/app/oracle/oradata/orcl/users02.dbf' to '/refresh/home/app/oracle/oradata/orcl/users01.dbf' keep; <<keep 原有資料檔案
Database altered.
SQL> host ls -l /refresh/home/app/oracle/oradata/orcl/user*
-rw-r----- 1 oracle oracle 352591872 Dec 17 07:19 /refresh/home/app/oracle/oradata/orcl/users01.dbf
-rw-r----- 1 oracle oracle 352591872 Dec 17 07:19 /refresh/home/app/oracle/oradata/orcl/users02.dbf
可以看到原有資料檔案並沒有刪除,若是目標檔案已經存在,可以透過reuse 引數來覆蓋,下面是沒加reuse和使用reuse之後的輸出
SQL> ALTER DATABASE MOVE DATAFILE '/refresh/home/app/oracle/oradata/orcl/users01.dbf' to '/refresh/home/app/oracle/oradata/orcl/users02.dbf' ;
ALTER DATABASE MOVE DATAFILE '/refresh/home/app/oracle/oradata/orcl/users01.dbf' to '/refresh/home/app/oracle/oradata/orcl/users02.dbf'
*
ERROR at line 1:
ORA-01119: error in creating database file
'/refresh/home/app/oracle/oradata/orcl/users02.dbf'
ORA-27038: created file already exists
Additional information: 1
SQL> ALTER DATABASE MOVE DATAFILE '/refresh/home/app/oracle/oradata/orcl/users01.dbf' to '/refresh/home/app/oracle/oradata/orcl/users02.dbf' reuse ;
Database altered.
SQL> host ls -l /refresh/home/app/oracle/oradata/orcl/user*
-rw-r----- 1 oracle oracle 352591872 Dec 17 07:23 /refresh/home/app/oracle/oradata/orcl/users02.dbf
沒有使用keep ,user01.dbf已經刪除了。
當然上述操作都是支援ASM的,參考語句如下:
ALTER DATABASE MOVE DATAFILE '/u01/oracle/rbdb1/user1.dbf' TO '+DG1/data/orcl/datafile/user1.dbf';
ALTER DATABASE MOVE DATAFILE '+DG1/data/orcl/datafile/user1.dbf' TO '+DG2/data/orcl/datafile/user1.dbf';
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26964624/viewspace-2646854/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 12C 線上MOVE
- [20181031]12c 線上移動資料檔案.txt
- 12c pdb線上移動資料檔案或者重新命名資料檔案
- 12C關於CDB、PDB線上移動資料檔案、線上重新命名資料檔案的操作說明
- Oracle12C新特性-線上重新命名遷移資料檔案(一)Oracle
- Oracle 12C新特性-資料泵新引數(LOGTIME)Oracle
- oracle 線上rename資料檔案Oracle
- Oracle 12C新特性-資料泵新引數(VIEWS_AS_TABLES)OracleView
- Oracle 12c的DG自動同步密碼檔案--ASM 新特性:共享密碼檔案Oracle密碼ASM
- Oracle 12.2 新特性:線上PDB資料庫克隆(Pluggable Hot Clone)Oracle資料庫
- Oracle 12C新特性-線上把非分割槽錶轉為分割槽表Oracle
- Oracle 12.2 新特性: Online PDB relocate (PDB hot move)Oracle
- Oracle 12c新特性--ASMFD(ASM Filter Driver)特性OracleASMFilter
- Oracle 12C新特性-History命令Oracle
- Oracle 12C新特性In-MemoryOracle
- Oracle 12c 兩個新特性Oracle
- 12c RMAN新特性之Recover Table
- 函式:file.move 移動檔案函式
- 【12c】12c RMAN新特性之通過網路遠端恢復資料庫(RESTORE/Recover from Service)資料庫REST
- Oracle 12C新特性-RMAN恢復表Oracle
- Oracle 12c新特性---Rapid Home Provisioning (RHP)OracleAPI
- 織夢CMS(dedecms)的資料庫連線檔案_織夢連線資料庫檔案資料庫
- admin_move_table線上更改分割槽鍵
- [20190718]12c rman新特性 表恢復.txt
- 【12c】12c RMAN新特性之recover table(表級別恢復)
- kkFileView檔案線上預覽View
- ZBlogPHP如何線上管理檔案?PHP
- 透徹理解C++11新特性:右值引用、std::move、std::forwardC++Forward
- 利用WITH MOVE語句獲取資料庫邏輯檔名BG資料庫
- 網站連線資料庫配置檔案網站資料庫
- http不使用Form表單傳送檔案資料和非檔案資料(上傳篇)HTTPORM
- Java7 新特性 —— java.nio.file 檔案操作Java
- 12C新特性___In-Memory列式儲存的總結
- Java讀取properties檔案連線資料庫Java資料庫
- AJAX資料互動及檔案上傳功能
- SpringMVC(四)上傳檔案、json資料互動SpringMVCJSON
- MySQL 5.7新特性之線上收縮undo表空間MySql
- 12c日誌檔案路徑