日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

oracle 拷贝文件到asm,Oracle 从ASM复制文件到文件系统

發布時間:2023/12/31 windows 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 拷贝文件到asm,Oracle 从ASM复制文件到文件系统 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

工作中,有時需要把文件從ASM中復制到文件系統中或者反過來,做一些維護操作,本文介紹了4種復制文件的的方法:ASMCMD中的cp命令(11g)

dbms_file_transfer包

rman的convert或backup as copy

FTP

下面分別介紹這4種方法

1、ASMCMD中的cp命令(11g)

cp命令是11g新增的命令,使用它可以輕松的把文件從ASM中復制到文件系統中或者反過來。還可以把ASM中的文件復制到網絡上的其他服務器的文件系統中。#從ASM復制到文件系統

[grid@rac1?~]$?asmcmd?-p

ASMCMD?[+]?>?cd?data

ASMCMD?[+data]?>?cd?orcl

ASMCMD?[+data/orcl]?>?cd?datafile

ASMCMD?[+data/orcl/datafile]?>?ls

SYSAUX.257.925306091

SYSTEM.256.925306089

UNDOTBS1.258.925306091

UNDOTBS2.264.925306377

USERS.259.925306091

ASMCMD?[+data/orcl/datafile]?>?ls?-l

Type??????Redund??Striped??Time?????????????Sys??Name

DATAFILE??UNPROT??COARSE???MAY?21?11:00:00??Y????SYSAUX.257.925306091

DATAFILE??UNPROT??COARSE???MAY?21?11:00:00??Y????SYSTEM.256.925306089

DATAFILE??UNPROT??COARSE???MAY?21?11:00:00??Y????UNDOTBS1.258.925306091

DATAFILE??UNPROT??COARSE???MAY?21?11:00:00??Y????UNDOTBS2.264.925306377

DATAFILE??UNPROT??COARSE???MAY?21?11:00:00??Y????USERS.259.925306091

ASMCMD?[+data/orcl/datafile]?>?cp?USERS.259.925306091?/home/grid/users.dbf

copying?+data/orcl/datafile/USERS.259.925306091?->?/home/grid/users.dbf

ASMCMD?[+data/orcl/datafile]?>

#查看復制結果

[grid@rac1?~]$?ll?/home/grid/users.dbf

-rw-r-----.?1?grid?oinstall?5251072?May?21?15:20?/home/grid/users.dbf

#從文件系統復制到ASM

ASMCMD?[+data/orcl/datafile]?>?cp?/home/grid/users.dbf?+data/orcl

copying?/home/grid/users.dbf?->?+data/orcl/users.dbf

#查看復制結果

ASMCMD?[+data/orcl/datafile]?>?cd?+data/orcl

ASMCMD?[+data/orcl]?>?ls?-l

Type???????????Redund??Striped??Time?????????????Sys??Name

Y????ARCHIVELOG/

Y????CONTROLFILE/

Y????DATAFILE/

Y????ONLINELOG/

Y????PARAMETERFILE/

Y????TEMPFILE/

N????spfileorcl.ora?=>?+DATA/ORCL/PARAMETERFILE/spfile.268.925423909

N????users.dbf?=>?+DATA/ASM/DATAFILE/users.dbf.271.944580085

cp的詳細使用情況可以使用help cp命令獲得。

如果ASM的版本是11g以前的版本可以使用如下三種方法復制文件。

2、dbms_file_transfer包

這個包是從Oracle 9不開始提供的,利用這個包可以在兩個位置之間傳輸文件,這兩個位置可以是同一臺計算機或者網絡上的兩臺計算機。Oracle10g擴展了這個包的功能,可以完成從一個ASM Diskgroup拷貝到另一個ASM Diskgroup、從ASM Diskgroup拷貝到普通文件系統、從普通文件系統拷貝到ASM Diskgroup、從文件系統拷貝到文件系統或者RAW Device。這個包提供了3個方法,可以完成不同的任務。方法功能說明

copy_file完成文件從本地一個目錄拷貝到本地的另一個目錄,這個方法不能完成遠程傳輸

get_file這個方法完成把遠程的文件拷貝到本地的目錄中,類似于下載

put_file這個方法完成本地文件傳送到遠程的目的,類似于上傳

使用方法:#創建目錄

SQL>?create?directory?asm_dir?as?'+data/ASM/DATAFILE/';

Directory?created.

SQL>?create?directory?os_dir?as?'/home/oracle';

Directory?created.

#執行復制

SQL>?exec?dbms_file_transfer.copy_file('asm_dir','user2.dbf.272.944581345','os_dir','user.dbf');

PL/SQL?procedure?successfully?completed.

#驗證復制結果

[oracle@rac1?~]$?ls?-l?/home/oracle/user.dbf

-rw-r-----.?1?oracle?asmadmin?5251072?May?21?15:49?/home/oracle/user.dbf

#進行反向復制

SQL>?exec?dbms_file_transfer.copy_file('os_dir','user.dbf','asm_dir','user2.dbf');

PL/SQL?procedure?successfully?completed.

#驗證

ASMCMD?[+data/ASM/DATAFILE]?>?ls?-l

Type??????Redund??Striped??Time?????????????Sys??Name

N????user2.dbf?=>?+DATA/ORCL/DATAFILE/COPY_FILE.273.944581883

3、rman的convert和backup as copy命令

3.1 convert命令

convert命令是用于對數據文件進行字節格式轉換的。Oracle可以在不同OS平臺間進行表空間傳(TTS),如果兩個平臺的字節格式不一致,則需要參數據文件進行格式轉換,這個轉換可以 在源數據庫進行,也可以在目的數據庫中執行。如果在源數據庫中執行,則需要使用convert tablespace命令,如果在目的數據庫中執行,則需要使用convert datafile命令。

