to_date('2013-7-3123:59:59','yyyy-mm-ddhh24:mi:ss');2、然后將2" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

一次oracle大量數(shù)據(jù)刪除經(jīng)歷

系統(tǒng) 2934 0

???? oracle有個數(shù)據(jù)表現(xiàn)在已經(jīng)有2500萬條數(shù)據(jù)了,軟件用到這個表的數(shù)據(jù)時就變的特別慢,所以準備把一個月以前的數(shù)據(jù)全部清除。

???? 我的步驟是(下邊操作都是在plsql中運行的)

?1、首先 將這個月的數(shù)據(jù)導出到一個臨時表中(這些數(shù)據(jù)是自己希望保留的)

?? create table tempTable as select id,name from?table1 where sj>to_date('2013-7-31 23:59:59','yyyy-mm-dd hh24:mi:ss');

2、然后將2500萬數(shù)據(jù)整個刪除(這個是我在有備份情況下才用的)

truncate table table1;?

3、然后將整個表刪除(因為事先從網(wǎng)上查了下,有網(wǎng)友說truncate后,直接把數(shù)據(jù)從臨時表導回來事個數(shù)據(jù)文件沒有變小,自己沒有試)

drop table table1;

4、將數(shù)據(jù)從臨時表全部導回來

create table?table1 as select id,name from?tempTable;

5、然后刪除臨時表

drop table tempTable;

這樣整個過程用了大概10分鐘左右就完成了。

以上僅是自己操作心得,如有不正確或者更好的方法希望大家指正。

附:來自 http://www.cnblogs.com/simplefrog/archive/2012/07/30/2615169.html

語法 delete from aa truncate table aa

區(qū)別 1.delete from后面可以寫條件,truncate不可以。

2.delete from記錄是一條條刪的,所刪除的每行記錄都會進日志,而truncate一次性刪掉整個頁,因此日至里面只記錄頁釋放,簡言之,delete from更新日志,truncate基本不,所用的事務(wù)日志空間較少。

3.delete from刪空表后,會保留一個空的頁,truncate在表中不會留有任何頁。

4.當使用行鎖執(zhí)行 DELETE 語句時,將鎖定表中各行以便刪除。truncate始終鎖定表和頁,而不是鎖定各行。

5.如果有identity產(chǎn)生的自增id列,delete from后仍然從上次的數(shù)開始增加,即種子不變,而truncate后,種子會恢復初始。

6.truncate不會觸發(fā)delete的觸發(fā)器,因為truncate操作不記錄各個行刪除。

總結(jié) 1.truncate和 delete只刪除數(shù)據(jù)不刪除表的結(jié)構(gòu)(定義)???? ?? drop語句將刪除表的結(jié)構(gòu)被依賴的約束(constrain),觸發(fā)器(trigger),索引(index); 依賴于該表的存儲過程/函數(shù)將保留,但是變?yōu)閕nvalid狀態(tài)。

? 2.delete語句是dml,這個操作會放到rollback segement中,事務(wù)提交之后才生效;如果有相應(yīng)的trigger,執(zhí)行的時候?qū)⒈挥|發(fā) ??? truncate,drop是ddl, 操作立即生效,原數(shù)據(jù)不放到rollback segment中,不能回滾. 操作不觸發(fā)trigger。

? 3.delete語句不影響表所占用的extent, 高水線(high watermark)保持原位置不動???? ?? 顯然drop語句將表所占用的空間全部釋放???? ?? truncate 語句缺省情況下見空間釋放到 minextents個 extent,除非使用reuse storage;?? truncate會將高水線復位(回到最開始)。

? 4.速度,一般來說: drop> truncate > delete。

???? 5.安全性:小心使用drop 和truncate,尤其沒有備份的時候.否則哭都來不及。

6.使用上,想刪除部分數(shù)據(jù)行用delete,注意帶上where子句. 回滾段要足夠大.???? 想刪除表,當然用drop???? 想保留表而將所有數(shù)據(jù)刪除. 如果和事務(wù)無關(guān),用truncate即可. 如果和事務(wù)有關(guān),或者想觸發(fā)trigger,還是用delete 如果是整理表內(nèi)部的碎片,可以用truncate跟上reuse stroage,再重新導入/插入數(shù)據(jù)。

?

一次oracle大量數(shù)據(jù)刪除經(jīng)歷


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: www.四虎在线观看 | 婷婷色中文 | 久久国产自偷自免费一区100 | 日韩中文字幕一区二区不卡 | 神马老子不卡视频在线 | 亚洲精品一区二区三区五区 | 国产欧美日本亚洲精品五区 | 久久精品久久久久久久久人 | 三级aa久久 | 久久成人亚洲香蕉草草 | 一区二区在线精品免费视频 | 四虎在线观看免费永久 | 国产精品视频视频久久 | 国产一区二区在线播放 | 欧美一区二区影院 | 免费视频久久 | 浮力影院欧美三级日本三级 | 国产精品大片天天看片 | 曰本一级毛片免费播放 | 色综合欧美 | 欧美日韩免费播放一区二区 | 性色黄| 国产日韩一区 | 国产精品福利久久香蕉中文 | 青青久 | 亚洲欧美国产精品久久久 | 国产精品亚洲欧美日韩一区在线 | 日韩欧美视频在线播放 | 97综合 | 国产无套乱子伦精彩是白视频 | 国产91久久久久久久免费 | 亚洲欧美中文日韩综合 | 性ao爱大片 | 一级特黄aaa大片在 一级特黄aaa大片在线观看 | 亚洲国产成人超福利久久精品 | 50-60岁老妇女一级毛片 | 亚洲一级片在线观看 | 亚洲国产精品热久久 | 亚洲综合日韩欧美一区二区三 | www.久久爱| 免费看又爽又黄禁片视频1000 |