>데이터 베이스 >MySQL 튜토리얼 >Windows下的Oracle导出脚本

Windows下的Oracle导出脚本

WBOY
WBOY원래의
2016-06-07 14:53:231271검색

REM File name Daily.bat REM Batch Process Reload DB Backup REM REM Author Frank.Fan REM Modification History Created 2012-05-07 REM Modified REM for /F tokens=1-3 delims=/ %%i in ('date /t') do @set FILENAMEDT=%%i%%j%%k #取系统当前日期:

  REM File name Daily.bat

  REM Batch Process

  Reload DB Backup

  REM

  REM Author Frank.Fan

  REM Modification History

  Created 2012-05-07

  REM Modified

  REM

  for /F "tokens=1-3 delims=/ " %%i in ('date /t') do @set FILENAMEDT=%%i%%j%%k

  #取系统当前日期:年月日(中文格式)、月日年(英文格式)

  for /F "tokens=1,2 delims=: " %%i in ('time /t') do @set FILENAMETM=%%i%%j

  #取系统当前时间:时分

  SET USERNAME=SYSTEM #oracle帐号

  SET USERPASSWD=123456 #oracle密码

  SET SERVICENAME=QEWAY #oracle SID

  SET SCHEMASNAME=ISCOP #oracle SCHEMA帐号

  SET RARTOOL=C:Program FilesWinRAR #设定WINRAR路径(各个机器不同)

  SET DBBACKUPPATH=D:DBBAK #设定被导出的文件路径

  SET DBADIRECTORIES=DBBAK #oracle内设置的Directory目录名

  SET DBBACKUPFILENAME=QEWAY_%FILENAMEDT%-%FILENAMETM%

  goto main

  :main

  ECHO Exporting schemas.......

  expdp %USERNAME%/%USERPASSWD%@%SERVICENAME% DUMPFILE=%DBADIRECTORIES%:%DBBACKUPFILENAME%.dmp schemas=%SCHEMASNAME% LOGFILE=%DBADIRECTORIES%:%DBBACKUPFILENAME%.log

  ECHO Done exporting schemas.

  ECHO =======================================================

  ECHO ...Done export

  if exist %DBBACKUPPATH%%DBBACKUPFILENAME%.RAR del %DBBACKUPPATH%%DBBACKUPFILENAME%.RAR

  "%RARTOOL%winrar.exe" a -ep %DBBACKUPPATH%%DBBACKUPFILENAME%.RAR %DBBACKUPPATH%%DBBACKUPFILENAME%.dmp

  del %DBBACKUPPATH%%DBBACKUPFILENAME%.dmp

  Echo ...Compression complete

  forfiles /p "%DBBACKUPPATH%" /m *.rar -d -30 /c "cmd /c del /f @path"

  #删除30天之前的RAR文件

  REM -----------Send a mail to notification-----------

  start D:DBBAKBatch_notification_Daily.vbs #调用邮件通知VBS文件

  EXIT

  邮件通知VBS文件内容:

  NameSpace = ""

  set Email = CreateObject("CDO.Message")

  Email.From = "XXXX@Exchange.com"

  Email.To = "XXXX@163.com"

  Email.Subject = "Gongxtpt Batch Daily Task"

  Email.Textbody = "Gongxtpt Batch Daily Task was done!! Starting at 00:00AM"

  with Email.Configuration.Fields

  .Item(NameSpace&"sendusing") = 2

  .Item(NameSpace&"smtpserver") = "10.0.0.12"

  .Item(NameSpace&"smtpserverport") = 25

  .Item(NameSpace&"smtpauthenticate") = 0

  .Item(NameSpace&"sendusername") = ""

  .Item(NameSpace&"sendpassword") = ""

  .Update

  end with

  Email.Send

  Set Email=Nothing

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.