oracle定义转储目录,Oracle 12.1新特性:在线rename或relocate数据文件
在Oracle12.1之前的版本中要重命名數據文件或移動數據文件需要關閉數據庫或把表空間/數據文件置為offline狀態才可以,參考之前總結的
要實現這一功能需要使用ALTERDATABASEMOVEDATAFILE語句,語法如下ALTER?DATABASE?MOVE?DATAFILE?(?'filename'?|?'ASM_filename'?|?file_number?)
[?TO?(?'filename'?|?'ASM_filename'?)?]
[?REUSE?]?[?KEEP?]
下面在12.2版本測試這一功能zx@ORA12C>select?*?from?v$version;
BANNER?????CON_ID
--------------------------------------------------------------------------------?----------
Oracle?Database?12c?Enterprise?Edition?Release?12.2.0.1.0?-?64bit?Production??0
PL/SQL?Release?12.2.0.1.0?-?Production??0
CORE12.2.0.1.0Production??0
TNS?for?Linux:?Version?12.2.0.1.0?-?Production??0
NLSRTL?Version?12.2.0.1.0?-?Production??0
1、創建測試表空間及數據文件:sys@ORA12C>create?tablespace?t_move?datafile?'/home/oracle/t_move.dbf'?size?50m?;
Tablespace?created.
sys@ORA12C>col?name?for?a50
sys@ORA12C>select?d.name,d.status?from?v$datafile?d,v$tablespace?t?where?t.ts#=d.ts#?and?t.name='T_MOVE';
NAME???STATUS
--------------------------------------------------?-------
/home/oracle/t_move.dbf????ONLINE
現在數據文件'/home/oracle/t_move.dbf'為ONLINE狀態
2、執行重命名操作sys@ORA12C>alter?database?move?datafile?'/home/oracle/t_move.dbf'?to?'/home/oracle/t_move01.dbf';
Database?altered.
sys@ORA12C>select?d.name,d.status?from?v$datafile?d,v$tablespace?t?where?t.ts#=d.ts#?and?t.name='T_MOVE';
NAME???STATUS
--------------------------------------------------?-------
/home/oracle/t_move01.dbf???ONLINE
sys@ORA12C>!ls?-l?/home/oracle/t_move01.dbf
-rw-r-----?1?oracle?oinstall?52436992?Jul?11?16:07?/home/oracle/t_move01.dbf
sys@ORA12C>!ls?-l?/home/oracle/t_move.dbf
ls:?cannot?access?/home/oracle/t_move.dbf:?No?such?file?or?directory
可以看到文件名從t_move.dbf改為了t_move01.dbf,原文件已經不存在了。
3、執行移動目錄操作sys@ORA12C>alter?database?move?datafile?'/home/oracle/t_move01.dbf'?to?'/u01/app/oracle/oradata/ora12c/t_move01.dbf';
Database?altered.
sys@ORA12C>!ls?-l?/u01/app/oracle/oradata/ora12c/t_move01.dbf
-rw-r-----?1?oracle?oinstall?52436992?Jul?11?16:10?/u01/app/oracle/oradata/ora12c/t_move01.dbf
sys@ORA12C>!ls?-l?/home/oracle/t_move01.dbf
ls:?cannot?access?/home/oracle/t_move01.dbf:?No?such?file?or?directory
sys@ORA12C>select?d.name,d.status?from?v$datafile?d,v$tablespace?t?where?t.ts#=d.ts#?and?t.name='T_MOVE';
NAME???STATUS
--------------------------------------------------?-------
/u01/app/oracle/oradata/ora12c/t_move01.dbf???ONLINE
從上面的結果可以看到數據文件從'/home/oracle'目錄移動到了'/u01/app/oracle/oradata/ora12c'目錄下了。
4、copy數據文件到目標目錄,保留原文件sys@ORA12C>alter?database?move?datafile??'/u01/app/oracle/oradata/ora12c/t_move01.dbf'?to?'/home/oracle/t_move01.dbf'?keep;
Database?altered.
sys@ORA12C>select?d.name,d.status?from?v$datafile?d,v$tablespace?t?where?t.ts#=d.ts#?and?t.name='T_MOVE';
NAME???STATUS
--------------------------------------------------?-------
/home/oracle/t_move01.dbf???ONLINE
sys@ORA12C>!ls?-l?/home/oracle/t_move01.dbf
-rw-r-----?1?oracle?oinstall?52436992?Jul?11?16:15?/home/oracle/t_move01.dbf
sys@ORA12C>!ls?-l?/u01/app/oracle/oradata/ora12c/t_move01.dbf
-rw-r-----?1?oracle?oinstall?52436992?Jul?11?16:15?/u01/app/oracle/oradata/ora12c/t_move01.dbf
從上面的結果可以看到數據文件改為了/home/oracle/t_move01.dbf,但原來的數據文件仍然被保留。
5、移動數據文件到ASM存儲--文件系統到ASM
ALTER?DATABASE?MOVE?DATAFILE?'/u01/oracle/rbdb1/user1.dbf'
TO?'+dgroup_01/data/orcl/datafile/user1.dbf';
--ASM到ASM
ALTER?DATABASE?MOVE?DATAFILE?'+dgroup_01/data/orcl/datafile/user1.dbf'
TO?'+dgroup_02/data/orcl/datafile/user1.dbf';
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的oracle定义转储目录,Oracle 12.1新特性:在线rename或relocate数据文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android光传感实现摩斯密码,根据莫
- 下一篇: 中断、异常、处理对于操作系统的概念