當前位置:首頁 » 網頁前端 » 怎麼關掉資料庫自動備份腳本
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

怎麼關掉資料庫自動備份腳本

發布時間: 2023-04-18 01:23:36

A. oracle資料庫自動備份系統

Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。下面我為大家分享一下oracle資料庫自動備份系統的 方法 ,有需要的可以參考一下!

oracle資料庫自動備份系統

實現過程:

1. 建立文件 backup.bat (自定義文件名.bat)

@echo off

REM ###########################################################

REM # Windows Server 2003下Oracle資料庫自動備份批處理腳本

REM ###########################################################

REM 取當前系統時間,可能因 操作系統 不同而取值不一樣

set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2%

set CURMON=%date:~0,4%%date:~5,2%

set CURTIME=%time:~0,2%

REM 小時數如果小於10,則在前面補0

if "%CURTIME%"==" 0" set CURTIME=00

if "%CURTIME%"==" 1" set CURTIME=01

if "%CURTIME%"==" 2" set CURTIME=02

if "%CURTIME%"==" 3" set CURTIME=03

if "%CURTIME%"==" 4" set CURTIME=04

if "%CURTIME%"==" 5" set CURTIME=05

if "%CURTIME%"==" 6" set CURTIME=06

if "%CURTIME%"==" 7" set CURTIME=07

if "%CURTIME%"==" 8" set CURTIME=08

if "%CURTIME%"==" 9" set CURTIME=09

set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%

REM 設置所有者、用戶名和密碼

set OWNER=orcl

set USER=bktcgl

set PASSWORD=bktcgl

REM 創建備份用目錄,目錄結構為oraclebak/YYYYMMDD/

if not exist "oraclebak" mkdir oraclebak

cd oraclebak

if not exist "%CURMON%" mkdir %CURMON%

set FILENAME=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%.DMP

set EXPLOG=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%_log.log

REM 調用ORACLE的exp命令導出用戶數據

exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME% log=%EXPLOG% owner=%USER% grants=n

exit

註:

1.bat文件可雙擊或直接在命令行執行,檢查正確與否

2.檢查時可注釋掉exit

3.以上文件實現按月份創建文件夾,按時間生成備份文件

2.建立windows任務

步驟:

開始 -> 所有程序 -> 附件 -> 系統工具 -> 任務計劃程序 -> 操作 -> 創建基本任務

-> 任務名輸入"oracle_backup"(自定義任務名),執行這個任務選擇每天,下一步

-> 起始時間下午12:00,起始日期2012-7-11,下一步 ->(啟動程序)下一步

->在 瀏覽 中查找剛剛寫好的 backup.bat 文件 >下一步 > 完成

註:

1.在任務計劃欄目下新增一個名為"oracle_backup"的任務計劃,表明已經配置完畢。

2.不同系統的任務計劃略有不同,但基本換湯不換葯,不做一一例舉

問題:系統警告"已創建新任務,但可能不能運行,因為無法設置賬戶信息。指定的錯誤是:Ox80041315:任務計劃程序服務沒有運行"

原因:電腦的任務計劃程序服務沒有啟動起來。

解決:開始 > 所有程序 > 管理工具 > 服務,找到"Task Scheler"服務,發現啟動類型為"已禁用",

右鍵單擊更改為"自動",並把它啟動起來,然後重新添加一次任務計劃就可以了。

3.簡單解釋

1. bat:是dos下的批處理文件。批處理文件是無格式的文本文件,它包含一條或多條命令。在命令提示下鍵入批處理文件的名稱,或者雙擊該批處理文件,系統就會調用 Cmd.exe按照該文件中各個命令出現的順序來逐個運行它們。

2. Echo 命令:打開回顯或關閉請求回顯功能,或顯示消息。

3. @ 命令:表示不顯示@後面的命令

4. Rem 命令:注釋命令

5. If命令:if表示將判斷是否符合規定的條件,從而決定執行不同的命令。

6. exit :退出命令行

7. GRANTS: 是許可權的意思,在你導出的目標資料庫中可能會有一些表的如select 許可權等賦給了別的用戶。

【GRANTS=Y】導出的時候將這些許可權導出,導入的時候將這些許可權導入。

【GRANTS=N】許可權不被導入。

B. 請教linux定時執行資料庫備份腳本的問題

Oracle自動備份資料庫不外乎以下三種方式WINDOWS下的任務計劃(At命令)
UNIX下的Crontab
第三方工具如Viritas
在以上三種方式中Viritas屬於第三方工具,很多人可能都沒有接觸,主要說一下windows的任務計劃與unix的cron
1、生成腳本文件,如backup.rcv 假定文件內容如下:
$>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; }

