Chinaunix首页 | 论坛 | 博客
  • 博客访问: 294662
  • 博文数量: 155
  • 博客积分: 1688
  • 博客等级: 上尉
  • 技术积分: 1560
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-17 08:06
文章分类
文章存档

2011年(16)

2009年(137)

2008年(2)

分类: LINUX

2009-06-06 03:02:34

1.所需要软件
mutt LINUX下命令行邮件工具,可用来接收和发送邮件

sendmail/postfix LINUX下邮件服务器,所有邮件通过本机发送出去

mysqldump 备份MYSQL数据库的程序



2.mutt参数介绍
-a 附件
-s 主题

例子:
echo "你好,祝你愉快!" | mutt -a /etc/passwd -s "LINUX发送带附件的邮件"
说明:echo打印的内容为邮件正文,发送密码文件passwd到邮箱



3.脚本
测试备份的数据库名:
scriptdev2 realmd mmfpm mangos characters


查看数据库使用的字符集
show variables like "char%";
utf8


建立备份脚本
vi /root/send-mysql-data.sh

#!/bin/bash
#Power by hugwww 2009-4-11

#set time format
date=`date -d "%m"date -d today +"%Y-%m-%d-%H:%M"`
echo $date

#定义数组
db_array=(scriptdev2 realmd mmfpm characters mangos)

#取数组无元素个数
lenArray=${#db_array[@]}


#循环列出数组元素
i=0

while [ $i -lt $lenArray ]
do

#执行备份
mysqldump -uroot -ppassw0rd --default-character-set=utf8 --opt --extended-insert=false \
--triggers -R --hex-blob -x ${db_array[$i]} > /opt/db-backup/everyday/${db_array[$i]}-$date.sql;

# echo ${db_array[$i]}
let i++
done


#将所有SQL文件压缩到一个文件
tar cvzf /opt/db-backup/mysql-data-$date.tar.gz /opt/db-backup/everyday/*$date.sql

#发送备份文件到邮箱
echo "$date 数据库备份文件" | mutt -a /opt/db-backup/mysql-data-$date.tar.gz -s "mangos数据库备份"

echo "$date 备份成功并发送到指定邮箱" >> /opt/db-backup/backup.log

exit



完成
阅读(1110) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~