mysql自動備份發郵件到指定郵箱
首先 編寫 導出的 命令
使用了
mysqladmin ping
mysqldump
然後是 添加附件到郵件中發送
使用了對應的com
最後 暫停 看情況
參考:
http://hi.baidu.com/zd8695/blog/item/ae50b21c4b398a8087d6b6ac.html
見程序:
@echo on
:: mysql 目錄 以及對應的盤符 和當前bat文件所在的盤符 和路徑
set MYSQL_HOME=H:\wamp\bin\mysql\mysql5.5.16\bin
set MYSQL_DIR=H:
set EXECUTE_DIR=C:
set EXECUTE_HOME=C:\Users\fartpig\Desktop
:: 郵箱 賬號 密碼
set EMAIL_ACCOUNT=******@126.com
set EMAIL_PASS=******
www.2cto.com
echo start
echo save path
echo %cd%
set CURRENT_DIR=%cd%
echo export sql
%MYSQL_DIR%
cd %MYSQL_HOME%
echo try mysql
mysqladmin ping
mysqldump -u root -proot plane >plane.sql
echo send mail
%EXECUTE_DIR%
cd %CURRENT_DIR%
start %EXECUTE_HOME%\mail.vbs %EMAIL_ACCOUNT% %EMAIL_PASS% %MYSQL_HOME%/plane.sql
echo send success
pause
www.2cto.com
相應的 對應的 mail.vbs
function Send_mail(You_Account,You_Password,Send_Email,Send_Email2,Send_Topic,Send_Body,Send_Attachment)
'code by NetPatch Changed by ZD8695
'VBS發送郵件參數說明
'You_Account:你的郵件帳號
'You_Password:你的郵件密碼
'Send_Email:
'主要郵件地址
'Send_Email2: 備用郵件地址
'Send_Topic:
'郵件主題
'Send_Body:
'郵件內容
'Send_Attachment:郵件附件
You_ID=Split(You_Account, "@", -1, vbTextCompare)
'帳號和服務器分離
MS_Space = "http://schemas.microsoft.com/cdo/configuration/"
'這個是必須要的,不過可以放心的事,不會通過微軟發送郵件
Set Email = CreateObject("CDO.Message")
Email.From = You_Account
'這個一定要和發送郵件的帳號一樣
Email.To = Send_Email
'主要郵件地址
If Send_Email2 <> "" Then
Email.CC = Send_Email2
'備用郵件地址
End If www.2cto.com
Email.Subject = Send_Topic
'郵件主題
Email.Textbody = Send_Body
'郵件內容
If Send_Attachment <> "" Then
Email.AddAttachment Send_Attachment
'郵件附件
End If
With Email.Configuration.Fields
.Item(MS_Space&"sendusing") = 2
'發信端口
.Item(MS_Space&"smtpserver") = "smtp."&You_ID(1)
'SMTP服務器地址
.Item(MS_Space&"smtpserverport") = 25
'SMTP服務器端口
.Item(MS_Space&"smtpauthenticate") = 1
'cdobasec
.Item(MS_Space&"sendusername") = You_ID(0)
'你的郵件帳號
.Item(MS_Space&"sendpassword") = You_Password
'你的郵件密碼
.Update
End With
Email.Send
'發送郵件
Set Email=Nothing
'關閉組件
Send_Mail=True
'如果沒有任何錯誤信息,則表示發送成功,否則發送失敗
If Err Then
Err.Clear
Send_Mail=False
End If
End Function
www.2cto.com
If Send_Mail(wscript.arguments(0), wscript.arguments(1),wscript.arguments(0),"","數據庫plane備份","看附件",wscript.arguments(2))=True Then
Wscript.Echo "發送成功"
Else
Wscript.Echo "發送失敗"
End If
注: 使用可以修改相應的 注釋中的內容 其中包括了四個參數 和兩個 郵箱相關的
bat的目錄和盤符
mail.vbs的目錄和盤符
以及最後你的發郵箱的 地址和密碼 , 也可以修改代碼 發送到其他郵箱 注意 126的已經好用,不排除一些其他郵箱。。