2、生成執行文件在windows上生成backup_archive.bat,內容包括rman cmdfile = backup.rcv 在unix下生成 backup_archive.sh,內容包括oracle/ramn/rman cmdfile = backup.rcv
3、加入調度在windows中用任務計劃向導即可,或使用at命令。在unix中,在目標機器上編寫一個文件,用以啟動Oracle自動備份進程。假定文件名為ORACLE,文件將放在/var/spool/cron/crontabs目錄下
$>cat oracle
0 23 * * 0 backup_archive.sh
#表示星期天23點對資料庫備份
0 12,18 * * * backup_archive.sh
#表示每天12點,18點備份
Crontab文件的每一行由六個域(minutes,hours,day of month,month,day of week,command)組成,域之間用空格或Tab分隔開來

C. sql 資料庫自動備份

企業管理器里
->在所要進行備份的資料庫上
右鍵
->所有任務
->維護計劃
->點四次下一步
->
就是備份了

說明:這個頁面上你可以點更改來
詳細的配置如"每周-~周五00:00自動備份",及路徑設置等。
--------------------------------------------
問題補充:強調一下,備份的文件名是「資料庫名+備份日期」,每次更新的,否則會覆蓋原來的備份,就沒有意義了!
提問者:漢之尊
-
經理
五級
--------------------------------------------
針對你的這種做法那你嘗試用存儲過程吧,靈活、可以根據具體需要定製:
在要備份的數據上建立以下存儲過程:
CREATE
PROCEDURE
[dbo].[過程名]
AS
declare
@filename
nvarchar(100),--文件名
@NowDay
int
--設置時間
set
@filename='D:\data'+cast(Day(GetDate())
as
varchar(2))+'.dat'
--文件路徑及文件名
Set
@NowDay=Day(GetDate())
if
(@NowDay>=20)
or
(@NowDay<=10)
--這個月的20到下個月的10要備份
begin
print
@filename
BACKUP
DATABASE
[資料庫名()你也可以設參數]
TO
DISK
=
@filename
WITH
INIT
,
NOUNLOAD
,
NAME
=
N'XX數據備份',
NOSKIP
,
STATS
=
10,
NOFORMAT
end
自己推敲一下,相信你會實現的!

D. 菜鳥求助:linux下oracle資料庫自動備份腳本,腳本可實現資料庫自動備份功能,並刪除三天前的備份

這個好辦。 cp 你的資料庫`date +'%y%m%d'` 指定目錄 這個是以年月日來命名備份 刪除的命令是
rm -f 你的資料庫名字`date -d "3 days ago" +'%y%m%d'` 這個是刪除匹配你資料庫的備份名日期前3天的備份文件 他會按照日期-3天匹配3天前的日期來刪除備份的

E. mysql資料庫備份腳本

修茄游改好 「需要根據實際情況修改」 的幾個參數後,把腳本放到crontab中定時執行備份。備份過程中會刪除顫斗銷超過銷喊最大保留期的備份文件。

F. SQL2000自動備份腳本,裸求大神指點

為什麼要腳本?直接用企業管理器,作業管理中的數據維護計劃向導就行了(請注意向導最後一步是指定資料庫備份計劃)。當然你也可以通過查看和編輯步驟來將腳本復制出來。
我給你一個導出的資料庫自動備份作業腳本,發到了你的私信里,你可以改一下使用。
不過最好還是自已生成一個,更為貼切。

G. windows自動備份mysql資料庫腳本

路徑有空格的話
需要添加引號
@echo off
set "ymd=%date:~,4%%date:~5,2%%date:~8,2%"
c:\"program files"\mysql\"mysql server 5.1"\bin\mysqlmp.exe --opt -u root --password=root welfare > d:\data_back\welfare_%ymd%.sql
@echo on

H. windows環境下oracle資料庫的自動備份腳本怎麼用

需要寫個bat腳本,然後在windows計劃任務里調用此腳本可實燃睜現每天自動備份。工具:Oracle10g步驟:1、在某個盤符某個路徑(以C盤data目錄為例),創建oraclebackup.txt文件,內容如下:@echooffecho刪除10天前的備分文件和日誌forfiles/p"c:/data/"/m*.dmp/d-10/c"cmd/cdel@path"forfiles/p"c:/data/"/m*.log/d-10/c"cmd/cdel@path"echo正在備份Oracle資料庫,請稍等……exp用戶名/密碼@實例名file=c:/data/mdb%date:~0,4%%date:~5,2%%date:~8,2%.dmplog=c:/data//mdb%date:~0,4%%date:~5,2%%date:~8,2%.logfull=ybuffer=65535echo任務完成!2、保存上述文件後,將文件名的後綴改成.bat3、進入windows的控制面板,打開計劃與任務,新建任務,點擊瀏覽,選擇剛才隱游新建的c盤data目錄下的oraclebackup.bat文件。接著選擇每天晚上22:00點執行,再輸入本機的administrator密碼即可。注意事項:exp語句中的用戶名密碼等內容,需灶段銷要根據實際需要來填寫。

I. linux伺服器自動備份mysql資料庫的腳本!

