在oracle用delete命令刪除的資料如何恢復

時間 2022-04-22 06:43:52

1樓:賓士

不用這麼麻煩到你的oracle安裝目錄下找【scott.sql】,我的在

d:\oracle\product\10.1.0\db_1\rdbms\admin

根據你自己的實際情況參考。

這裡面有全部資料庫,複製出來插入資料庫就可以了。

※注意:有時候檔案裡面的日期資料格式會有問題,修改一下就可以了。

---以上,希望對你有所幫助。

2樓:匿名使用者

首先確定你的oracle版本

oracle 8i(包括)以前不支援閃回查詢看你的oracle是否啟用了歸檔日誌,除非你的資料庫幾乎沒有進行什麼dml

然後可以使用閃回查詢吧,資料匯入臨時表,然後重新建表並倒回emp表關於個版本的閃回查詢方法,你可以參考這篇文章http://blog.csdn.

3樓:匿名使用者

賓士兄 你說的那個好像是系統裡的資料庫

如果是使用者表空間的某錶資料被刪除了 就不適用了

4樓:戊尋巧

是否是nolog

是否commit

如果是nolog 又commit 88

oracle 昨天用delete刪除了表資料,但是沒有提交,怎麼恢復

5樓:匿名使用者

沒有提交的話不需要恢復

如果提交了,可以使用資料庫閃回, 非常簡單

--得到乙個當前序列號.

select dbms_flashback.get_system_change_number scn from dual;

--7827319是序列號

select * from table as of scn 7827319;

你可以慢慢減序列號,直到你能查詢到資料.

例如, 我刪除資料提交, oracle會給這個操作乙個序列號. 然後每一次操作都會生成序列號.

你用 as of scn 序列 查詢時, 查詢當時那個操作的資料情況.

6樓:藍色的魚

沒提交也給刪除了??有這回事嘛

7樓:o毛毛蟲

沒有commit會回滾的,你再查一下資料還存在不

8樓:匿名使用者

沒有提交的話應該是沒有實際刪除的,你換個會話重新登陸查詢一下,看看還能不能查的到你刪除的資料。

在「」oracle」中如何恢復被「delete」的資料?

9樓:惲平凡

/*1.flashback query*/

--閃回到15分鐘前

select * from orders as of timestamp (systimestamp - interval ''15'' minute) where ......

這裡可以使用day、second、month替換minute,例如:

select * from orders as of timestamp(systimestamp - interval ''2'' day)

--閃回到某個時間點

select * from orders as of timestamp to_timestamp (''01-sep-04 16:18:57.

845993'', ''dd-mon-rr hh24:mi:ss.

ff'') where ...

--閃回到兩天前

select * from orders as of timestamp (sysdate - 2) where.........

/*2.flashback drop*/

1.flashback table orders to before drop;

2.如果源表已經重建,可以使用rename to子句:

flashback table order to before drop rename to order_old_version;

/*3.flashback table*/

1.首先要啟用行遷移:

alter table order enable row movement;

2.閃回表到15分鐘前:

flashback table order to timestamp systimestamp - interval ''15'' minute;

閃回到某個時間點:

