oracle怎么闪回 oracle数据库回闪

oracle数据库执行脚步出错,怎么恢复数据库数据恢复方法是利用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
oracle开启闪回,怎么操作啊一
首先查看是否开启闪回oracle怎么闪回:
SQL select flashback_on from V$database;
FLASHBACK_ON
------------------
NO

如果已经开启oracle怎么闪回了闪回oracle怎么闪回,无须执行下面oracle怎么闪回的操作 。
cd /u01
mkdir flashback(生成闪回目录)
SQL alter system set db_recovery_file_dest_size=30G scope=both;
SQL alter system set db_recovery_file_dest='/u01/flashback'scope=both;
SQL shutdown immediate
SQL startup mount
SQL alter database archivelog;
SQL alter database flashback on;
SQL alter database open;

再进行确认:
SQL select flashback_on from V$database;
FLASHBACK_ON
------------------
YES
如何执行Oracle数据库闪回查询可按以下步骤配置闪回数据库:(确保数据库处于ARCHIVELOG 模式 。)
1. 配置快速恢复区 。
2. 使用初始化参数DB_FLASHBACK_RETENTION_TARGET 设置保留目标 。可指定
一个上限(以分钟为单位),指示数据库能够闪回到多长时间以前 。本示例使用
了 2880 分钟,相当于两天 。此参数只是一个目标 , 并不提供任何保证 。闪回时间
间隔取决于快速恢复区中保留的闪回数据量的大小 。
3. 使用以下命令启用闪回数据库:
ALTER DATABASE FLASHBACK ON;
必须先配置数据库以进行归档,且必须在 MOUNT EXCLUSIVE 模式下启动数据库
后,才能发出此命令来启用闪回数据库 。
可以使用以下查询来确定是否已启用闪回数据库:
SELECT flashback_on FROM v$database;
可以使用ALTER DATABASE FLASHBACK OFF 命令禁用闪回数据库 。这样,会自动删
除所有现有的闪回数据库日志 。
注:仅当在独占模式下装载(而不是打开)数据库时才能启用闪回数据库 。
1.确认当前模式
SYS AS SYSDBA on 29-MAR-05 select flashback_on from v$database;
FLA
---
NO
2.检查/修改恢复区设置
SYS AS SYSDBA on 29-MAR-05 show parameter db_recovery_file_dest
NAME TYPEVALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_deststring/u01/app/oracle/flash_recovery_areadb_recovery_file_dest_sizebig integer 10G
SYS AS SYSDBA on 29-MAR-05 alter system set db_recovery_file_dest='/u01/app/oracle/flash_recovery_area';
SYS AS SYSDBA on 29-MAR-05 alter system set db_recovery_file_dest_size=15G;
3.检查/修改闪回时间设置
SYS AS SYSDBA on 29-MAR-05 show parameter db_flashback_retention_target
NAME TYPEVALUE
------------------------------------ ----------- ------------------------------
db_flashback_retention_targetinteger60
SYS AS SYSDBA on 29-MAR-05 alter system set db_flashback_retention_target=1440;--分钟
System altered.
如何设置flash recovery area
(1).db_recovery_file_dest:指定闪回恢复区的位置
(2).db_recovery_file_dest_size:指定闪回恢复区的可用空间大小
(3).db_flashback_retention_target:指定数据库可以回退的时间,单位为分钟,默认1440分钟,也就是一天 。当然,实际上可回退的时间还决定于闪回恢复区的大小,因为里面保存了回退所需要的 flash log 。所以这个参数要和db_recovery_file_dest_size配合修改 。
alter system set db_flashback_retention_target=1440;
alter system set db_recovery_file_dest='/u01/app/oracle/flash_recovery_area';
alter system set db_recovery_size=15G;
4.重新启动数据库到Mount状态
启动flashback database选项 。
SYS AS SYSDBA on 29-MAR-05 shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SYS AS SYSDBA on 29-MAR-05 startup mount exclusive;
ORACLE instance started.
Total System Global Area314572800 bytes
Fixed Size1301704 bytes
Variable Size261890872 bytes
Database Buffers50331648 bytes
Redo Buffers1048576 bytes
Database mounted.
SYS AS SYSDBA on 29-MAR-05 alter database flashback on;
Database altered.
SYS AS SYSDBA on 29-MAR-05 alter database open;
Database altered.
【oracle怎么闪回 oracle数据库回闪】oracle怎么闪回的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于oracle数据库回闪、oracle怎么闪回的信息别忘了在本站进行查找喔 。

    推荐阅读