简单命令通过ftp异地备份sql数据库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种简单的数据异地备份方法,无备份报告,容错功能。求完善!
一、备份环境:
(1)、假设远端FTP服务器已经搭建完毕,地址为:192.168.0.22登录用户名为:Bak密码:Bak!@#。
(2)、需要备份的数据库服务器环境为:windows2000+sql2000,sql数据库位于D:\DATA目录,自动备份的数据库逻辑名称为:2010,自动备份时间为:每天00:00:00,备份方式为完全备份,备份数据库到目录E:\BAK。sql备份数据库后生成的名称(举例):2010_db_201011100000.BAK其中201011100000为备份日期+时间,此为2010-11-11日零点零时零分备份。
(3)、将sql数据库完全备份文件通过winrar压缩到E:\RAR,文件名为备份日期.rar,然后通过ftp命令将此rar文件上传的ftp服务器。
二、使用工具ftp.exe、winrar程序;
三、使用Winrar备份sql自身备份后的文件:
set Y=
set M=
set D=
set FileName=
set Y=%date:~4,4%
set M=%date:~9,2%
set D=%date:~12,2%
set FileName=E:\BAK\2010_db_%Y%%M%%D%0000.BAK
"C:\Program\Files\WinRAR\rar.exe"a-PbakPASS!@#-M5-agyyyymmdd-W E:\RAR\ %FileName%
说明:
set Y=
set M=
set D=
此三个语句用来配置环境变量Y、M、D为空,后面要用这三个变量取得系统当前日期的短格式即类似2011111这样的日期格式,因使用系统便令%date%取得的日期格式为:2011-11-12这样的格式,与sql数据库自动备份后的文件名有差异。
set Y=%date:~4,4%
set M=%date:~9,2%
set D=%date:~12,2%
这三个语句用来取得日期的年月日,windows server2000日期格式为:星期五2010-11-11 %date:~4,4%语句的意思就是:取得变量date结果,即星期五2010-11-11第四位开始一直取四位,即取得年2010,set M=%date:~9,2%从第九位开始取二位,得到月,以此类推。
注意:windows server2000与windows server2003取的得位数不同!如果是2003系统需要更改下。不明白为什么!此处取得年月日有更简单的语句,自己不会……
set FileName=E:\BAK\2010_db_%Y%%M%%D%0000.BAK
配合刚才取得的年月日配置要压缩的文件名给变量FileName。
"C:\Program\Files\WinRAR\rar.exe"a-PbakPASS!@#-M5-agyyyymmdd-W E:\RAR\ %FileName%
使用安装C分区的winrar程序压缩sql自身备份后的文件到E:\RAR,a参数指定是添加压缩文件,-P指定压缩密码,压缩密码为bakPASS!@#,-M5指定最优压缩,就是压缩等级。-ag指定压缩后的文件名以日期为文件名,E:\RAR为压缩后文件存放的位置。
使用ftp命令上传压缩后的文件:
ftp-s:e:\cmd.txt192.168.0.22
quit
-s为读取e:\cmd.txt文件内的ftp用命名和密码,还有登录后要执行的命令。
e:\cmd.txt内容
Bak
Bak!@#
Send E:\rar\*.rar
Quit