为了保障服务器中数据的可恢复性,采用异地备份数据库方案。异地备份数据分为异地备份文件数据与异地备份数据库数据二种。其中异地备份文件数据是为了备份网站中用户上传的文件而设计的。而异地备份数据库数据是将数据库中数据备份文件上传到异地服务器。
如果省事可以使用一些软件例如 绿环FTP数据备份、rsync都可以。
一、实施过程及原理为:
1. 需安装WinRAR软件,用于将多个待备份文件压缩成一个压缩文件。
2. 书写备份脚步:
目录定位到WinRAR软件安装路径下
cd c:\program files\winrar
执行rar.exe程序
rar a -r -y c:\c.rar c:\c\a c:\c\b
连接远程ftp服务器,其中要书写ftp://ftp.txt/文件
ftp -s:c:\ftp.txt 192.168.0.1
可删除本地备份文件
del /f /q c:\c.rar
目录重新定位
cd\
完整代码如下(back.bat):
复制代码 代码如下:
cd c:\program files\winrar
rar a -r -y c:\c.rar c:\c\a c:\c\b
ftp -s:c:\ftp.txt 192.168.0.1
del /f /q c:\c.rar
cd\
3. 书写远程ftp连接配置文件
用户名
密码
cd 路径
Put 本地文件路径及文件名 远程文件路径及文件名
Bye为退出
完整代码如下(ftp.txt):
admin
Heroic
put c:\c.rar c.rar
bye
4. 通过windows自带的“任务计划”功能定时运行bat文件。(通过“开始”->“附近”->“系统工具”->“任务计划”
5. 备份oracle数据库命令为:
exp userid/pwd@servicename file = "backupfilepath" owner = user
注意userid为系统管理员,backupfilepath为文件保存路径(文件后缀为dmp) ,user是针对那个用户进行备份,如果不写该参数,则默认针对userid用户进行备份
例如:
exp user/pwd@servername file=d:"backup"oracle"oracle%date:~0,10%.dmp owner=system log=d:"backup"oracle"oracle%date:~0,10%.log
(其中%date:~0,10% 为取当前系统时间。0为开始位置,10为结束位置)
复制代码 代码如下:
set files=c:\backup\%date:~0,10%.rar
set dbfilesdmp=c:\backup\%date:~0,10%db.dmp
set userdb="jbpmdemo"
set pwddb="jbpmdemo"
set domain="master.jhserver"
set filespath=c:\c\a c:\c\b
set ftpfile="c:\backup\ftp.txt"
set ftpname=admin
set ftppwd=Heroic
set ftpfiles="%date:~0,10%.rar"
set ftpdbfiles="%date:~0,10%db.rar"
set ftpdomain="192.168.0.1"
set rarpath="c:\program files\winrar"
@echo 开始备份数据库
exp %userdb%/%pwddb%@%domain% file="%dbfilesdmp%"
@echo 开始压缩文件
c:
cd c:\program files\winrar
rar a -r -y %files% %filespath% %dbfilesdmp%
@echo 写入文件ftp
@echo %ftpname%>%ftpfile%
@echo %ftppwd%%ftpfile%
@echo put %files% %ftpfiles%%ftpfile%
@echo bye%ftpfile%
@echo 上传%files%.rar文件
ftp -s:%ftpfile% 192.168.0.1
del /f /q %files%