最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Oracle刪除數(shù)據(jù)非常慢的問(wèn)題及解決

 更新時(shí)間:2023年02月15日 10:52:58   作者:YiFengLc  
這篇文章主要介紹了Oracle刪除數(shù)據(jù)非常慢的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Oracle刪除數(shù)據(jù)非常慢

記一次數(shù)據(jù)庫(kù)刪除數(shù)據(jù)非常慢的處理流程

問(wèn)題描述

單表數(shù)據(jù)3000條左右,根據(jù)主鍵刪除需要509秒

處理流程

一. 首先查看SQL的執(zhí)行計(jì)劃:執(zhí)行計(jì)劃正常,cost只有1,用到了主鍵索引。

二. 查看等待事件:

SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objects ao, v$session s WHERE ao.object_id = lo.object_id AND lo.session_id = s.sid;

先執(zhí)行目標(biāo)sql,在執(zhí)行上面的sql獲得sid

select * from v$session_wait where sid = (上面sql查詢的sid)

顯示的event是db file sequential read,也沒有異常。

三. 測(cè)試其他其他表和系統(tǒng)io是否有問(wèn)題,沒問(wèn)題則進(jìn)行下一步

四. 追蹤sql日志:

alter session set events='10046 trace name context forever,level 12';

delete from t_table1 where id = xxx(這里是目標(biāo)sql)

alter session set events='10046 trace name context off';

若不知道日志文件存放位置執(zhí)行以下sql會(huì)返回路徑

SELECT VALUE  FROM V$PARAMETER WHERE NAME = 'user_dump_dest' 

找到最新的trace文件

執(zhí)行—>tkprof orcl_ora_3708.trc myoutput.txt將trc文件轉(zhuǎn)換為簡(jiǎn)單明了的txt文件

查看執(zhí)行刪除過(guò)程中有哪個(gè)操作時(shí)間過(guò)長(zhǎng)

我發(fā)現(xiàn)的問(wèn)題是在實(shí)行刪除的過(guò)程中這個(gè)表有外鍵關(guān)聯(lián)主表,會(huì)先查一遍這個(gè)表里有沒有那個(gè)設(shè)備的記錄,elapsed表示耗時(shí)

解決辦法,外鍵加索引,或者取消外鍵代碼里維護(hù)外鍵。

Oracle刪除表中大量數(shù)據(jù)卡頓的解決

首先,不要被標(biāo)題誤導(dǎo),分兩種情況。

  • 1. 刪之前原表數(shù)據(jù)不要。
  • 2. 刪之前保留原表數(shù)據(jù)。

正確姿勢(shì)

oracle數(shù)據(jù)表有過(guò)萬(wàn)條數(shù)據(jù)后,刪除數(shù)據(jù)就變的特別慢,有時(shí)甚至?xí)ㄋ?,所以在此分享一個(gè)小白操作,望對(duì)各位有幫助。

刪除前: 從原表創(chuàng)建新表,即:先把需要的某些數(shù)據(jù)導(dǎo)入到新表里,或者不加條件即要?jiǎng)h除原表的所有數(shù)據(jù),從原表創(chuàng)建臨時(shí)表(新表)。(相當(dāng)于原模原樣拷貝一份原表)

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');

