zoukankan      html  css  js  c++  java
  • [bbk4727] 第24集 第三章 Flashback Table 01

    Guaranteeing Unod Retention

    SQL> select ts#,name,included_in_database_backup,bigfile,flashback_on,encrypt_in_backup from v$tablespace;
    
           TS# NAME            INCLUDED_IN_DATABASE_BACKUP    BIGFILE    FLASHBACK_ON    ENCRYPT_IN_BACKUP
    ---------- --------------- ------------------------------ ---------- --------------- --------------------
             0 SYSTEM          YES                            NO         YES
             1 SYSAUX          YES                            NO         YES
             2 UNDOTBS1        YES                            NO         YES
             4 USERS           YES                            NO         YES
             3 TEMP            NO                             NO         YES
             6 EXAMPLE         YES                            NO         YES
             7 TAB_U2          YES                            NO         YES
             8 TAB_U3          YES                            NO         YES
             9 TS0             YES                            NO         YES
            10 TS1             YES                            NO         YES
            11 TS2             YES                            NO         YES
            12 TS3             YES                            NO         YES
            13 TS4             YES                            NO         YES
    
    13 rows selected.
    View v$tablespace
    SQL> select tablespace_name,contents,retention from dba_tablespaces;
    
    TABLESPACE_NAME                CONTENTS  RETENTION
    ------------------------------ --------- -----------
    SYSTEM                         PERMANENT NOT APPLY
    SYSAUX                         PERMANENT NOT APPLY
    UNDOTBS1                       UNDO      NOGUARANTEE
    TEMP                           TEMPORARY NOT APPLY
    USERS                          PERMANENT NOT APPLY
    EXAMPLE                        PERMANENT NOT APPLY
    TAB_U2                         PERMANENT NOT APPLY
    TAB_U3                         PERMANENT NOT APPLY
    TS0                            PERMANENT NOT APPLY
    TS1                            PERMANENT NOT APPLY
    TS2                            PERMANENT NOT APPLY
    TS3                            PERMANENT NOT APPLY
    TS4                            PERMANENT NOT APPLY
    
    13 rows selected.
    View dba_tablespaces
    ALTER TABLESPACE undotbs1 RETENTION GUARANTEE;
    RETENTION GUARANTEE
    ALTER TABLESPACE undotbs1 RETENTION NOGUARANTEE;
    RETENTION NOGUARANTEE

    Flashback Query

    Flashback Query:Example

    利用闪回查询,恢复数据案例

    /***************************************************/

    实验报告

    1、7369 ->?                  get scn

    2、update-7369             get scn

    3、识别错误

    4、恢复数据 

    /***************************************************/

    SQL> select employee_id,last_name,salary from t;
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            198 OConnell                        2600
            199 Grant                           2600
            200 Whalen                          4400
            201 Hartstein                      13000
            202 Fay                             6000
            203 Mavris                          6500
            204 Baer                           10000
            205 Higgins                        12008
            206 Gietz                           8300
            100 King                           24000
            101 Kochhar                        17000
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            102 De Haan                        17000
            103 Hunold                          9000
            104 Ernst                           6000
            105 Austin                          4800
            106 Pataballa                       4800
            107 Lorentz                         4200
            108 Greenberg                      12008
            109 Faviet                          9000
            110 Chen                            8200
            111 Sciarra                         7700
            112 Urman                           7800
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            113 Popp                            6900
            114 Raphaely                       11000
            115 Khoo                            3100
            116 Baida                           2900
            117 Tobias                          2800
            118 Himuro                          2600
            119 Colmenares                      2500
            120 Weiss                           8000
            121 Fripp                           8200
            122 Kaufling                        7900
            123 Vollman                         6500
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            124 Mourgos                         5800
            125 Nayer                           3200
            126 Mikkilineni                     2700
            127 Landry                          2400
            128 Markle                          2200
            129 Bissot                          3300
            130 Atkinson                        2800
            131 Marlow                          2500
            132 Olson                           2100
            133 Mallin                          3300
            134 Rogers                          2900
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            135 Gee                             2400
            136 Philtanker                      2200
            137 Ladwig                          3600
            138 Stiles                          3200
            139 Seo                             2700
            140 Patel                           2500
            141 Rajs                            3500
            142 Davies                          3100
            143 Matos                           2600
            144 Vargas                          2500
            145 Russell                        14000
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            146 Partners                       13500
            147 Errazuriz                      12000
            148 Cambrault                      11000
            149 Zlotkey                        10500
            150 Tucker                         10000
            151 Bernstein                       9500
            152 Hall                            9000
            153 Olsen                           8000
            154 Cambrault                       7500
            155 Tuvault                         7000
            156 King                           10000
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            157 Sully                           9500
            158 McEwen                          9000
            159 Smith                           8000
            160 Doran                           7500
            161 Sewall                          7000
            162 Vishney                        10500
            163 Greene                          9500
            164 Marvins                         7200
            165 Lee                             6800
            166 Ande                            6400
            167 Banda                           6200
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            168 Ozer                           11500
            169 Bloom                          10000
            170 Fox                             9600
            171 Smith                           7400
            172 Bates                           7300
            173 Kumar                           6100
            174 Abel                           11000
            175 Hutton                          8800
            176 Taylor                          8600
            177 Livingston                      8400
            178 Grant                           7000
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            179 Johnson                         6200
            180 Taylor                          3200
            181 Fleaur                          3100
            182 Sullivan                        2500
            183 Geoni                           2800
            184 Sarchand                        4200
            185 Bull                            4100
            186 Dellinger                       3400
            187 Cabrio                          3000
            188 Chung                           3800
            189 Dilly                           3600
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            190 Gates                           2900
            191 Perkins                         2500
            192 Bell                            4000
            193 Everett                         3900
            194 McCain                          3200
            195 Jones                           2800
            196 Walsh                           3100
            197 Feeney                          3000
    
    107 rows selected.
    
    SQL> conn /as sysdba
    Connected.
    SQL> select dbms_flashback.get_system_change_number() from dual;
    
    DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER()
    -----------------------------------------
                                      4330451
    get scn
    SQL> conn U2/U2
    Connected.
    SQL> update t set salary=30000 where employee_id=197;
    
    1 row updated.
    
    SQL> commit;
    
    Commit complete.
    
    SQL> select employee_id,last_name,salary from t where employee_id = 197;
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            197 Feeney                         30000
    执行修改,模拟误操作
    SQL> conn /as sysdba
    Connected.
    SQL> select dbms_flashback.get_system_change_number() from dual;
    
    DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER()
    -----------------------------------------
                                      4330562
    记录最新版的scn
    SQL> conn U2/U2
    Connected.
    SQL> select employee_id,last_name,salary
      2  as of scn 4330451
      3  where employee_id=197;
    as of scn 4330451
       *
    ERROR at line 2:
    ORA-00923: FROM keyword not found where expected
    
    SQL> 1
      1* select employee_id,last_name,salary
    SQL> a/ from t
      1* select employee_id,last_name,salary/ from t
    SQL> l
      1  select employee_id,last_name,salary/ from t
      2  as of scn 4330451
      3* where employee_id=197
    SQL> 0 select employee_id,last_name,salary from t
    SQL> l
      1  select employee_id,last_name,salary from t
      2  select employee_id,last_name,salary/ from t
      3  as of scn 4330451
      4* where employee_id=197
    SQL> del 2
    SQL> l
      1  select employee_id,last_name,salary from t
      2  as of scn 4330451
      3* where employee_id=197
    SQL> /
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            197 Feeney                          3000
    识别错误
    SQL> show user
    USER is "U2"
    
    SQL> update t set salary = (select salary from t as of scn 4330451 where employee_id = 197)
      2  where employee_id = 197;
    
    1 row updated.
    
    SQL> commit;
    
    Commit complete.
    
    SQL> select employee_id,last_name,salary from t where employee_id = 197;
    
    EMPLOYEE_ID LAST_NAME                     SALARY
    ----------- ------------------------- ----------
            197 Feeney                          3000
    数据恢复
  • 相关阅读:
    决策树
    Linux登录指令-ssh
    CentOS下搭建Hive
    server 2008 ftp 环境重点说明
    搭建ftp环境
    supesite 连 discuz 论坛记录
    安装ucenter 步骤详解及supesite 安装详解
    最近打算 学点东西,不能 再这样下去了
    今天知道了一个 反向代理,是apache 的一个功能,这里记录一下
    最近 弄了一个 discuz 7.2,管理员发帖 会出现 很多错误,解决 办法 在别的帖子中找到了
  • 原文地址:https://www.cnblogs.com/arcer/p/3081823.html
Copyright © 2011-2022 走看看