雖然convert這個命令主要用于跨平臺傳輸表空間,它也可以完成ASM和本地文件系統間拷貝文件,并且也是很簡單的一種方法。#使用convert?datafile從ASM復制到文件系統

RMAN>?convert?datafile?'+data/orcl/datafile/USERS.259.925306091'?format?'/home/oracle/user3.dbf';

Starting?conversion?at?target?at?21-MAY-17

using?channel?ORA_DISK_1

channel?ORA_DISK_1:?starting?datafile?conversion

input?file?name=+DATA/orcl/datafile/users.259.925306091

converted?datafile=/home/oracle/user3.dbf

channel?ORA_DISK_1:?datafile?conversion?complete,?elapsed?time:?00:00:01

Finished?conversion?at?target?at?21-MAY-17

#驗證

[oracle@rac1?~]$?ls?-l?/home/oracle/user3.dbf

-rw-r-----.?1?oracle?asmadmin?5251072?May?21?16:00?/home/oracle/user3.dbf

#使用convert?tablespace,使用時需要把users表空間置為只讀

RMAN>?sql?'alter?tablespace?users?read?only';

using?target?database?control?file?instead?of?recovery?catalog

sql?statement:?alter?tablespace?users?read?only

RMAN>?convert?tablespace?users?format?'/home/oracle/users%U.dbf';

Starting?conversion?at?source?at?21-MAY-17

allocated?channel:?ORA_DISK_1

channel?ORA_DISK_1:?SID=81?instance=orcl1?device?type=DISK

channel?ORA_DISK_1:?starting?datafile?conversion

input?datafile?file?number=00004?name=+DATA/orcl/datafile/users.259.925306091

converted?datafile=/home/oracle/usersdata_D-ORCL_I-1453086940_TS-USERS_FNO-4_0ns4qbtn.dbf

channel?ORA_DISK_1:?datafile?conversion?complete,?elapsed?time:?00:00:01

Finished?conversion?at?source?at?21-MAY-17

#驗證

[oracle@rac1?~]$?ll?/home/oracle/usersdata_D-ORCL_I-1453086940_TS-USERS_FNO-4_0ns4qbtn.dbf

-rw-r-----.?1?oracle?asmadmin?5251072?May?21?16:03?/home/oracle/usersdata_D-ORCL_I-1453086940_TS-USERS_FNO-4_0ns4qbtn.dbf

#從文件系統拷貝到ASM

RMAN>?convert?datafile?'/home/oracle/user3.dbf','/home/oracle/usersdata_D-ORCL_I-1453086940_TS-USERS_FNO-4_0ns4qbtn.dbf'?format?'+data';

Starting?conversion?at?target?at?21-MAY-17

using?target?database?control?file?instead?of?recovery?catalog

allocated?channel:?ORA_DISK_1

channel?ORA_DISK_1:?SID=64?instance=orcl1?device?type=DISK

channel?ORA_DISK_1:?starting?datafile?conversion

input?file?name=/home/oracle/user3.dbf

converted?datafile=+DATA/orcl/datafile/users.274.944582713

channel?ORA_DISK_1:?datafile?conversion?complete,?elapsed?time:?00:00:01

channel?ORA_DISK_1:?starting?datafile?conversion

input?file?name=/home/oracle/usersdata_D-ORCL_I-1453086940_TS-USERS_FNO-4_0ns4qbtn.dbf

converted?datafile=+DATA/orcl/datafile/users.275.944582713

channel?ORA_DISK_1:?datafile?conversion?complete,?elapsed?time:?00:00:01

Finished?conversion?at?target?at?21-MAY-17

#從日志中看出轉換的文件名

#converted?datafile=+DATA/orcl/datafile/users.274.944582713

#converted?datafile=+DATA/orcl/datafile/users.274.944582713

3.2 backup as copy命令

backup as copy命令是以鏡像的方式對文件進行備份,自然可以把文件從ASM復制到文件系統中。這也是從文件系統遷移到ASM時可以選擇的方法之一。#執行復制

RMAN>?backup?as?copy?datafile?'+DATA/orcl/datafile/users.259.925306091'?format?'/home/oracle/user4.dbf';

Starting?backup?at?21-MAY-17

using?target?database?control?file?instead?of?recovery?catalog

allocated?channel:?ORA_DISK_1

channel?ORA_DISK_1:?SID=69?instance=orcl1?device?type=DISK

channel?ORA_DISK_1:?starting?datafile?copy

input?datafile?file?number=00004?name=+DATA/orcl/datafile/users.259.925306091

output?file?name=/home/oracle/user4.dbf?tag=TAG20170521T161225?RECID=17?STAMP=944583145

channel?ORA_DISK_1:?datafile?copy?complete,?elapsed?time:?00:00:01

Finished?backup?at?21-MAY-17

#驗證

[oracle@rac1?~]$?ls?-l?/home/oracle/user4.dbf

-rw-r-----.?1?oracle?asmadmin?5251072?May?21?16:12?/home/oracle/user4.dbf

4.FTP方法

FTP方法可以像庫中復制使用傳統文件傳輸協議(FTP)對普通文件執行常規操作那樣,對ASM文件和目錄執行操作。通過這種方式訪問ASM文件的典型應用是從一個數據庫向另一個數據庫中復制ASM文件。需要XML DB支持,配置起來最麻煩,有興趣的同學可以參考《Oracle Database 11g RAC手冊原書第2版》或官方文檔:http://docs.oracle.com/cd/E11882_01/server.112/e18951/asmfiles.htm#BABJCCEI

參考《大話Oracle RAC》

總結

以上是生活随笔為你收集整理的oracle 拷贝文件到asm,Oracle 从ASM复制文件到文件系统的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。