oracle腳本備份資料庫
A. 菜鳥求助:linux下oracle資料庫自動備份腳本,腳本可實現資料庫自動備份功能,並刪除三天前的備份
這個好辦。 cp 你的資料庫`date +'%y%m%d'` 指定目錄 這個是以年月日來命名備份 刪除的命令是
rm -f 你的資料庫名字`date -d "3 days ago" +'%y%m%d'` 這個是刪除匹配你資料庫的備份名日期前3天的備份文件 他會按照日期-3天匹配3天前的日期來刪除備份的
B. oracle資料庫如何每天自動執行腳本完成正式資料庫到備份資料庫的備份
寫個腳本完成正式資料庫到備份資料庫的備份
再設定Task Schele 每天某個時間自動執行這個腳本
C. ORACLE如何用腳本自動備份伺服器上資料庫到本地資料庫上
使用dataguard。具體怎麼用請自己查步驟,太多了,寫不下(嚴重推薦,很多大型企業都在用)。
大概步驟就是建一個test1資料庫,再將test1做全備份,再恢復到test2上。這兩庫就一致了。然後將test2打開到mount,設成standby庫。按照文檔修改參數,讓test1能傳數據過來。
太詳細的我這里也寫不完。你自己查一下「如何使用dataguard或者standby」
一旦資料庫崩潰可以很快切換到備份庫上,兩者之間的數據相差非常小(也就傳一兩個archivelog的時間)。此外,還可以通過第三方軟體(較安全),實現報表分離。也就是這個庫還可以專門做報表。
D. 我寫了個Oracle資料庫自動備份腳本,執行後只有log文件,沒有dmp文件,在線等。bat文件內容如下:
大致看了下,沒發現你的批處理有明顯問題。
那就簡單說下排查思路。
1、既然問題出在備份上,就先不要理會刪除備份的問題。
2、相信你寫批處理以前應該手工輸入exp命令成功備份過。
3、把 exp那句輸出到文本或批處理文件如下,用記事本打開backdb.txt看看與你成功備份的手輸命令有和不同,然後做相應修改即可。
exp改為:
echoexp%USER%/%PASSWORD%@%DATABASE%full=yfile=%DATADIR%\%BACKUPDATE%.DMPlog=%LOGDIR%\%BACKUPDATE%.log>backdb.txt
E. 怎麼用PL/sql備份oracle資料庫
1、 准備資料庫創建腳本
create tablespace whc_tbs datafile 'E:\oracle\oradata\whcdb\whc.dbf' size 100M;
--DROP TABLESPACE whc_tbs INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
create user whc identified by whc default tablespace whc_tbs;
grant connect,resource to whc;
grant dba to whc;
--Revoke dba from whc;
其中--的注釋語句是刪除命名空間和移除DBA用戶的許可權的。
以上這些腳本是為了我們在新建一個表空間和Oracle資料庫的時候使用的。
其中E:\oracle\oradata\whcdb\whc.dbf路徑是我們要存放資料庫數據的位置,因此要保證該路徑有足夠的空間和足夠的訪問許可權,否則會失敗的。
2、 導出資料庫對象
在PL/SQL Developer的菜單Tools=>Export User Objects中出來一個對話框界面,然後框選要到處的Oracle 資料庫對象,包括表,序列,存儲過程,視圖,函數等等,並指定導出的文件名稱,如下操作。
3)導出表數據
導出表結構和其他對象後,我們下一步就是把資料庫的表數據進行導出,PL/SQL Developer工具支持導出數據到PL/SQL資料庫陪空腳本中,如下所示。這樣導出的腳本,我們可以在PL/SQL Developer工具導入或者自己通過Sql plus 工具進行導入。
至此,我們就已經宴亂塵完成了三種腳本了,包括創建資料庫空間和資料庫腳本、創建Oracle資料庫對象(表、存儲過程、視圖、序列等)、創建導入數據的腳本,這樣三種合一,就是一個完整的資料庫了。最後一步就是我們如何導入晌禪資料庫對象和數據的問題了。
4)導入資料庫對象及數據
導入資料庫對象和數據的操作一樣,都可以通過Import Tables操作實現,我們指定剛才上面兩步創建的資料庫腳本,執行即可再新的環境中創建資料庫對象和資料庫數據了。如下所示。
完成上面幾個步驟,我們在新的資料庫環境中,就具備了所有的東西了,順利完成整個Oracle資料庫對象及數據的遷移工作。
以上值得注意的是,我們導出Oracle對象和數據的時候,默認還是原來Oracle資料庫的表空間和資料庫用戶名稱的,如果我們想要在新的資料庫服務
器中指定不同的表空間和資料庫用戶對象,那麼我們就需要替換生成的sql腳本,並在第一步指定合理的表空間和資料庫用戶。
如果是Linux平台下的資料庫伺服器,第一步操作也是差不多的,就是指定表空間的路徑名稍微不同,其他操作並無差異。
F. oracle中怎麼設置資料庫自動備份
Oracle自動備份的三種方法:x0dx0aOracle自動備份資料庫不外乎以下三種方式:x0dx0aWINDOWS下的任務計劃(At命令)x0dx0aUNIX下的Crontab x0dx0a第三方工具如Viritasx0dx0a在以上三種方式中Viritas屬於第三方工具,很多人可能都沒有接觸,主要說一下windows的任務計劃與unix的cronx0dx0a1、生成腳本文件,如backup.rcv 假定文件內容如下:x0dx0a$>cat backup.rcv connect target sys/password rcvcat rman/rman@localname; run{ allocate channel c1 type disk; allocate channel c2 type disk; allocate channel c3 type disk; backup fileaperset 3 format 『/u01/oradata/backup/arch%u_%s_%p』 archivelog all delete input; release channel c1; release channel c2; release channel c3; }x0dx0ax0dx0a2、生成執行文件在windows上生成backup_archive.bat,內容包括rman cmdfile = backup.rcv 在unix下生成 backup_archive.sh,內容包括oracle/ramn/rman cmdfile = backup.rcvx0dx0a3、加入調度在windows中用任務計劃向導即可,或使用at命令。在unix中,在目標機器上編寫一個文件,用以啟動Oracle自動備份進程。假定文件名為ORACLE,文件將放在/var/spool/cron/crontabs目錄下x0dx0a$>cat oracle x0dx0a0 23 * * 0 backup_archive.sh x0dx0a#表示星期天23點對資料庫備份 x0dx0a0 12,18 * * * backup_archive.sh x0dx0a #表示每天12點,18點備份 x0dx0aCrontab文件的每一行由六個域(minutes,hours,day of month,month,day of week,command)組成,域之間用空格或Tab分隔開來。