亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Oracle數(shù)據(jù)庫(kù)丟失表排查思路實(shí)戰(zhàn)記錄

 更新時(shí)間:2022年06月09日 10:13:55   作者:昊狼  
相信大家無(wú)論是開(kāi)發(fā)、測(cè)試還是運(yùn)維過(guò)程中,都可能會(huì)因?yàn)檎`操作、連錯(cuò)數(shù)據(jù)庫(kù)、用錯(cuò)用戶、語(yǔ)句條件有誤等原因,導(dǎo)致錯(cuò)誤刪除、錯(cuò)誤更新等問(wèn)題,這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫(kù)丟失表排查思路的相關(guān)資料,需要的朋友可以參考下

說(shuō)明:

由于系統(tǒng)采用ID取模分表法進(jìn)行Oracle數(shù)據(jù)存儲(chǔ),某日發(fā)現(xiàn)Oracle數(shù)據(jù)庫(kù)中缺少對(duì)應(yīng)的幾張業(yè)務(wù)數(shù)據(jù)表,遂進(jìn)行相關(guān)問(wèn)題查詢,簡(jiǎn)單記錄一下排查思路;

  • 由于我們代碼中實(shí)現(xiàn)思路是判斷如果沒(méi)有對(duì)應(yīng)的表會(huì)自動(dòng)創(chuàng)建,所以首先需要查詢一下缺失數(shù)據(jù)庫(kù)表的創(chuàng)建時(shí)間
SELECT * FROM dba_objects where OBJECT_NAME LIKE 'LOG_5%' AND owner = 'Geoff';
  • 通過(guò)查詢Oracle執(zhí)行SQL歷史記錄,數(shù)據(jù)庫(kù)表的刪除時(shí)間段
select * from v$sqlarea b
   where b.FIRST_LOAD_TIME between '2022-05-31/21:30:00' and'2022-05-31/23:30:00'` 
    order by b.FIRST_LOAD_TIME;
  • 通過(guò)上述SQL還是無(wú)法查詢具體表的刪除時(shí)間,故查詢當(dāng)前用戶的數(shù)據(jù)庫(kù)回收站
SELECT * FROM recyclebin_temp WHERE TYPE = 'TABLE' ORDER BY droptime DESC;
  • 通過(guò)回收站查詢到相應(yīng)的已刪除數(shù)據(jù)庫(kù)表,并將數(shù)據(jù)庫(kù)已刪除表恢復(fù)至刪除前,包含表中數(shù)據(jù)
flashback TABLE LOG_505 to before drop RENAME to LOG_505_temp ;
  • 因?yàn)閿?shù)據(jù)恢復(fù)時(shí),系統(tǒng)已新建數(shù)據(jù)庫(kù)表并產(chǎn)生數(shù)據(jù),所以需要將新老數(shù)據(jù)都恢復(fù)到數(shù)據(jù)庫(kù)表中
--查詢當(dāng)前數(shù)據(jù)庫(kù)表中的最大ID
SELECT ID FROM WORK_DUTY_LOG_505_temp ORDER BY ID DESC;
--修改序列步長(zhǎng)至最大ID
ALTER sequence SEQ_WORK_DUTY_LOG_505 INCREMENT BY 3538;
SELECT SEQ_WORK_DUTY_LOG_505.nextval FROM dual;
--恢復(fù)序列步長(zhǎng)為默認(rèn)值1
ALTER sequence SEQ_WORK_DUTY_LOG_505 INCREMENT BY 1;

--創(chuàng)建觸發(fā)器,并將表中數(shù)據(jù)手動(dòng)插入到從回收站恢復(fù)的臨時(shí)表中
CREATE OR REPLACE TRIGGER T_WORK_DUTY_LOG_505 BEFORE INSERT ON WORK_DUTY_LOG_505_temp REFERENCING OLD AS "OLD" NEW AS "NEW" FOR EACH ROW 
begin
 select SEQ_WORK_DUTY_LOG_505.Nextval into:new.ID from dual;  --base_login_user_id序列名稱  --ID給ID裝上序列
end;

--刪除觸發(fā)器
DROP TRIGGER T_WORK_DUTY_LOG_505;
--將臨時(shí)表中整合完成的數(shù)據(jù)恢復(fù)至原數(shù)據(jù)庫(kù)表中
INSERT INTO  WORK_DUTY_LOG_505 SELECT * FROM WORK_DUTY_LOG_505_temp
--查詢確認(rèn)
SELECT * FROM WORK_DUTY_LOG_505 ORDER BY ID DESC;

寫(xiě)在最后:

