qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          Linux下的flashback腳本

            一個(gè)客戶比較關(guān)心邏輯錯(cuò)誤的恢復(fù),我們給他推薦的方案是在容災(zāi)庫(kù)上使用flashback技術(shù),下面是一個(gè)簡(jiǎn)單的linux的腳本。
          #!/bin/bash
          export LOGIN_USER=test
          export LOGIN_PWD=test
          #########################################function###############################################
          flashscn()
          {
          echo -e "enter scn:\c"
          read SCNNUM
          STR1="flashback table $OWNER.$TABLE_NAME to scn $SCNNUM;"
          echo $STR1
          T1=`sqlplus -silent $LOGIN_USER/$LOGIN_USER <<EOF
          set pagesize 0 feedback off verify off heading off echo off
          alter table $OWNER.$TABLE_NAME enable row movement;
          $STR1
          alter table $OWNER.$TABLE_NAME disable row movement;
          EOF`
          if [ -z "$T1" ];then
          echo "######"
          echo "flashback table $TABLE_NAME OK!"
          else
          echo "######"
          echo "flashback tabel $TABLE_NAME error:"
          echo $T1 |awk -F "ORA-" '{print "ORA-" $NF}'
          fi
          }
          flashtime()
          {
          echo -e "enter time (example 2014-05-18 20:34:21):\c"
          read STIME
          STR2="flashback table $OWNER.$TABLE_NAME to timestamp to_timestamp('$STIME','yyyy-mm-dd hh24:mi:ss');"
          echo $STR2
          T2=`sqlplus -silent $LOGIN_USER/$LOGIN_USER <<EOF
          set pagesize 0 feedback off verify off heading off echo off
          alter table $OWNER.$TABLE_NAME enable row movement;
          $STR2
          alter table $OWNER.$TABLE_NAME disable row movement;
          EOF`
          if [ -z "$T2" ];then
          echo "######"
          echo "flashback table $TABLE_NAME OK!"
          else
          echo "######"
          echo "flashback tabel $TABLE_NAME error:"
          echo $T2 |awk -F "ORA-" '{print "ORA-" $NF}'
          fi
          }
          ############################################main start##############################################
          echo -e "enter flashback table owner:\c"
          read OWNER
          echo -e "enter flashbackup table name:\c"
          read TABLE_NAME
          echo -e "chose flashback type 1)time 2)scn  1\2 :\c"
          read STYPE
          case $STYPE in
          1)
          flashtime
          ;;
          2)
          flashscn
          ;;
          *)
          echo "your enter is error,please enter 1 or 2 !!!"
          exit
          ;;
          esac

          posted on 2014-05-23 10:13 順其自然EVO 閱讀(162) 評(píng)論(0)  編輯  收藏 所屬分類: linux

          <2014年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 南溪县| 色达县| 正蓝旗| 理塘县| 德钦县| 双桥区| 瑞金市| 本溪市| 壤塘县| 孟津县| 吉隆县| 河南省| 舒城县| 古浪县| 乾安县| 九江市| 龙门县| 若尔盖县| 桂阳县| 呈贡县| 图木舒克市| 鹿邑县| 嘉黎县| 松阳县| 栾川县| 沐川县| 治县。| 绥棱县| 馆陶县| 博乐市| 桃江县| 政和县| 晋州市| 奎屯市| 图们市| 区。| 江阴市| 丰宁| 开化县| 贵港市| 肇庆市|