Oracle10g新增DBMS_FILE_TRANSFER包(一)
Oracle10g新增了DBMS_FILE_TRANSFER包,透過資料庫的功能實現了檔案的傳輸。
這篇介紹COPY_FILE過程。
不要小看這個包,這個包的存在使得使用者可以在不離開SQLPLUS就可以執行作業系統中才能執行的copy命令,而且可以透過包的呼叫實現在ASM和作業系統之間複製檔案。有了這個包,可以在兩個Oracle伺服器直接透過資料庫鏈的方式複製2進位制檔案,雖然對檔案的大小有一定的要求,必須是512位元組的整數倍,必須小於2T位元組。但是對於絕大部分Oracle處理的檔案都滿足這個要求。使用這個包,可以實現資料庫在遠端伺服器上備份,也可以實現將包含BFILE型別的表,連同作業系統上對應的二進位制檔案一同複製到遠端資料庫中。
這裡先簡單介紹一下COPY_FILE過程。COPY_FILE過程用於在本地伺服器上複製檔案,這個過程的最大用處在於可以在ASM和作業系統之間複製檔案。
bash-2.03$ sqlplus "/ as sysdba"
SQL*Plus: Release 10.2.0.3.0 - Production on 星期六 3月 7 01:41:17 2009
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
連線到:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Data Mining options
SQL> col directory_path format a50
SQL> select directory_name, directory_path from dba_directories;
DIRECTORY_NAME DIRECTORY_PATH
------------------------------ --------------------------------------------------
D_OUTPUT /export/home/oracle
D_TEST /data1
D_DIR_FOR_GETDBID +DISK/testrac/datafile
WORK_DIR /data/oracle/product/10.2/database/work
D_DMPDP /data
ADMIN_DIR /data/oracle/product/10.2/database/md/admin
DATA_PUMP_DIR /data/oracle/product/10.2/database/rdbms/log/
已選擇7行。
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string +DISK/testrac/spfiletestrac.ora
SQL> create directory d_asm_spfile as '+DISK/testrac';
目錄已建立。
SQL> exec dbms_file_transfer.copy_file('D_ASM_SPFILE', 'spfiletestrac.ora', 'D_OUTPUT', 'spfiletestrac.ora')
PL/SQL 過程已成功完成。
SQL> host
$ ls -l /export/home/oracle/spfile*.ora
-rw-r----- 1 oracle oinstall 8704 Mar 7 01:44 /export/home/oracle/spfiletestrac.ora
當然這個過程也可以用於作業系統上複製檔案,或在ASM中複製檔案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-594367/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【RAC】Oracle10g rac新增刪除節點命令參考Oracle
- 版本包新增地址
- oracle10g審計(轉)Oracle
- about oracle10g rac(轉)Oracle
- 新增jar包到本地Maven倉庫JARMaven
- ORACLE10G升級11GOracle
- oracle10g RMAN增量備份策略Oracle
- eclipse 手動新增jar包到maven庫EclipseJARMaven
- Oracle10g刪除資料檔案Oracle
- win10怎麼新增使用公文包功能_windows10右鍵新增公文包選項步驟Win10Windows
- Python 分發包中新增額外檔案Python
- 在pom檔案中新增jar包的方法JAR
- Oracle10g SQL tune adviser簡單介紹OracleSQL
- oracle10g DataGuard的日誌傳輸方式Oracle
- Oracle10g釋放flash_recovery_area(轉)Oracle
- Android新增OpenCV支援,一步一步新增。AndroidOpenCV
- Oracle10g等待事件型別wait_class說明Oracle事件型別AI
- Oracle10g的回收站(recyclebin)和自由空間管理Oracle
- C#/VB.NET 在PDF中新增檔案包(Portfolio)C#
- Win10系統下新增信任軟體包的方法Win10
- 容器環境下如何將NuGet包XML文件新增到SwaggerXMLSwagger
- 資料包表開發技巧:自動為資料包表新增【小計】、【總計】行
- 為Promise新增一個方法Promise
- 在pycharm中使用pip針對不同的編譯器新增包PyCharm編譯
- MacOS 11.x-12.x完整離線安裝包 (新增Monterey)Mac
- 閉包詳解一
- Oracle10g/11g動態、靜態關閉DRM特性方法Oracle
- 15億紅包開啟後,支付寶DAU和新增提升顯著
- IDEA專案已新增jar包,pom檔案,打包Maven卻一直報錯的幾種解決方法IdeaJARMaven
- vmware + 裸裝置 + crs + oracle10g RAC搭建步驟(二):安裝linuxOracleLinux
- package-make 新增自定義包的名稱空間和生成路徑Package
- 【每日一包0026】delegates
- 【每日一包0010】decamelize
- 【每日一包0011】pad
- jmeter如何新增一個cookie管理頭JMeterCookie
- VUE:vite新增環境變數(一)VueVite變數
- 不使用Activity如何新增一個ViewView
- ES6新增API:String篇(一)API
- ES6新增API:Array篇(一)API