通過(guò)后續(xù)排查,發(fā)現(xiàn)可能是因?yàn)榇a中判斷相關(guān)代碼查詢結(jié)果有誤,導(dǎo)致相關(guān)表被誤刪除,暫時(shí)通過(guò)注釋下方刪除表結(jié)構(gòu)代碼避免問(wèn)題復(fù)發(fā),相關(guān)原因后續(xù)繼續(xù)排查

總結(jié) 

到此這篇關(guān)于Oracle數(shù)據(jù)庫(kù)丟失表排查思路的文章就介紹到這了,更多相關(guān)Oracle丟失表排查內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Oracle常見(jiàn)錯(cuò)誤診斷

    Oracle常見(jiàn)錯(cuò)誤診斷

    Oracle常見(jiàn)錯(cuò)誤診斷...
    2007-03-03
  • RPM包方式安裝Oracle21c的方法詳解

    RPM包方式安裝Oracle21c的方法詳解

    本次安裝遇到了一個(gè)深坑,CentOS8.0安裝時(shí)很多不兼容性,強(qiáng)行安裝也失敗了,提示缺少部分java方式,所以沒(méi)辦法,換用的Oracle Enterprise Linux 8.4 安裝很順暢,一個(gè)半小時(shí)就完成相應(yīng)的工作了,具體操作過(guò)程一起看看吧
    2021-08-08
  • 解決Oracle?11g?導(dǎo)出數(shù)據(jù)報(bào)?“ORA-01455:?轉(zhuǎn)換列溢出整數(shù)數(shù)據(jù)類型”的問(wèn)題

    解決Oracle?11g?導(dǎo)出數(shù)據(jù)報(bào)?“ORA-01455:?轉(zhuǎn)換列溢出整數(shù)數(shù)據(jù)類型”的問(wèn)題

    這篇文章主要介紹了Oracle?11g?導(dǎo)出數(shù)據(jù)報(bào)?“ORA-01455:?轉(zhuǎn)換列溢出整數(shù)數(shù)據(jù)類型”的問(wèn)題,文中給大家介紹了ORACLE?11g?導(dǎo)出數(shù)據(jù)的操作步驟,需要的朋友可以參考下
    2021-12-12
  • Oracle遞歸查詢start with connect by prior的用法

    Oracle遞歸查詢start with connect by prior的用法

    這篇文章主要給大家介紹了關(guān)于Oracle遞歸查詢start with connect by prior、的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • Oracle基礎(chǔ)學(xué)習(xí)之簡(jiǎn)單查詢和限定查詢

    Oracle基礎(chǔ)學(xué)習(xí)之簡(jiǎn)單查詢和限定查詢

    相信對(duì)于每個(gè)剛接觸數(shù)據(jù)庫(kù)的朋友們來(lái)說(shuō),查詢是首先要學(xué)會(huì)的,本文主要給大家介紹了Oracle中的簡(jiǎn)單查詢和限定查詢,文中通過(guò)示例代碼與文字說(shuō)明給大家介紹的很詳細(xì),相信對(duì)大家的的理解和學(xué)習(xí)會(huì)很有幫助,下面感興趣的朋友們一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。
    2016-11-11
  • Oracle?19c的參數(shù)sec_case_sensitive_logon與ORA-01017錯(cuò)誤問(wèn)題分析

    Oracle?19c的參數(shù)sec_case_sensitive_logon與ORA-01017錯(cuò)誤問(wèn)題分析

    這篇文章主要介紹了Oracle?19c的參數(shù)sec_case_sensitive_logon與ORA-01017錯(cuò)誤,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • Oracle AS關(guān)鍵字 提示錯(cuò)誤

    Oracle AS關(guān)鍵字 提示錯(cuò)誤

    今天運(yùn)行程序時(shí),在Oracle中輸入SQL語(yǔ)句:select * from USERS as u ,程序報(bào)錯(cuò)
    2011-04-04
  • Oracle數(shù)據(jù)庫(kù)下載與安裝的完整步驟

    Oracle數(shù)據(jù)庫(kù)下載與安裝的完整步驟

    這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫(kù)下載與安裝的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Oracle遞歸查詢簡(jiǎn)單示例

    Oracle遞歸查詢簡(jiǎn)單示例

    最近在做一個(gè)樹(shù)狀編碼管理系統(tǒng),其中用到了oracle的樹(shù)狀遞歸查詢,下面這篇文章主要給大家介紹了關(guān)于Oracle遞歸查詢的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • ORACLE時(shí)間函數(shù)(SYSDATE)深入理解

    ORACLE時(shí)間函數(shù)(SYSDATE)深入理解

    有些朋友對(duì)ORACLE時(shí)間函數(shù)理解不是很透徹,接下來(lái)講詳細(xì)介紹,希望可以幫助到你們
    2012-12-12

最新評(píng)論