用exp命令的query參數(shù),從邏輯上把70G數(shù)據(jù)分開
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設、網(wǎng)站設計、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務謝家集,10多年網(wǎng)站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18980820575
例如,在后面添加 query=\" where customer_num like \'A%\'\"
多個exp語句并發(fā)執(zhí)行
-------------------------------------
題主修改了問題,要導出整個用戶,建議采用 expdp 的 PARALLEL 參數(shù)
例如: expdp test/test directory=d_test dumpfile=testfile1.dp,testfile2.dp parallel=2
---------------------------------------
expdp 遠程導出可以考慮通過DBLINK
通過數(shù)據(jù)庫引擎的鎖機制、內存操作、日志機制等。
鎖機制保證同一時的數(shù)據(jù)不會被多外同時寫或覆蓋。
內存是把操作的數(shù)據(jù)都放在內存。
日志機制,是修改數(shù)據(jù)后,先寫日志,再寫數(shù)據(jù)。
插入數(shù)據(jù)使用主鍵約束即可。如果主鍵是自增,可以定義唯一約束。
----------------------------------------------------------
如果不使用數(shù)據(jù)庫,那么程序寫成串行即可。
1.設立主鍵。根據(jù)唯一性數(shù)據(jù)庫自動判別。
2.笨的方法:建議采用信號量。
舉例如下:
create signal_flag (signal number(1));insert into signal_flag values(1);
在每次查詢表有無記錄前,加入語句
select signal from signal_flag where signal=1 for update;
select count(1) int var_cnt from tab1 ;
if var_cnt =0 then insert.....
endif;
commit;
select /*+ parallel(a,4)*/ col1 from tab;
表示查詢表tab的字段col1,4個進程并行查詢,前提是必須要有4個CPU才有效,否則性能會比不加并發(fā)還低
parallel一般用在cpu內存空閑較大的時候,和你的服務器配置以及任務執(zhí)行的時序并行度來判斷。
如果在你執(zhí)行查詢的時候,沒有其他很占資源的任務并行執(zhí)行。
可以使用/*+PARALLEL 16*/或者更大,你可以試試,看看執(zhí)行計劃,撈一下AWR報告看一下。