oracle数据库执行脚步出错,怎么恢复数据库

oracle数据库执行脚步出错,怎么恢复数据库,第1张

数据恢复方法是利用oracle提供的闪回方法进行数据恢复,适用于delete删除(一条记录)方式:

首先需要知道是什么时间进行的删除 *** 作,如果不能确定具体时间点则选择尽量准确的删除数据前的时间。然后利用

select from 表名 as of timestamp to_timestamp('删除时间点','yyyy-mm-dd hh24:mi:ss')

语句可以找回删除的数据。利用

insert into 表名 (select from 表名 as of timestamp to_timestamp('删除时间点','yyyy-mm-dd hh24:mi:ss'));

语句就可以将恢复出来的数据插入原表中(注意要保证主键不重复)。

另一种方法可以通过闪回整个表来恢复误删除的数据,但仅适用于表结构没有发生改变且用户有flash any table权限的情况下,语句如下:

·alter table 表名 enable row movement

如果开启闪回可以使用闪回表。

select log_mode,flashback_on from v$database;

如果是下面结果则开了闪回

LOG_MODE FLASHBACK_ON

------------ ------------------

ARCHIVELOG YES

可以执行以下命令

alter table 表名 enable row movement; --开启表行移动

flashback table 表名 to timestamp to_timestamp('20130813 14:00:00','yyyymmdd hh24:mi:ss');

--闪回到2013年8月13日14点

你要是没开启,有逻辑备份可以使用imp命令导入数据。

如果没用逻辑备份,开启归档模式,有物理备份,能够停机、数据丢失的话,可以采用不完全恢复

用rman登陆

rman target /

执行以下命令

run{shutdown immediate;

startup mount;

set until time = "to_date('20130813 14:00:00','yyyymmdd hh24:mi:ss')";

restore database;

recover database;

alter database open resetlogs;}

切记!做以上任何 *** 作前做好备份,否则出了问题后悔莫及。

而且建议你联系你们数据库管理员处理这个问题。

以上就是关于oracle数据库执行脚步出错,怎么恢复数据库全部的内容,包括:oracle数据库执行脚步出错,怎么恢复数据库、oracle数据库表如何恢复到特定时间点、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9806340.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存