kxbin
成功留给有准备的人
posts - 10,  comments - 35,  trackbacks - 0
@echo off 
rem  ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
rem  ┣----------------------提示:-----------------------------------┫
rem  ┣--该批处理为数据库备份操作文件.-------------------------------┫
rem  ┣--由于sqlserver自带备份策略,无需使用批处理.-------------------┫
rem  ┣--所以对应数据库类型仅包涵oracle,mysql两种.-------------------┫
rem  ┣--存放目录格式如d:\backup\crmnew------------------------------┫
rem  ┣--盘符下一级为总目录的文件夹名 例如backup---------------------┫
rem  ┣--二级为使用该数据库的项目名称 例如crmnew---------------------┫
rem  ┣--执行环境为windows server 2003-------------------------------┫
rem  ┣--编写者:CWCA-研发部-刘洋-2011-7-25---------------------------┫
rem  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
rem ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
rem   ----------------------初始设置项----------------------------
rem   设置项目库备份文件存放根目录-脚本自动创建
set   bak_dir=d:\databak
rem   设置项目名称
set   project_name=cwcanew
rem   选择备份数据所使用的压缩软件
set   compressFile=c:\uncompress\WinRAR\Rar.exe
rem   设置数据库的类型,仅支持oracle和mysql
set   db_type=oracle
rem   设置登陆目的数据库的标识,oracle为sid,mysql为库名
set   db_name=oracle
rem   设置登陆目的数据库的用户名
set   db_user=****
rem   设置登陆目的数据库的用户密码
set   db_pwd=****
rem   设置备份周期,1为按天备份,7为按周备份
set   bak_cycle=1
rem   设置每个备份文件的保留天数,为0则表示不删除历史文件
set   keep_days=0
rem ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
rem ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
rem   ----------------------可选设置项----------------------------
rem   获取当天为星期几
set   pweek=%date:~-1%
rem   设置单个备份文件名-此处按"项目名称_日期"命名-例:crmnew_20110101 -建议不要更改
set   filename=%project_name%_%Date:~0,4%年%Date:~5,2%月%Date:~8,2%日
rem ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
rem ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
rem   ----------------------------------------执行代码区域----------------------------------------
if not exist %bak_dir%\%project_name% mkdir %bak_dir%\%project_name%
set   bakfile=%bak_dir%\%project_name%\%filename%
set   filesuffix=
      if %db_type% equ oracle set filesuffix=dmp
      if %db_type% equ mysql set filesuffix=sql
      if %bak_cycle% equ 7 (
       if %pweek% equ 日 goto backup
       goto end
      ) 
      if %bak_cycle% equ 1 goto backup
      goto end
      :backup
      if %db_type% equ oracle goto backup_oracle
      if %db_type% equ mysql goto backup_mysql
      goto end
      :backup_oracle
      exp %db_user%/%db_pwd%@%db_name% file=%bakfile%.%filesuffix%
      goto compress
      :backup_mysql
      mysqldump -u%db_user% -p%db_pwd% %db_name% > %bakfile%.%filesuffix%
      goto compress
      :compress
      %compressFile% a %bakfile%.rar %bakfile%.%filesuffix%
      goto delete_source
      :delete_source
      del %bakfile%.%filesuffix%
      goto delete_history
      :delete_history
      if %keep_days% neq 0 forfiles /p %bak_dir%\%project_name%\ /d -%keep_days% /c "cmd /c echo deleting @file ... && del /f @path"
      goto end
      :end
set   bak_dir=
set   project_name=
set   compressFile=
set   db_type=
set   db_name=
set   db_user=
set   db_pwd=
set   bak_cycle=
set   keep_days=
set   pweek=
set   filename=
set   bakfile=
set   filesuffix=
rem ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
pause
posted on 2011-10-10 09:46 kxbin 阅读(640) 评论(0)  编辑  收藏 所属分类: ORACLEMYSQL

只有注册用户登录后才能发表评论。


网站导航:
 
你恨一个人是因为你爱他;你喜欢一个人,是因为他身上有你没有的;你讨厌一个人是因为他身上有你有的东西;你经常在别人面前批评某人,其实潜意识中是想接近他。

<2024年5月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用链接

留言簿(5)

随笔档案

文章分类

文章档案

相册

收藏夹

J2EE

java技术网站

Linux

平时常去的网站

数据库

电影网站

网站设计

搜索

  •  

最新评论

阅读排行榜

评论排行榜