Windows 下通过计划任务执行数据库备份脚本

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

在Linux下可以通过crontab来设置定时执行数据库的备份脚本,同样Windows下可以通过设定任务计划程序来设定要执行的自动备份脚本。具体的设定过程不再详述,下面分别为Oracle和MySQL的备份脚本:

1.Windows 下Oracle的备份脚本:
@echo off
echo  数据库开始进行备份...
cd e:\ORACLE\BIN
set filename=%e:\backup_bat\local%date:~0,10%
exp giftsdev/giftsdev@local file=%filename%.dmp log=%filename%.log owner=giftsdev compress=y grants=y indexes=y constraints=y
jar cvf %filename%.jar %filename%.*
del %filename%.dmp
del %filename%.log
copy %filename%.jar e:\exp_data\local%date:~0,10%.jar
del %filename%.jar
echo  数据库备份完成
echo.& pause
 
 
2.Windows 下MySQL的备份脚本
echo  数据库开始备份...
 
set dirname=bak%date:~0,4%%date:~5,2%
 
set filename=tdoa-%nowdate%.rar
 
mysqldump -uroot -pmyoa888 td_oa > td_oa.sql
::E:\MYOA\mysql\bin\mysqldump.exe -uroot -pmyoa888 td_oa > td_oa.sql
 
rar a %filename% td_oa.sql
::%windir%\System32\WinRAR.exe a %filename% td_oa.sql
move %filename% F:\OA_BACKUP\%dirname%
del td_oa.sql
 
echo  数据库备份完成!
echo.& pause
 
备份过程中遇到的问题:
(1)     创建文件夹失败。在windows 2008 下,默认的日期格式为类似 2010/12/27 的样式,在根据日期创建文件夹或者文件时由于windows 不允许有“/ ”特殊字符的存在,故报创建错误。这里使用“set nowdate=%date:~0,4%%date:~5,2%%date:~8,2% ”分别取得年、月、日拼凑的形式变相实现。
(2)     环境变量问题。在写完上述脚本后,双击bat 文件可以无误顺利的执行,但是扔到计划任务执行时就总是报错,具体为rar 和mysqldump 命令不存在。我怀疑是环境变量的设置没有生效,由于在服务器上不能轻易的执行服务器的重启,这里用rar 和mysqldump 的完整路径来代替(代码中的红色字体)
 
 
附:常见dos命令
1.dos 下的复制和移动
c 盘下的a.txt 文件复制或移动到d
命令为:
复制copy c:\a.txt d:\a.txt
移动move c:\a.txt d:\a.txt
 
2.dos 下的条件判断
if not exist F:\OA_BACKUP\%dirname% md F:\OA_BACKUP\%dirname%
(判断目录是否存在)
 
3.dos 下的目录创建和删除
MD—— 建立子目录
RD—— 删除子目录
 
4.  关于%DATE:~4,10% 的格式
这个命令的意思就是在DATE 的输出中,取4-10 中间的字符。
对于不同的机器,可能有不同的时间格式,这个可以在控制面板里设置。
可以通过ECHO 命令察看当前设置,如:
C:>echo %DATE%
星期一 2002-10-28
当然,我们可以同样取到星期的值:
C:>echo %DATE:~0,3%
星期一
当然也可以从不同方向来:
C:>echo %DATE:~-10%
2002-10-28
C:>echo %DATE:~0,-10%
星期一
 
5. rar 命令解压缩文件前要进行的操作:
1 〉将winRAR.exe 文件拷贝到system32 文件夹下;
2 〉将winRAR 的安装路径放到环境变量中
rar 打包文件:
rar a %filename%.rar %filename%.*
rar 解压缩文件
rar e %filename%.rar
 
6. 用jar 打包解压文件必须在当前系统中装有jre 环境
jar 打包文件:
jar cvf %filename%.jar %filwname%.*
jar 解压缩文件:
jar xvf %filename%.jar
 

本文转自 yubowei 51CTO博客,原文链接:http://blog.51cto.com/samyubw/465599

相关文章
|
3月前
|
数据库 数据安全/隐私保护 Python
写一个定时备份数据库的脚本,且只保留最近3天
写一个定时备份数据库的脚本,且只保留最近3天
67 3
|
3月前
|
关系型数据库 MySQL 数据库
Windows安装MySQL数据库
本文介绍如何在Windows安装MySQL数据库。
64 0
|
13天前
|
Windows
【Windows】 手写脚本更快编辑hosts文件
【Windows】 手写脚本更快编辑hosts文件
14 0
|
1月前
|
SQL 编解码 数据库
MyKtv点歌系统前台主要功能实现,内附数据库脚本,可以直接运行
MyKtv点歌系统前台主要功能实现,内附数据库脚本,可以直接运行
14 1
MyKtv点歌系统前台主要功能实现,内附数据库脚本,可以直接运行
|
1月前
|
NoSQL 网络协议 MongoDB
Windows公网远程连接MongoDB数据库【无公网IP】
Windows公网远程连接MongoDB数据库【无公网IP】
|
1月前
|
Java 关系型数据库 MySQL
Java调用shell脚本实现数据库备份功能
本篇文章主要介绍怎样使用Java程序,执行服务器上的数据库备份Shell脚本进行MySQL数据库的备份功能。
|
2月前
|
Java 数据库连接 数据库
Windows7 64位 连接Access数据库“未发现数据源名称并且未指定默认驱动程序“的解决办法
Windows7 64位 连接Access数据库“未发现数据源名称并且未指定默认驱动程序“的解决办法
|
2月前
|
NoSQL 关系型数据库 MySQL
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
不同系统下进行MySQL安装、MongoDB安装、Redis安装【2月更文挑战第5天】
444 5
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
|
3月前
|
存储 JSON NoSQL
【MongoDB】<文档型数据库>Windows&Liunx安装MongoDB(无错完整)
【1月更文挑战第26天】【MongoDB】<文档型数据库>Windows&Liunx安装MongoDB(无错完整)
|
3月前
|
关系型数据库 MySQL Shell
linux shell脚本实现自动备份Mysql数据库脚本
linux shell脚本实现自动备份Mysql数据库脚本
183 3