文档详情

数据库误操作数据恢复.pdf

发布:2025-05-02约8.64千字共7页下载文档
文本预览下载声明

数据库人为误操作处理

1.故障等级:

三级

2.故障现象描述:

误操作导致业务逻辑发生错误,需要从业务侧予以发现。

3.影响范围:

需要使用到该数据的相关业务。

4.故障定位需要时间

根据误操作报告时间确定

5.故障定位参考

人为操作无报错信息,以操作人员报告或bug发现为准。

6.故障处理时间预估

视具体情况120分钟至200分钟不等。

7.处置方式:

可操作,需要额外设备支持

8.处置手册:

针对误操作的种类及误操作距当前时间是否超过undo_retention参数限定的

时间,可分为3中处理方式,分别为,由于前两种方式比较简单,无需异地

恢复,因此当误操作发生时应尽告并及时处理:

1)已知SQL(UPDATE)未超过undo_retention

使用回滚段闪回将整张表还原至修改前,例如被修改的表为jun_objects。

查找修改时间

selectSQL_TEXT,to_char(LAST_ACTIVE_TIME,yyyy-mm-ddhh24:mi:ss)

fromv$sqlareawhereSQL_TEXTlikeupdatejun%;

SQL_TEXTTO_CHAR(LAST_ACTIVE

updatejun_objectssetOBJECT_ID=66662012-11-0910:50:49

开启行迁移,将表回复至修改前

SQLaltertableorderenablerowmovement;

SQLflashtablejun_objectstotimestampto_timestamp(2012-11-0910:45:00,yyyy-mm-dd

hh24:mi:ss);

或者通过在回滚段中的记录更新表。

SQLselectOBJECT_IDfromjun_objectsasoftimestampto_timestamp(2012-11-09

10:45:00,yyyy-mm-ddhh24:mi:ss)whererownum10;

OBJECT_ID

20

44

28

9rowsselected.

2)误drop表,没有超过undo_retention

SQLdroptableJUN_OBJECTS_DROP;

Tabledropped.

SQLselectTABLE_NAMEfromuser_tables;

TABLE_NAME

JUN_OBJECTS

SQLSELECT*FROMTAB;

TNAMETABTYPECLUSTERID

JUN_OBJECTSTABLE

BIN$zgh/fNHty2XgQAIKIKlC7Q==$0TABLE

SQLFLASHBACKTABLEJUN_OBJECTS_DROPTOBEFOREDROP;

Flashbackcomplete.

3)已知SQL(UPDATE,DROP),超过undo_retention,采用异地恢复方式

尽可能找到可恢复的时间点

SELECTsample_time,

显示全部
相似文档