flashback table order to timestamp to_timestamp('2007-09-12 01:15:25 pm','yyyy-mm-dd hh:

mi:ss am')

oracle裡 delete 了資料怎麼恢復。急啊

10樓:

oracle dba神器:prm災難恢復工具,schema級別資料恢復。prm for oracle database – schema級別oracle資料庫資料恢復特性 ,prm即parnassusdata recovery manager是企業級別oracle資料庫災難恢復工具。

prm可以在無備份的情況下恢復被truncated/drop掉的表,也可以恢復無法開啟的oracle資料庫(alter database open失敗)中的資料。 prm是圖形化增強版的oracle dul工具,同時具備很多oracle dul不具備的特性

11樓:匿名使用者

delete 以後, commit了麼?

如果還沒有 commit, 那麼簡單 rollback 就可以了。

如果已經 commit 了, 那麼嘗試用 oracle flashback query, 把錯誤刪除的資料,查詢出來,然後再嘗試恢復。

12樓:匿名使用者

使用者刪除恢復的方法

用oracle em進行管理,即選單中的database control -資料庫名,進入後,建立表空間,建立使用者,指定使用者的許可權即可,是視覺化的介面,呵呵。

伺服器-->安全性-->使用者

13樓:惲平凡

/*1.flashback query*/

--閃回到15分鐘前

select * from orders as of timestamp (systimestamp - interval ''15'' minute) where ......

這裡可以使用day、second、month替換minute,例如:

select * from orders as of timestamp(systimestamp - interval ''2'' day)

--閃回到某個時間點

select * from orders as of timestamp to_timestamp (''01-sep-04 16:18:57.

845993'', ''dd-mon-rr hh24:mi:ss.

ff'') where ...

--閃回到兩天前

select * from orders as of timestamp (sysdate - 2) where.........

/*2.flashback drop*/

1.flashback table orders to before drop;

2.如果源表已經重建,可以使用rename to子句:

flashback table order to before drop rename to order_old_version;

/*3.flashback table*/

1.首先要啟用行遷移:

alter table order enable row movement;

2.閃回表到15分鐘前:

flashback table order to timestamp systimestamp - interval ''15'' minute;

閃回到某個時間點:

flashback table order to timestamp to_timestamp('2007-09-12 01:15:25 pm','yyyy-mm-dd hh:

mi:ss am')

14樓:匿名使用者

如果沒有commit 使用rollback .恢復

如果commit了,從事務日誌中查詢恢復了

oracle資料庫資料刪除後如何恢復?

15樓:

oracle dba神器:prm災難恢復工具,schema級別資料恢復。prm for oracle database – schema級別oracle資料庫資料恢復特性 ,prm即parnassusdata recovery manager是企業級別oracle資料庫災難恢復工具。

prm可以在無備份的情況下恢復被truncated掉的表,也可以恢復無法開啟的oracle資料庫(alter database open失敗)中的資料。 prm是圖形化增強版的oracle dul工具,同時具備很多oracle dul不具備的特性

16樓:匿名使用者

刪除表後,可以採用如下操作:

在 user_recyclebin中找到最近操作過的表名稱,然後用閃回(只能用於10g及以上版本)。

flash back table table_name to before drop;

如果是刪了或修改裡面的資料,可以先建立乙個快表將刪除修改之前狀態的資料找回到這個表中:

create table quick_table as

select * from table_name as of timestamp system-1/24 (一小時前的),減去的時間可以自己定。如樓上f_253那位老兄的寫法就不錯,能自由定製時間

17樓:

如果是表結構和表空間被刪除而又沒有備份,那就杯具了,

如果僅僅是表中的資料被刪除,而你的oracle的資源很多,那麼可以利用oracle的快照進行查詢某個時間點的資料

例如:select * from student as of timestamp (systimestamp - interval '100' minute)

18樓:手機使用者

如果刪除時間不長的話,可以用閃回功能中的flashback drop

19樓:

select * from user_recyclebin;

flashback table object_name to before drop;

20樓:匿名使用者

oracle不熟悉,不能從系統日誌中找找嗎

oracle的update和delete語句中可以用left join語句嗎

oracle的update和delete語句中不可以用left join語句的。在oracle中,left join 是left outer join的簡寫,left join預設是outer屬性的。舉例 例子 table a aid adate 1 a1 2 a2 3 a3 tableb bid ...

oracle裡 delete 了資料怎麼恢復。急啊

oracle dba神器 prm災難恢復工具,schema級別資料恢復。prm for oracle database schema級別oracle資料庫資料恢復特性 prm即parnassusdata recovery manager是企業級別oracle資料庫災難恢復工具。prm可以在無備份的情...

請問在Oracle資料庫中,建立的資料庫使用者都存放在哪兒?使用者授權後的資訊又放在哪兒

使用者會被放在dba users,好想授權資訊也是這裡邊。匯出單張表也會到匯出對這張表有許可權的除系統級使用者之外的使用者 僅限於此表的使用者 在匯入的時候,需在先建乙個相應的使用者,匯入表的時候會自動對這個 些 使用者進行授權。大概是這樣子的,我也是剛學。oracle資料庫在建立後都會有四個預設資...

linux安裝oracle,怎麼在linux下安裝oracle資料庫

好像是libxp.so 你提供的資料不是太詳細.runinstaller之後是會出現一些提示的,但是過一會就會彈出安裝介面。怎麼在linux下安裝oracle資料庫 oracle 解的安裝檔案解壓後有個doc目錄,裡面有個index.htm 用瀏覽器開啟,裡面有quick install guide...

linu下怎麼用dbca建立oracle10g資料庫

出家人詞悲 方法一1 圖形介面 用oracle使用者登陸,執行dbca,通過嚮導提示建立,修改,刪除資料庫。2 命令列 su oracle切換到oracle使用者,可以用靜默方式建立,刪除資料庫 a 執行以下命令使用dbca靜默方式建立資料庫 dbca silent createdatabase r...