你運氣好,我這個也剛做好,發你一份把 。自動運行在window下的任務計劃中添加,如需要Linux下的請H! 我··
@echo off
set sqlserver="aboa" \*aboa 為你 要備份的資料庫名字
set dn=7 7天以前的,可自己設置
echo.
echo 在D盤自動建立文件夾 back
echo.
if exist D:\back (
echo "已經存在文件夾"
) else (
md D:\back 創建文件夾back
)
cd/d "D:\back"
echo Wscript.echo dateadd^("d",-%dn%,date^)>rd.vbs
for /f "tokens=1-3 delims=-" %%a in ('cscript//nologo rd.vbs')do (
set yy=%%a&set mm=00%%b&set "dd=00%%c")
set ymd=%yy%-%mm:~-2%-%dd:~-2%&del rd.vbs
set n=0
for /f "delims=" %%i in ('dir/b/a-d *.sql')do (
if "%%~ti" lss "%ymd%9" (
cls&echo/&echo 正在刪除 %%i
set/a n+=1
del "%%i"))
cls&echo/&echo/&echo 檢查刪除7天以前的備份文件完畢,共刪除 %n% 個文件.
echo _______________________________
echo.
echo 今天是 %date%
echo 時間是 %time%
echo _______________________________
echo.
echo MySQL 資料庫備份
echo 正在進行數據備份中,請耐心等待.....
echo.
echo _______________________________

mysqlmp --port 3306 -h localhost -u root -proot --default-character-set=utf8 -R %sqlserver% > d:\back\%date:~0,4%-%date:~5,2%-%date:~8,2%.sql 備份的資料庫文件名為當天的日期

echo.
pause

J. MSsql每天自動備份資料庫並每天自動清除log的腳本

1、每日自動備份
打開企業管理器,進入「管理」-「資料庫維護計劃」,在右側窗口點擊右鍵,選擇「新建維護計劃」,啟動「資料庫維護計劃向導」;點擊「下一步」選擇需要維護的資料庫,維護特性資料庫時,選擇最後一個單選框並勾選需要維護的資料庫名稱;「下一步」選擇更新數據優化信息、「下一步」檢查資料庫完整性、「下一步」指定資料庫備份計劃、「下一步」指定備份存放位置、「下一步」指定事務日誌備份計劃、「下一步」指定報表,「下一步」指定歷史紀錄維護,最後設定維護作業名稱;通常來說,如果只需要備份資料庫文件,則只需要指定備份計劃以及存放位置即可,其他項目不做改動。
在指定備份計劃時候,由於需要每日備份,因此要更改調度。點擊「更改」編輯調度。發生頻率選擇每天;每日頻率選擇作業開始時間,最好選擇資料庫訪問量小時進行,多為半夜時間,可根據流量圖確定具體時間;持續時間通常不用做改動,開始日期為編輯日期,無結束日期。
編輯好上述維護計劃後,還要注意下
sql
server代理服務是否啟動了,因為每日調度維護計劃是要啟動這個服務才能執行的。如果該服務沒有啟動,需要手動啟動一下,這是可以在其子項「作業」中看到剛剛添加過的資料庫維護計劃。
2、定期自動清理資料庫日誌文件
資料庫日誌文件是隨著時間增長而增長的,如果長時間不清理,文件會變得特別大,因此需要定期清空,但是日至文件是恢復資料庫的重要依據,不用日誌文件也是不明智的。手工清除單個資料庫的還好說,但資料庫多了,或者臨時沒有來得及清理,可能硬碟空間就會占滿了,影響訪問。因此設置自動清理資料庫日誌文件還是比較實用的。
手動清理方法:右鍵單擊需要清理的資料庫,選擇「屬性」,在「選項」卡上,把故障還原模型設定為簡單,確定後關閉;再右鍵單擊該資料庫,「所有任務」-「收縮資料庫」,確認後即可清除日誌文件,最後記得重新選擇「屬性」,將故障還原模型設置為完全。
自動清理方法:同樣是利用sql
server代理服務,執行自動作業。
打開企業管理器,進入「管理」-「sql
server代理服務」-「作業」,在右側窗口點擊右鍵,選擇「新建作業」。「常規」選項卡中,填寫作業名稱,具體描述,注意所有者最好還是用sa或者默認的管理帳號。
轉到「步驟」選項卡,新建作業步驟,填寫步驟名稱,類型為腳本,資料庫為需要清理日誌的資料庫,在下邊命令中填寫以下命令:
DUMP
TRANSACTION
資料庫名稱
WITH
NO_LOG
DBCC
SHRINKFILE(資料庫日誌文件名,1)
上邊的資料庫名稱填寫需要維護的資料庫名稱,資料庫日誌文件名填寫其對應的日誌文件名,注意,不是資源管理器里看到的帶後綴名的那個名字,而是企業管理器里,資料庫屬性里日誌選項卡中日誌的名字(通常也只是差一個後綴名……),確定後添加一個作業步驟。
如果需要維護多個資料庫,用上述方法重復添加作業步驟,注意每個步驟成功或失敗後的動作即可,最後選擇一下開始的步驟。
在「調度」選項卡中,類似備份的維護計劃,填寫調度周期,即定期清理的周期,不再細述。如果需要,可以在最後的「通知」選項卡上設置作業完成後的通知項,需要設置操作員,以及設置相應的服務,這里也不具體說明了,通常不用……