接著直接 drop 刪除原表,把新表名稱改為原表名稱。到此結(jié)束,這樣直接跳過(guò)刪除原表因數(shù)據(jù)多造成卡死的現(xiàn)象節(jié)省時(shí)間。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • ORACLE 回收站當(dāng)前狀態(tài)查詢整理

    ORACLE 回收站當(dāng)前狀態(tài)查詢整理

    回收站(Recycle Bin)從原理上來(lái)說(shuō)就是一個(gè)數(shù)據(jù)字典表,放置用戶刪除(drop)掉的數(shù)據(jù)庫(kù)對(duì)象信息,接下來(lái)詳細(xì)介紹下ORACLE 回收站方方面面感興趣的你可以參考下哈
    2013-03-03
  • oracle數(shù)據(jù)庫(kù)導(dǎo)入導(dǎo)出命令使用方法

    oracle數(shù)據(jù)庫(kù)導(dǎo)入導(dǎo)出命令使用方法

    這篇文章主要介紹了oracle數(shù)據(jù)庫(kù)導(dǎo)入導(dǎo)出命令格式,對(duì)單表導(dǎo)出、多張表導(dǎo)出的方法
    2013-11-11
  • oracle實(shí)現(xiàn)多行合并的方法

    oracle實(shí)現(xiàn)多行合并的方法

    這篇文章主要介紹了oracle實(shí)現(xiàn)多行合并的方法,實(shí)例講述了oracle10g以后提供的函數(shù)WMSYS.WM_CONCAT的使用技巧,需要的朋友可以參考下
    2015-01-01
  • [Oracle] Data Guard 之 淺析Switchover與Failover

    [Oracle] Data Guard 之 淺析Switchover與Failover

    以下是對(duì)Oracle中Switchover與Failover的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-07-07
  • Oracle多表級(jí)聯(lián)更新詳解

    Oracle多表級(jí)聯(lián)更新詳解

    我們?cè)谄綍r(shí)的工作中可能遇到過(guò),多表級(jí)聯(lián)更新,我也在網(wǎng)上看到過(guò)不少的方法,但是使用這些方法一般都沒成功過(guò),所以今天我給大家介紹一種稍微麻煩的方法,有需要的朋友可以參考下
    2013-07-07
  • oracle中sql%rowcount的作用詳解

    oracle中sql%rowcount的作用詳解

    這篇文章主要介紹了oracle中sql%rowcount的作用,sql%rowcount來(lái)判斷是否更新了記錄的狀態(tài),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • Linux系統(tǒng)下Oracle數(shù)據(jù)庫(kù)監(jiān)聽啟動(dòng)關(guān)閉命令詳解

    Linux系統(tǒng)下Oracle數(shù)據(jù)庫(kù)監(jiān)聽啟動(dòng)關(guān)閉命令詳解

    現(xiàn)在很多朋友在學(xué)習(xí)linux下oracle 數(shù)據(jù)庫(kù)的時(shí)候可能都發(fā)現(xiàn)了一個(gè)問(wèn)題,oracle數(shù)據(jù)庫(kù)的服務(wù)不能自動(dòng)啟動(dòng),這篇文章主要給大家介紹了關(guān)于Linux系統(tǒng)下Oracle數(shù)據(jù)庫(kù)監(jiān)聽啟動(dòng)關(guān)閉命令的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • oracle行轉(zhuǎn)列方法集合匯總(推薦!)

    oracle行轉(zhuǎn)列方法集合匯總(推薦!)

    工作中我們經(jīng)常會(huì)碰到行轉(zhuǎn)列的情況,下面這篇文章主要給大家介紹了關(guān)于oracle行轉(zhuǎn)列方法集合的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • Oracle中的table()函數(shù)使用

    Oracle中的table()函數(shù)使用

    這篇文章主要介紹了Oracle中的table()函數(shù)的使用,提高查詢效率,利用table()函數(shù),可接收輸入?yún)?shù),然后將pl/sql?返回的結(jié)果集代替table,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Oracle學(xué)習(xí)筆記之視圖及索引的使用

    Oracle學(xué)習(xí)筆記之視圖及索引的使用

    這篇文章主要介紹了Oracle學(xué)習(xí)筆記之視圖及索引的使用,視圖是基于一個(gè)表或多個(gè)表或視圖的邏輯表,本身不包含數(shù)據(jù),通過(guò)它可以對(duì)表里面的數(shù)據(jù)進(jìn)行查詢
    2022-07-07

最新評(píng)論

佛坪县| 方城县| 宜阳县| 翁牛特旗| 乌拉特前旗| 浮山县| 台东市| 三穗县| 鹤庆县| 麻江县| 荆州市| 金华市| 台北县| 梓潼县| 河东区| 宜城市| 曲靖市| 长宁区| 马尔康县| 磐石市| 镇康县| 垦利县| 靖宇县| 塔河县| 湟源县| 汉沽区| 清河县| 铅山县| 阿拉尔市| 栖霞市| 平阳县| 泾川县| 北票市| 彰武县| 屏东市| 民丰县| 共和县| 江安县| 靖安县| 灵宝市| 武邑县|