windows下實現oracle自動備份 bat

2021-06-03 15:11:58 字數 1711 閱讀 2635

@echo off

setlocal enabledelayedexpansion

title %date% %time:~,8% by liaoning sunray software technology

::定義資料庫sid

set sid=sryx254

::定義使用者名稱陣列(各使用者間用空格分隔 例如:user1 user2 user3)

set userarr=user1 user2 user3

set pswdarr=password1 password2 password3

::指定刪除天數

set daysago=7

::指定備份路徑

set filepath=e:\dmp_beifen\

::定義指令碼內部變數

set time_=%time: =0%

set filename=%date:~0,4%%date:~5,2%%date:~8,2%_%time_:~0,2%%time_:~3,2%.dmp

set newdir=%date:~0,10%\

::建立以當天日期命名的資料夾

if not exist %filepath% md %filepath%

if not exist %filepath%%newdir% md %filepath%%newdir%

::匯出資料

set/a n=1

call :sub userarr %userarr%

call :sub pswdarr %pswdarr%

set/a arrlength=nuserarr

:loop

exp !userarr%n%!/!pswdarr%n%!@%sid% file=%filepath%%newdir%!userarr%n%!_%filename%

::echo 測試顯示 !userarr%n%!/!pswdarr%n%!

if %n% lss %arrlength% set/a "n+=1"&goto loop

goto next

:sub

set %1%n%=%2

if not "%3"=="" (set/a n+=1

shift /2&goto sub)

set/a "n%1=n,n=1"&goto :eof

:next

::刪除n天以前的資料

set d=%date:~0,10%

mshta vbscript:createobject("scripting.filesystemobject").opentextfile("temp.txt",2,true).write(formatdatetime(dateadd("d",-%daysago%+1,"%d%"),vbshortdate))(window.close)

for /f "tokens=1 delims= " %%i in (temp.txt) do set t1=%%i

for /f "delims= " %%i in ('dir /ad/b %filepath%') do (

set t2=%%i

set t3=!t2:~0,10!

if !t3! lss !t1! rd /s/q "%filepath%%%i")

del /f temp.txt

注意還要在控制面板中設定短日期、長日期格式為「yyyy-mm-dd」,否則最後面刪除n天前的資料會出現問題(多刪了好幾天的備份檔案)

在Windows作業系統下,解除安裝Oracle 9i

在windows作業系統下,解除安裝oracle 9i 1 停止所有oracle服務 2 刪除登錄檔中的所有關於oracle項 1 在hkey local machine software下,刪除oracle目錄 2 在hkey local machine system controlset001 ...

window下 ORACL解除安裝

用oracle自帶的解除安裝程式不能從根本上解除安裝oracle,從而為下次的安裝留下隱患,那麼怎麼才能完全解除安裝oracle呢?那就是直接登錄檔清除,步驟如下 1 開始 設定 控制面板 管理工具 服務 停止所有oracle服務。2 開始 程式 oracle orahome81 oracle in...

在Windows系統下完全解除安裝Oracle的好方法

在windows系統下完全解除安裝oracle的好方法 怎樣在在windows系統下完全解除安裝oracle資料庫?具體步驟如下 1 以nt的administrator 登陸 2 通過控制面版 服務,停掉所有oracle服務 3 開啟登錄檔 regedit命令 刪除hkey local machin...