bat 备份mysql数据库, 并把备份后的文件发送到指定的FTP和邮箱(windows2003)

首先是  main.bat 文件代码

注意里面的路径

@echo off
 
set path=%path%
 
set d=%date:~8,2%
 
set h=%time:~0,2%
 
set d
if /i %d% LSS 10 (
  set d=0%d:~1,1%
)
set d
 
set h
if /i %h% LSS 10 (
  set h=0%h:~1,1%
)
set h
 
::设置日期为文件名  -------------------------------------
set cdate=%d%_%h%
 
 
if not exist d:\db_backup (
    md d:\db_backup
)
 
D:
 
cd D:\ZkeysSoft\MySql\MySQL Server 5.1\bin\
 
::bakup mysql data  -------------------------------------
mysqldump -uroot -pwindzjp2000 --all-databases > d:\db_backup\mysql_bak.sql
 
::ping /n 10 127.1 >null
 
::to cab file  -------------------------------------
makecab d:\db_backup\mysql_bak.sql d:\db_backup\mysql_bak.cab
 
::ping /n 10 127.1 >null
 
::delete sql file  -------------------------------------
del /F /Q d:\db_backup\mysql_bak.sql
 
 
::send file by Email  -------------------------------------
D:\software\db-mysql-bak\sendmail.vbs
 
::rename file
cd d:\db_backup\
ren mysql_bak.cab  mysql_bak%cdate%.cab
 
::send file by ftp  -------------------------------------
ftp -s:D:\software\db-mysql-bak\ftp-info.txt
 
if not exist d:\db_backup2 (
    md d:\db_backup2
)
 
 
move /Y D:\db_backup\*.* D:\db_backup2\
 
@ping /n 10 127.1 >null
 
 
 
exit

ftp信息代码. 保存文件名为ftp-info.txt

代码行依次为
打开FTP地址

FTP用户名

FTP密码

进入文件夹 db_backup

上传文件

open 180.86.108.5
webmaster@lastidea.net
password
 
cd db_backup
mput d:\db_backup\*.cab /db_backup/
 
bye

发送邮件代码, 请把里面对应的发送和接收邮件的账号改成自己的! 文件名为sendmail.vbs

NameSpace = "http://schemas.microsoft.com/cdo/configuration/"
Set Email = CreateObject("CDO.Message")
Email.From = "feedback@lastidea.net"
Email.To = "feedback@lastidea.net"
Email.Subject = NOw & "CMS数据库备份"
Email.Textbody = "数据库备份文件在附件中。系统自动发送请勿直接恢复。技术支持 zjp@lastidea.net"
Email.AddAttachment "d:\db_backup\mysql_bak.cab"
With Email.Configuration.Fields
    .Item(NameSpace&"sendusing") = 2
    .Item(NameSpace&"smtpserver") = "smtp.exmail.qq.com"
    .Item(NameSpace&"smtpserverport") = 25
    .Item(NameSpace&"smtpauthenticate") = 1
    .Item(NameSpace&"sendusername") = "feedback@lastidea.net"
    .Item(NameSpace&"sendpassword") = "123456"
    .Update
End With
Email.Send

  上面三个文件都放在D:\software\db-mysql-bak中. 然后建个任务计划, 定时执行这个程序就可以了

posted on   朋友圈自动点赞工具  阅读(936)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示