电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Oracle Database 10g:最佳新特性(第四周:高速的導出/導入)

瀏覽:4日期:2023-11-17 14:12:46
第 4 周高速的導出/導入:Oracle Data Pump 利用 Oracle Database 10g 實用工具數據移動得到了很大的提高。 迄今為止,導出/導入工具集仍是跨多個平臺轉移數據所需勞動強度最小的首選實用工具,盡管人們經常抱怨它速度太慢。導入只是將每條記錄從導出轉儲文件中讀出來,然后使用常見的 INSERT INTO 命令將其插入到目標表中,因此導入可能是個很慢的過程,這一點并不讓人感到吃驚。 進入 Oracle Data Pump,Oracle Database 10g 中的導出/導入工具包的更新更快的同類工具,它被設計來成倍地加速這個過程。 Data Pump 反映了整個導出/導入過程的徹底革新。它不是使用常見的 SQL 命令,而是應用專用 API 來以更快得多的速度加載和卸載數據。在我的測試中,我看到導出性能比在直接模式下提高了 10-15 倍,導入過程性能提高了 5 倍。此外,與使用導出實用工具不同,它還能夠只取出特定類型的對象(如過程)。 Data Pump 導出 這個新的實用工具稱為 eXPdp,以和原來的導出 exp 區分開。在本例中,我們將用 Data Pump 來導出一個大表 CASES,大小約為 3GB。Data Pump 在服務器端使用文件處理來創建和讀取文件;因此,目錄作為位置使用。在這種情況下,我們將使用文件系統 /u02/dpdata1 來保存轉儲文件。 create Directory dpdata1 as '/u02/dpdata1';grant read, write on directory dpdata1 to ananda;接下來,我們將導出數據: expdp ananda/abc123 tables=CASES directory=DPDATA1 dumpfile=expCASES.dmp job_name=CASES_EXPORT讓我們來分析該命令的各個部分。用戶 ID/口令組合、表和轉儲文件參數的意義是顯而易見的。與原來的導出不同,文件是在服務器(不是客戶端)上創建的。位置由目錄參數值 DPDATA1 指定,它指向之前創建的 /u02/dpdata1。這個進程還在目錄參數指定的位置上創建一個日志文件(同樣在服務器上)。默認地,這個進程使用一個名稱為 DPUMP_DIR 的目錄;因此可以創建它來代替 DPDATA1。 注重上面的參數 job_name,這是個非凡的參數,在原來的導出中沒有。所有的 Data Pump 工作都通過作業來完成。Data Pump 作業 — 與 DBMS 作業不同 — 只是服務器進程,它代表主進程處理數據。主進程(稱為主控制進程)通過高級隊列 (AQ) 來協調這項工作;它通過在運行期內創建的一個非凡的表(稱為主表)來實現這個目的。在我們的例子中,假如您在 expdp 運行時檢查用戶 ANANDA 的模式 ,您將注重到一個表 CASES_EXPORT 的存在(對應參數 job_name)。當 expdp 結束時,這個表被丟棄。 導出監控 當 Data Pump Export (DPE) 運行時,按 Control-C;它將阻止消息在屏幕上顯示,但不停止導出進程本身。相反,它將顯示 DPE 提示符(如下所示)。進程現在被認為處于“交互式”模式: Export>這種方法答應在這個 DPE 作業上輸入幾條命令。要查看概要,在提示符下使用 STATUS 命令: Export> statusJob:CASES_EXPORTOperation:EXPORT Mode:TABLE State:EXECUTING Degree: 1Job Error Count: 0Dump file:/u02/dpdata1/expCASES.dmp bytes written = 2048Worker 1 Status:State:EXECUTING Object Schema:DWOWNerobject Name:CASESObject Type:TABLE_EXPORT/TBL_TABLE_DATA/TABLE/TABLE_DATACompleted Objects: 1Total Objects: 1Completed Rows: 4687818記住,這只是狀態顯示。導出在后臺工作。要繼續在屏幕上查看消息,從 Export> 提示符下使用命令 CONTINUE_CLIENT。 并行操作 您可以通過 PARALLEL 參數為導出使用一個以上的線程來顯著地加速作業。 每個線程創建一個單獨的轉儲文件,因此參數 dumpfile 應當擁有和并行度一樣多的項目。您可以指定通配符作為文件名,而不是顯式地輸入各個文件名,例如: expdp ananda/abc123 tables=CASES directory=DPDATA1 dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export注重 dumpfile 參數擁有一個通配符 %U,它指示文件將按需要創建,格式將為 expCASES_nn.dmp,其中 nn 從 01 開始,然后按需要向上增加。 在并行模式下,狀態屏幕將顯示四個工作進程。(在默認模式下,只有一個進程是可見的。)所有的工作進程同步取出數據,并在狀態屏幕上顯示它們的進度。 分離訪問數據文件和轉儲目錄文件系統的輸入/輸出通道是很重要的。否則,與維護 Data Pump 作業相關的開銷可能超過并行線程的效益,并因此而降低性能。并行方式只有在表的數量多于并行值并且表很大時才是有效的。 數據庫監控 您還可以從數據庫視圖獲得關于運行的 Data Pump 作業的更多信息。監控作業的主視圖是 DBA_DATAPUMP_JOBS,它將告訴您在作業上有多少個工作進程(列 DEGREE)在工作。另一個重要的視圖是 DBA_DATAPUMP_SESSIONS,當它與上述視圖和 V$SESSION 結合時將給出主前臺進程的會話 SID。 select sid, serial#from v$session s, dba_datapump_sessions dwhere s.saddr = d.saddr;這條指令顯示前臺進程的會話。更多有用的信息可以從警報日志中獲得。當進程啟動時,MCP 和工作進程在警報日志中顯示如下: kupprdp:master process DM00 started with pid=23, OS id=20530 to execute - SYS.KUPM$MCP.MAIN('CASES_EXPORT', 'ANANDA');kupprdp:worker process DW01 started with worker id=1, pid=24, OS id=20532 to execute - SYS.KUPW$WORKER.MAIN('CASES_EXPORT', 'ANANDA');kupprdp:worker process DW03 started with worker id=2, pid=25, OS id=20534 to execute - SYS.KUPW$WORKER.MAIN('CASES_EXPORT', 'ANANDA');它顯示為數據泵操作啟動的會話的 PID。您可以用以下查詢找到實際的 SID: select sid, program from v$session where paddr in (select addr from v$process where pid in (23,24,25));PROGRAM 列將對應警報日志文件中的名稱顯示進程 DM (為主進程)或 DW (為工作進程)。假如一個工作進程使用了并行查詢,比如說 SID 23,您可以在視圖 V$PX_SESSION 中看到它,并把它找出來。它將為您顯示從 SID 23 代表的工作進程中運行的所有并行查詢會話: select sid from v$px_session where qcsid = 23;從視圖 V$SESSION_LONGOPS 中可以獲得其它的有用信息來猜測完成作業將花費的時間。 select sid, serial#, sofar, totalworkfrom v$session_longopswhere opname = 'CASES_EXPORT'and sofar != totalwork;列 totalwork 顯示總工作量,該列的 sofar 數量被加和到當前的時刻 — 因而您可以用它來估計還要花多長時間。 Data Pump 導入 不過,數據導入性能是 Data Pump 真正出色的地方。要導入先前導出的數據,我們將使用 impdp ananda/abc123 directory=dpdata1 dumpfile=expCASES.dmp job_name=cases_import導入進程的默認行為是創建表和所有相關的對象,然后在表已存在時產生一個錯誤。假如您想把數據添加到一個現有的表中,您可以在上述命令行中使用 TABLE_EXISTS_ACTION=APPEND。 和使用 Data Pump 導入一樣,在進程中按 Control-C 將進入 Date Pump Import (DPI) 的交互模式;同樣,提示符是 Import>。 處理特定對象 您是否有過只需要從一個用戶導出特定的過程,以在一個不同的數據庫或用戶中重新創建這些過程的情況?與傳統的導出實用工具不同,Data Pump 答應您只導出特定類型的對象。例如,以下命令讓您只導出過程,而不導出其它任何東西 — 不導出表、視圖、甚至函數: expdp ananda/iclaim directory=DPDATA1 dumpfile=expprocs.dmp include=PROCEDURE要只導出一些特定的對象 — 比如說,函數 FUNC1 和過程 PROC1 — 您可以使用 expdp ananda/iclaim directory=DPDATA1 dumpfile=expprocs.dmp include=PROCEDURE:'='PROC1'',FUNCTION:'='FUNC1''這個轉儲文件充當了源對象的一個備份。 您甚至可以用它來創建 DDL 腳本,以供之后使用。一個稱為 SQLFILE 的非凡參數答應創建 DDL 腳本文件。 impdp ananda/iclaim directory=DPDATA1 dumpfile=expprocs.dmp sqlfile=procs.sql該指令在 DPDATA1 指定的目錄中創建一個名稱為 procs.sql 的文件,并將對象的腳本包含在導出轉儲文件中。這種方法幫助您快速地在另一個模式中創建源對象。 利用參數 INCLUDE 答應您從轉儲文件中定義要包含或排除的對象。您可以使用子句 INCLUDE=TABLE:'LIKE 'TAB%'' 來僅導出那些名稱以 TAB 開頭的表。類似地,您可以使用結構 INCLUDE=TABLE:'NOT LIKE 'TAB%'' 來排除所有名稱以 TAB 開頭的表。作為另一種選擇,您可以使用 EXCLUDE 參數來排除特定的對象。 通過外部表,Data Pump 還可以用來傳輸表空間;它非常強大,能夠即時地重定義并行方式,將更多的表添加到一個現有的進程中等等(這超出了本文的范圍;關于更多具體信息,請參考 Oracle Database Utilities 10g Release 1 10.1)。以下命令顯示Data Pump 導出實用工具提供的所有參數的列表: expdp help=y類似地,impdp help=y 將顯示 DPI 中的所有參數。 當 Data Pump 作業在運行時,您可以通過在 DPE 或 DPI 提示符下發出 STOP_JOB 來暫停它們,然后用 START_JOB 來重起它們。這個功能在您空間不足和想在繼續執行之前進行修改時非常方便。 關于更多信息,請閱讀 Oracle Database Utilities 10g Release 1 10.1 指南的第 1 部分。
標簽: Oracle 數據庫
主站蜘蛛池模板: 云阳人才网_云阳招聘网_云阳人才市场_云阳人事人才网_云阳人家招聘网_云阳最新招聘信息 | 网站优化公司_北京网站优化_抖音短视频代运营_抖音关键词seo优化排名-通则达网络 | 粘度计,数显粘度计,指针旋转粘度计| 微型驱动系统解决方案-深圳市兆威机电股份有限公司 | 碳化硅,氮化硅,冰晶石,绢云母,氟化铝,白刚玉,棕刚玉,石墨,铝粉,铁粉,金属硅粉,金属铝粉,氧化铝粉,硅微粉,蓝晶石,红柱石,莫来石,粉煤灰,三聚磷酸钠,六偏磷酸钠,硫酸镁-皓泉新材料 | 喷播机厂家_二手喷播机租赁_水泥浆洒布机-河南青山绿水机电设备有限公司 | 2025福建平潭岛旅游攻略|蓝眼泪,景点,住宿攻略-趣平潭网 | 环讯传媒,永康网络公司,永康网站建设,永康小程序开发制作,永康网站制作,武义网页设计,金华地区网站SEO优化推广 - 永康市环讯电子商务有限公司 | 找果网 | 苹果手机找回方法,苹果iPhone手机丢了找回,认准找果网! | 地源热泵一体机,地源热泵厂家-淄博汇能环保设备有限公司 | 曙光腾达官网-天津脚手架租赁-木板架出租-移动门式脚手架租赁「免费搭设」 | 楼承板-钢筋楼承板-闭口楼承板-无锡优贝斯楼承板厂 | 复盛空压机配件-空气压缩机-复盛空压机(华北)总代理 | 建筑消防设施检测系统检测箱-电梯**检测仪器箱-北京宇成伟业科技有限责任公司 | 包装盒厂家_纸盒印刷_礼品盒定制-济南恒印包装有限公司 | 空气能采暖,热泵烘干机,空气源热水机组|设备|厂家,东莞高温热泵_正旭新能源 | 伟秀电气有限公司-10kv高低压开关柜-高低压配电柜-中置柜-充气柜-欧式箱变-高压真空断路器厂家 | 电子万能试验机_液压拉力试验机_冲击疲劳试验机_材料试验机厂家-济南众标仪器设备有限公司 | 珠光砂保温板-一体化保温板-有釉面发泡陶瓷保温板-杭州一体化建筑材料 | 瑞典Blueair空气净化器租赁服务中心-专注新装修办公室除醛去异味服务! | 东亚液氮罐-液氮生物容器-乐山市东亚机电工贸有限公司 | 铆钉机|旋铆机|东莞旋铆机厂家|鸿佰专业生产气压/油压/自动铆钉机 | 黄石妇科医院_黄石东方女子医院_黄石东方妇产医院怎么样 | 彩信群发_群发彩信软件_视频短信营销平台-达信通 | 皮带机-带式输送机价格-固定式胶带机生产厂家-河南坤威机械 | 股票入门基础知识_股票知识_股票投资大师_格雷厄姆网 | 滁州高低温冲击试验箱厂家_安徽高低温试验箱价格|安徽希尔伯特 | 粤丰硕水性环氧地坪漆-防静电自流平厂家-环保地坪涂料代理 | 流量检测仪-气密性检测装置-密封性试验仪-东莞市奥图自动化科技有限公司 | 嘉兴恒升声级计-湖南衡仪声级计-杭州爱华多功能声级计-上海邦沃仪器设备有限公司 | 桁架楼承板-钢筋桁架楼承板-江苏众力达钢筋楼承板厂 | 粉末冶金-粉末冶金齿轮-粉末冶金零件厂家-东莞市正朗精密金属零件有限公司 | GEDORE扭力螺丝刀-GORDON防静电刷-CHEMTRONICS吸锡线-上海卓君电子有限公司 | vr安全体验馆|交通安全|工地安全|禁毒|消防|安全教育体验馆|安全体验教室-贝森德(深圳)科技 | 示波器高压差分探头-国产电流探头厂家-南京桑润斯电子科技有限公司 | 博博会2021_中国博物馆及相关产品与技术博览会【博博会】 | 吲哚菁绿衍生物-酶底物法大肠菌群检测试剂-北京和信同通科技发展有限公司 | 防火窗_耐火窗_防火门厂家_防火卷帘门-重庆三乐门业有限公司 | 浙江华锤电器有限公司_地磅称重设备_防作弊地磅_浙江地磅售后维修_无人值守扫码过磅系统_浙江源头地磅厂家_浙江工厂直营地磅 | 北京租车公司_汽车/客车/班车/大巴车租赁_商务会议/展会用车/旅游大巴出租_北京桐顺创业租车公司 | 消泡剂-水处理消泡剂-涂料消泡剂-切削液消泡剂价格-东莞德丰消泡剂厂家 |