• oracle 闪回 flashback


    今天更新生成数据,没有增加筛选条件,造成了全表更新,当时就蒙蔽了.这里记录下处理流程,也是警戒吧.不然只能跑路了......

    1. 第一时间查看是否有备份数据,然而往往没有;
    2. 查询测试库是否可以用,两个库时间差异很大,往往也没法用;
    3. 联系运维看是否有做数据备份.答案是有,但是数据量往往很大,这个恢复时间周期会比较长,也不是最优解.
    4. 偶然发现oracle数据有个闪回功能,这个命令有时效限制,所以要尽快执行,还好我执行时记录了时间,整个操作时间花了9分钟左右,确实很刺激.使用命令如下
    select * from <tablename> as of timestamp "TO_TIMESTAMP"('2021-09-15 15:54:00', 'yyyy-mm-dd hh24:mi:ss')
    -- 开启闪回,如果不开启无法进行闪回
    alter table <tablename> enable row movement
    -- 闪回表数据到某个时间点
    flashback table <tablename> to timestamp TO_TIMESTAMP('2021-09-15 15:54:00', 'yyyy-mm-dd hh24:mi:ss');
    -- 关闭闪回,回滚数据之后需要进行关闭-- 
    alter table <tablename> disable row movement;
    
    1. 线上更新操作,要先备份再更新,对于常操作表自己也可以定期做个备份.或者删除和更新操作要先写筛选条件再增加实际的更新值,这样就算有问题也可以控制影响范围.

    参考资料

    oracle数据库表中数据误更新回滚

    喜欢关注一下,不喜欢点评一下
  • 相关阅读:
    koller——PGM 基础
    java 类 多态
    java 基础知识
    相关性检验和独立性检验
    IDEA远程连接Hadoop
    sklearn pipeline
    java static
    sklearn learn preprocessing
    数据预处理 简介
    RATE-MAX alpha冲刺第八天
  • 原文地址:https://www.cnblogs.com/chengmuyu/p/15272690.html
Copyright © 2020-2023  润新知