计算机网络核心数据文件自动备份方法
2015-09-27吴鸿庆常州广播电视台
吴鸿庆 常州广播电视台
计算机网络核心数据文件自动备份方法
吴鸿庆常州广播电视台
随着IT技术和数字化技术的发展,广电业务生产系统大都实现了网络化。为了生产的安全性,必须对系统的核心数据进行备份。本文详细介绍了通过批处理与windows计划任务实现核心数据文件的自动备份方法。
批处理windows计划任务 文件共享和映射 ftp
一、引言
随着IT技术和数字化技术的发展,广电业务生产系统大都实现了网络化,随之而来产生了大量的诸如数据库备份、重要文件之类核心数据进行异地备份,需要系统管理员进行周期性的数据维护。通过编写批处理文件和配置windows技术任务可以实现关键数据的自动备份,提高系统维护的效率和效果。
二、windows平台到windows平台
在windows平台下,通过网络共享,映射相对应的驱动器,即可实现文件的自动备份,具体思路如下:
1.映射源路径和备份路径,并在备份路径建立备份文件夹。如图1。
2.编写批处理文件
del e∶备份 ★.★
copy /y q∶database★.★ e∶备份//将源备份文件(q∶database)复制到目标文件夹内(e∶备份)
将以上代码保存为backup.bat文件,当运行该批处理文件时就能实现文件备份。
3.设置windows计划任务
在windows任务计划中添加新的计划任务,并进行配置,就可以实现自动执行backup.bat批处理文件实现自动备份。如图2。
三、unix平台到windows平台
在unix平台下的数据文件,通常情况下无法采用共享和映射盘符。在这种情况下,一般采用ftp的方式进行数据交换。具体思路如下:
1.unix平台配置ftp服务。具体的配置方法本文不详细介绍,unix平台中有相关的软件提供ftp服务。
2.在windwos平台的服务器上建立备份文件夹
3.编写批处理文件
echo open 172.16.21.10>ftp.txt//连接ip地址的ftp服务器
echo oracle>>ftp.txt//将ftpuser写入ftp.txt,oracle是ftp的用户名
echo oracle123>>ftp.txt//oracle123是ftp的登录密码
echo binary>>ftp.txt//表示进入二进制模式
echo prompt>>ftp.txt// prompt表示免应答
echo cd homeackup>>ftp.txt//unix平台ftp源目标路径
echo lcd e∶ackup>>ftp.txt//windows平台备份路径
echo mget ★>>ftp.txt//下载文件
echo bye>>ftp.txt
ftp -n -s∶" ftp.txt"//执行ftp.txt中保存的命令
del ftp.txt
将以上代码保存为backup.bat文件,当windows服务器运行该批处理文件时就能实现保存ftp服务中的备份文件。
4.设置windows计划任务
配置方法相同。
四、windows平台到unix平台
该备份方式与unix平台到windows平台的思路相近,将脚本在windows平台上运行,在unix平台设置备份ftp路径,只需要将脚本相应的修改。具体脚本如下:
echo open 172.16.21.10>ftp.txt//连接ip地址的ftp服务器
echo oracle>>ftp.txt//将ftpuser写入ftp.txt,oracle是ftp的用户名
echo oracle123>>ftp.txt//oracle123是ftp的登录密码
echo binary>>ftp.txt//表示进入二进制模式
echo prompt>>ftp.txt// prompt表示免应答
echo cd homeackup>>ftp.txt//windows源目标路径
echo lcd e∶ackup>>ftp.txt//unix平台ftp备份路径
echo mput ★>>ftp.txt//推送备份文件
echo bye>>ftp.txt
ftp -n -s∶"ftp.txt"//执行ftp.txt中保存的
命令
del ftp.txt
五、unix平台到unix平台
通过与两台unix平台服务器相连的windows服务器,先通过ftp下载到本机,再上传到目标服务器。
echo open 172.16.21.10>ftp.txt
echo oracle>>ftp.txt
echo oracle123>>ftp.txt
echo binary>>ftp.txt
echo prompt>>ftp.txt
echo cd homeackup>>ftp.txt
echo lcd e∶ackup>>ftp.txt
echo mget ★>>ftp.txt
echo bye>>ftp.txt
ftp -n -s∶"ftp.txt"
del ftp.txt//下载备份文件到本机
echo open 172.16.21.19>ftp.txt
echo oracle>>ftp.txt
echo oracle123>>ftp.txt
echo binary>>ftp.txt
echo prompt>>ftp.txt
echo cd homeackup>>ftp.txt t
echo lcd e∶ackup>>ftp.txt
echo mput ★>>ftp.txt
echo bye>>ftp.txt
ftp -n -s∶"ftp.txt"
del ftp.txt//上传备份文件到目标服务
六、扩展应用
批处理命令的功能十分强大,可以对备份的脚本进行扩展,增加备份的智能程度和实用性。
1.保留最近的多次备份
在网络系统维护的应用中,常常需要保留最近的多次备份,在设计思路上可以建立多个备份文件夹,将不同时间的备份文件按照备份时间的先后放入相应的文件夹内,达到多份文件备份的目的。如图3。
del e∶备份 hird★.★//删掉最早的备份文件
move /y e∶备份second★.★ e∶备份 hird //移动相关的文件
move /y e∶备份first★.★ e∶备份second
copy /y q∶database★.★ e∶备份first//复制备份文件,保留最新的三份,并删除之前的备份。
2.根据文件名筛选备份文件
批处理命令中,通过加入通配符和字符串变量,对文件名进行筛选,实现备份部分的文件。
实例:以日期来筛选文件
del e∶备份 ★.★
set dd=%date%
set dd=★%dd∶~0,4%%dd∶~5,2%%dd∶~8,2%★.★//提取当天日期变量,最终的格式是★yyyymmdd★.★
copy /y q∶database\%dd% e∶备份//将源路径内文件名中包含当天日期的文件进行备份
3.用forfiles语句删除过期的备份文件(仅仅支持windows2003及以上)
实例1、删除e∶备份文件夹中3天前修改的文件
forfiles /p "e∶备份 " /d -3 /c "cmd /c del /f @path"
实例2、复制q∶ackup 文件夹内3天内修改的文件到e∶备份
forfiles /p "q∶ackup" /d 3 /c "cmd /c copy @path e∶备份"
forfiles还有一些参数可以进行配置,这里就不详细展开说明。
七、总结
通过批处理文件,编写简单的脚本,与windows计划任务相结合,即可实现文件异地自动备份,操作简单快捷,实现网络核心数据文件的自动备份,减少数据维护的难度和强度,增加网络维护的效率和效果,具有很强的实用推广价值。