oracle用expdp定時備份所有步驟詳解[轉]

來源:互聯網
上載者:User

標籤:

用oracle命令備份資料庫,產生dmp檔案,儲存了整一套的使用者及表資料資訊。還原簡單。加上widnows的批處理bat命令,實現每天0點備份,現把經驗送上給大家!

 

工具/原料 
  • oracle11g 11.2.0 64位

百度經驗:jingyan.baidu.com

方法/步驟 
  1. 1

    在“運行”裡開啟cmd

    步驟閱讀
  2. 2

    輸入命令:sqlplus system/[email protected]

    其中system是登入資料庫的使用者名稱

    123456是使用者名稱的密碼

    orcl是資料庫執行個體名稱

     

    步驟閱讀
  3. 3

    如果提示命令無效,那就是你沒有配置好oracle的環境變數(想當年我也被這個問題困擾著),配置oracle環境變數的方法如下:

     

    1、右擊“我的電腦”->選擇“屬性”->選擇“進階”->單擊“環境變數”2、選擇“Path”這一行,單擊“編 輯”,在“Path”的變數值文字框的最後面先加入一個分號“:”,然後再分號後面加入sqlplus檔案的目錄路徑,如“C:\Program Files\oracle\product\10.2.0\db_1\BIN”,然後點擊“確定”按鈕。3、如果在“系統變數”列表框下面的“變數”列中找不到“ORACLE_HOME”和“ORACLE_SID”這兩個變數,則需要下面操作,否則無需一下操作。4、在“系統變數”中點擊“建立”按鈕,在“變數名”中輸入“ORACLE_HOME”,變數值中輸入Oracle的安裝目錄路徑,如“C:\Program Files\oracle\product\10.2.0\db_1”,然後點擊“確定”按鈕。5、在“系統變數”中點擊“建立”按鈕,在“變數名”中輸入“ORACLE_SID”,變數值中輸入資料庫的執行個體名,然後點擊“確定”按鈕。

    ORACLE_HOME:Oracle資料庫軟體的安裝目錄ORACLE_SID:Oracle資料庫的執行個體名Oracle 資料庫執行個體名:用於和作業系統進行聯絡的標識,即資料庫和作業系統之間的交換是通過資料庫執行個體名來體現的。

     

    END

百度經驗:jingyan.baidu.com

第二步,EXPDP備份命令 
  1. 1

    建立oracle的備份目錄:

    sql>create directory dpdata1 as ‘D:\temp\dmp‘;

    這僅僅是在oracle裡設定的目錄,並沒有真正建立

    步驟閱讀
  2. 2

    可以通過這句命令查看到這個目錄

    sql>select * from dba_directories;

    步驟閱讀
  3. 3

    賦於要匯出資料表的所屬使用者權限

    sql>grant read,write on directory dpdata1 to sshe;

    步驟閱讀
  4. 4

    好了,到了關鍵一步,之前走了不少彎路,但其它是小問題,在網上零零碎碎查了很多資料,終於找到原因。

    首先,要切換回命令視窗,不要再在sql>下運行,然後輸入命令:

    expdp system/[email protected] directory=dpdata1 dumpfile=sshe.dmp logfile=sshe.log schemas=sshe

     

    步驟閱讀
  5. 5

    上面報了一個錯ORA-39002:操作無效

    原因是D:\temp\dmp這個目錄不存在,別以為create directory之後就會自動組建檔案夾,也別以為執行expdp後會自動組建檔案夾,要自己手動建立這個目錄檔案夾的。建立檔案夾後再試一下,果然成功了!恭喜你,已成功備份!

    步驟閱讀
  6. 6

    如果你要問,匯出來的dmp檔案怎樣還原回去。好吧,做人做到底,為了省去你再找方法的麻煩,這裡我也做一個示範(一般備份的資料是等到資料庫有問題時才用的上)。

     

    首先,再一次登入資料庫 sqlplus system/[email protected]

    然後,刪除目標資料庫使用者 drop user sshe cascade;

    步驟閱讀
  7. 7

    現在來再一次建立使用者,可以用命令建立,也可以在plsql裡建立,這裡在plsql建立。

    用system登入資料庫,然後右鍵users--建立

    然後填寫你的帳號名稱,必須和備份時的使用者一致,並賦於相應的許可權

    最後點擊應用,完成使用者建立。

    步驟閱讀步驟閱讀
  8. 8

    返回DOS命令視窗,不再是sql>

    輸入匯入命令:impdp system/[email protected] directory=dpdata1 dumpfile=SSHE.DMP logfile=sshe.log schemas=sshe

    匯入成功!

    步驟閱讀END

百度經驗:jingyan.baidu.com

步驟3 定時執行備份任務 
  1. 1

    做一個按年月日命名的批處理。在D:\temp\目錄下建立一個檔案,隨便命名為.bat,我的命名為sshe.bat,編輯為如下代碼

    -------------------------------------------------------------------------

    @echo offrem set backupfile=f_database_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmprem set logfile=f_database_%date:~0,4%-%date:~5,2%-%date:~8,2%.logrem delete 30days filesforfiles /p "D:\temp\dmp" /d -30  /c "cmd /c echo deleting @file ... && del /f @path"cd D:\temp\dmp

    rem backup schemasset backupfile=sshe_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmpset logfile=sshe_%date:~0,4%-%date:~5,2%-%date:~8,2%.logexpdp sshe/sshe directory=DIR_DP  dumpfile=%backupfile%  logfile=%logfile% schemas=sshe parallel=4

    -------------------------------------------------------------------------------

     

    可以試執行一下,會自動產生一個以年月日命名的備份檔案

    forfiles /p "D:\temp\dmp" /d -30  /c "cmd /c echo deleting @file ... && del /f @path"的作用是:刪除本目錄下30天以後的備份檔案,這個挺有用的。

  2. 2

    做一個windows每晚自動運行Database Backup的bat,我的命名為auto.bat編輯如下內容

    ------------------------------------------------------------------------------

    @ECHO OFFschtasks /create /tn SSHE資料庫定時備份 /tr "D:\temp\sshe_bak.bat" /sc daily /st 00:00:00 /ru "system" PAUSEEXIT

    ------------------------------------------------------------------------------

  3. 3

    雙擊auto.bat,就會在windows添加一個定時任務,每晚0點0分就會自動執行一次sshe.bat,從而完成自動備份的目的。

  4. 4

    右鍵我的電腦:管理——工作排程器——工作排程器庫,可以看到剛才添加進去的定時任務

    步驟閱讀
  5. 5

    可以將電腦的時鐘設為23點59分50秒,等待10秒鐘,看看自動備份能否成功。如果成功那就大功告成了!!

     

    原文:http://jingyan.baidu.com/article/9113f81b2040862b3314c757.html

oracle用expdp定時備份所有步驟詳解[轉]

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.