oracle如何用expdp定時備份?oracle用expdp實(shí)現(xiàn)定時備份數(shù)據(jù)庫圖文詳細(xì)教程

oracle如何用expdp定時備份數(shù)據(jù)庫?Oracle是甲骨文公司憑借自已30年的設(shè)計經(jīng)驗,成功打造的功能強(qiáng)大的關(guān)系數(shù)據(jù)庫管理系統(tǒng),用oracle命令備份數(shù)據(jù)庫,生成dmp文件,保存了整一套的用戶及表數(shù)據(jù)信息。而且還原簡單。加上widnows的批處理bat命令,實(shí)現(xiàn)每天0點(diǎn)備份,那么,具體要怎么操作呢?現(xiàn)把oracle用expdp實(shí)現(xiàn)定時備份數(shù)據(jù)庫的詳細(xì)方法步驟送上給大家,一起去看看吧!
步驟一:
1、在“運(yùn)行”里打開cmd
2、輸入命令:sqlplus system/123456@orcl
其中system是登錄數(shù)據(jù)庫的用戶名
123456是用戶名的密碼
orcl是數(shù)據(jù)庫實(shí)例名稱
3、如果提示命令無效,那就是你沒有配置好oracle的環(huán)境變量(想當(dāng)年我也被這個問題困擾著),配置oracle環(huán)境變量的方法如下:
1、右擊“我的電腦”->選擇“屬性”->選擇“高級”->單擊“環(huán)境變量”
2、選擇“Path”這一行,單擊“編 輯”,在“Path”的變量值文本框的最后面先加入一個分號“:”,然后再分號后面加入sqlplus文件的目錄路徑,如“C:\Program Files\oracle\product\10.2.0\db_1\BIN”,然后點(diǎn)擊“確定”按鈕。
3、如果在“系統(tǒng)變量”列表框下面的“變量”列中找不到“ORACLE_HOME”和“ORACLE_SID”這兩個變量,則需要下面操作,否則無需一下操作。
4、在“系統(tǒng)變量”中點(diǎn)擊“新建”按鈕,在“變量名”中輸入“ORACLE_HOME”,變量值中輸入Oracle的安裝目錄路徑,如“C:\Program Files\oracle\product\10.2.0\db1”,然后點(diǎn)擊“確定”按鈕。
5、在“系統(tǒng)變量”中點(diǎn)擊“新建”按鈕,在“變量名”中輸入“ORACLE_SID”,變量值中輸入數(shù)據(jù)庫的實(shí)例名,然后點(diǎn)擊“確定”按鈕。
ORACLE_HOME:Oracle數(shù)據(jù)庫軟件的安裝目錄
ORACLE_SID:Oracle數(shù)據(jù)庫的實(shí)例名
Oracle 數(shù)據(jù)庫實(shí)例名:用于和操作系統(tǒng)進(jìn)行聯(lián)系的標(biāo)識,即數(shù)據(jù)庫和操作系統(tǒng)之間的交換是通過數(shù)據(jù)庫實(shí)例名來體現(xiàn)的。
步驟二:創(chuàng)建oracle的備份目錄
1、sql>create directory dpdata1 as 'D:\temp\dmp';這僅僅是在oracle里設(shè)定的目錄,并沒有真正創(chuàng)建
2、可以通過這句命令查看到這個目錄 sql>select * from dba_directories;
3、賦于要導(dǎo)出數(shù)據(jù)表的所屬用戶權(quán)限 sql>grant read,write on directory dpdata1 to sshe;
4、好了,到了關(guān)鍵一步,之前走了不少彎路,但其它是小問題,在網(wǎng)上零零碎碎查了很多資料,終于找到原因。
首先,要切換回命令窗口,不要再在sql>下運(yùn)行,然后輸入命令:
expdp system/123456@orcl directory=dpdata1 dumpfile=sshe.dmp logfile=sshe.log schemas=sshe
5、上面報了一個錯ORA-39002:操作無效
原因是D:\temp\dmp這個目錄不存在,別以為create directory之后就會自動生成文件夾,也別以為執(zhí)行expdp后會自動生成文件夾,要自己手動新建這個目錄文件夾的。新建文件夾后再試一下,果然成功了!恭喜你,已成功備份!
6、如果你要問,導(dǎo)出來的dmp文件怎樣還原回去。好吧,做人做到底,為了省去你再找方法的麻煩,這里我也做一個演示(一般備份的數(shù)據(jù)是等到數(shù)據(jù)庫有問題時才用的上)。
首先,再一次登錄數(shù)據(jù)庫 sqlplus system/123456@orcl
然后,刪除目標(biāo)數(shù)據(jù)庫用戶 drop user sshe cascade;
7、現(xiàn)在來再一次創(chuàng)建用戶,可以用命令創(chuàng)建,也可以在plsql里創(chuàng)建,這里在plsql創(chuàng)建。
用system登錄數(shù)據(jù)庫,然后右鍵users--新建
然后填寫你的賬號名稱,必須和備份時的用戶一致,并賦于相應(yīng)的權(quán)限
最后點(diǎn)擊應(yīng)用,完成用戶創(chuàng)建。
8、返回DOS命令窗口,不再是sql>
輸入導(dǎo)入命令:impdp system/123456@orcl directory=dpdata1 dumpfile=SSHE.DMP logfile=sshe.log schemas=sshe
導(dǎo)入成功!
步驟三:定時執(zhí)行備份任務(wù)
1、做一個按年月日命名的批處理。在D:\temp\目錄下新建一個文件,隨便命名為.bat,我的命名為sshe.bat,編輯為如下代碼
-------------------------------------------------------------------------
@echo off
rem set backupfile=f_database_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmp
rem set logfile=f_database_%date:~0,4%-%date:~5,2%-%date:~8,2%.log
rem delete 30days files
forfiles /p "D:\temp\dmp" /d -30 /c "cmd /c echo deleting @file ... && del /f @path"
cd D:\temp\dmp
rem backup schemas
set backupfile=sshe_%date:~0,4%-%date:~5,2%-%date:~8,2%.dmp
set logfile=sshe_%date:~0,4%-%date:~5,2%-%date:~8,2%.log
expdp sshe/sshe directory=DIR_DP dumpfile=%backupfile% logfile=%logfile% schemas=sshe parallel=4
-------------------------------------------------------------------------------
可以試執(zhí)行一下,會自動生成一個以年月日命名的備份文件
forfiles /p "D:\temp\dmp" /d -30 /c "cmd /c echo deleting @file ... && del /f @path"的作用是:刪除本目錄下30天以后的備份文件,這個挺有用的。
(之前有人反映說上面bat排版有問題,可能是系統(tǒng)自動縮進(jìn)了,現(xiàn)在再重新修改了,如果還沒有是有排版問題,請參照以下圖--2017.12.5改)
2、做一個windows每晚自動運(yùn)行數(shù)據(jù)庫備份的bat,我的命名為auto.bat編輯如下內(nèi)容
------------------------------------------------------------------------------
@ECHO OFF
schtasks /create /tn SSHE數(shù)據(jù)庫定時備份 /tr "D:\dmp\sshe_bak.bat" /sc daily /st 00:00:00 /ru "system"
PAUSE
EXIT
windows每晚自動運(yùn)行數(shù)據(jù)庫備份bat
------------------------------------------------------------------------------
(之前有人反映說上面bat排版有問題,可能是系統(tǒng)自動縮進(jìn)了,現(xiàn)在再重新修改了,如果還沒有是有排版問題,請參照以下圖--2017.12.5改)
3、雙擊auto.bat,就會在windows添加一個定時任務(wù),每晚0點(diǎn)0分就會自動執(zhí)行一次sshe.bat,從而完成自動備份的目的。
4、右鍵我的電腦:管理——任務(wù)計劃程序——任務(wù)計劃程序庫,可以看到剛才添加進(jìn)去的定時任務(wù)
5、可以將電腦的時鐘設(shè)為23點(diǎn)59分50秒,等待10秒鐘,看看自動備份能否成功。如果成功那就大功告成了?。?/p>
教程結(jié)束,以上就是關(guān)于oracle如何用expdp定時備份?oracle用expdp實(shí)現(xiàn)定時備份數(shù)據(jù)庫圖文詳細(xì)教程的全部內(nèi)容,希望大家看完有所收獲!
相關(guān)教程推薦:
使用Navicat for Oracle工具連接oracle的圖文教程
Oracle VM VirtualBox工具怎么用 VirtualBox虛擬機(jī)安裝教程圖解
Oracle VM VirtualBox虛擬機(jī)的安裝使用圖文教程
相關(guān)文章
oracle 9i服務(wù)器端中文安裝教程圖解 32位/64位
oracle9i是業(yè)界第一個完整、簡單的用于互聯(lián)網(wǎng)的新一代智能化的、協(xié)作各種應(yīng)用的軟件基礎(chǔ)架構(gòu),是Oracle9iDatabase, Oracle 9i Application Server 和Oracle9i Developer Su2017-07-28- Oracle 10g客戶端是一款非常好用且功能強(qiáng)大的主要用于oracle數(shù)據(jù)庫的開發(fā)和編輯等操作的軟件,這個精簡版本從官方的oracle客戶端中提取,軟件解壓后就可以運(yùn)行,操作方法也2016-12-08
Oracle 11g的密碼更新 Oracle 11g密碼180過期問題解決方案
一直在使用Oracle數(shù)據(jù)庫,各種語句、注意一大堆,一不留神就沾染上了連接錯誤2014-07-26Oracle VM VirtualBox虛擬機(jī)的安裝使用圖文教程
相信很多朋友都知道Oracle VM VirtualBox。我也不例外,一次無意之間交流測試環(huán)境的時候朋友提出了他一直使用Oracle VM VirtualBox,好奇之下便安裝使用了2014-05-19使用oracle的SQL Developer創(chuàng)建用戶的方法
這篇文章主要介紹了使用oracle的SQL Developer創(chuàng)建用戶的方法,需要的朋友可以參考下2014-04-29Oracle VM VirtualBox工具怎么用 VirtualBox虛擬機(jī)安裝教程圖解
有很多朋友對虛擬機(jī)很陌生,沒用過虛擬機(jī)的童鞋們覺得虛擬機(jī)的安裝很難!其實(shí)虛擬機(jī)的安裝很簡單,安裝虛擬機(jī)的方法有很多種,本文為大家介紹Oracle VM VirtualBox虛擬機(jī)安2014-01-07