mysql 定时发邮件_window 定时备份mysql并发送邮件

本文介绍了如何在Windows Server 2003上使用mysqldump进行数据库定时备份,并通过CDO.Message发送邮件通知。内容包括编写备份脚本,设置Windows定时任务,以及配置SMTP服务器进行邮件发送的详细步骤。
摘要由CSDN通过智能技术生成

最近的项目,客户要求要把数据库每天做备份,并且发送的邮箱,在Linux下就不用说了,方便的很,可是,o(︶︿︶)o 唉!服务器是Windows的2003 。整吧!在网上找了点资料,东拼西凑的总算是鼓捣出来了。

第一步,定时备份。

首先是要有脚本,然后加载Windows的定时任务就好了。

核心的备份语句如下:

mysqldump -hlocalhost -uroot -p%MySql_pw% --default-character-set=utf8 -R --triggers --hex-blob --single-transaction -B %%i >%BAK_FILE%

%RAR_Dir% a %BAK_FILE:~0,-4%.rar %BAK_FILE%

DEL /F /A /Q %BAK_FILE%

echo 数据库【%%i】 已经备份到%BAK_Dir%\%BAK_Dir2%\%BAK_FILE%.rar >> %LOG_FILE%

)

另外,还有根据时间创建目录、删除自定义天以前的备份等。具体的看附件内容吧!

发送邮件是一定要设置对SMTP地址和帐号密码,文件路径要对应上。

Namespace = "http://schemas.microsoft.com/cdo/configuration/"

dtmYesterday = Date

strYear = Year(dtmYesterday )

strMonth = Month(dtmYesterday )

If Len(strMonth) = 1 Then

strMonth = "0" & strMonth

End If

strDay = Day(dtmYesterday)

If Len(strDay) = 1 Then

strDay = "0" & strDay

End If

strYMD = strYear & "-" & strMonth & "-" & strDay

Set Email = CreateObject("CDO.Message")

Email.From = "对方地址"

Email.To = "你的地址"

Email.Subject = "数据备份 " & strYMD

Email.Textbody = "OK!"

rem 这里要和之前备份的目录对应上

Email.AddAttachment "E:\\mysql_db_bak\\" & strYMD & "\\数据库名称_" & strYMD & ".rar"

With Email.Configuration.Fields

.Item(NameSpace&"sendusing") = 2

.Item(NameSpace&"smtpserver") = "SMTP对应的服务器"

.Item(NameSpace&"smtpserverport") = 25

.Item(NameSpace&"smtpauthenticate") = 1

.Item(NameSpace&"sendusername") = "你的用户名"

.Item(NameSpace&"sendpassword") = "你的密码"

.Update

End With

Email.Send

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值