网上一大堆这样的脚本,自己也写一个吧,适用于数据内容小于10M的数据库.
首先要确保系统中安装有smtp和mutt,在CentOS下执行:yum -y install smtp mutt
然后还需要创建/home/backup目录,mkdir /home/backup
以下是脚本:
`#!/bin/bash
~设定数据库用户名和密码~
MYSQL_Username=demo
MYSQL_Password=demoPassword
export EMAIL='demouser@yourserver.com' #定义发件人地址,便于用于gmail的label分类
~设定需要备份的数据库名~
DB_Name1=demo_datebase_name1
DB_Name2=demo_datebase_name1
DB_Name3=demo_datebase_name1
DB_Name4=demo_datebase_name1
BackupPath=/home/backup
ToolPath=/usr/local/mysql/bin
NewBackup=db-*-$(date +"%Y%m%d").sql #当前日期的备份
OldBackup=db-*-$(date -d -3day +"%Y%m%d").sql#在服务器上保留3天以内的备份
~导出数据库~
$ToolPath/mysqldump -u$MYSQL_Username -p$MYSQL_Password $DB_Name1 > $BackupPath/$DB_Name1-$(date +"%Y%m%d").sql
$ToolPath/mysqldump -u$MYSQL_Username -p$MYSQL_Password $DB_Name2 > $BackupPath/$DB_Name2-$(date +"%Y%m%d").sql
$ToolPath/mysqldump -u$MYSQL_Username -p$MYSQL_Password $DB_Name3 > $BackupPath/$DB_Name3-$(date +"%Y%m%d").sql
$ToolPath/mysqldump -u$MYSQL_Username -p$MYSQL_Password $DB_Name4 > $BackupPath/$DB_Name4-$(date +"%Y%m%d").sql
cd $BackupPath
if [ -f mysqlBackup$(date -d -3day +"%Y%m%d").tar.gz ];then
rm $BackupPath/mysqlBackup$(date -d -3day +"%Y%m%d").tar.gz #移除服务器上3天前的备份
fi
tar czf mysqlBackup$(date +"%Y%m%d").tar.gz $BackupPath/*.sql #打包
~用mutt把备份文件发送到gmail~
echo "Mysql Backup" | mutt -a $BackupPath/mysqlBackup$(date +"%Y%m%d").tar.gz -s "mysql backup at $(date +"%Y%m%d")" demouser@gmail.com && rm -rf $BackupPath/*.sql`
wordpress对bash脚本文件处理不好,直接复制上面的代码可能出问题。
修改变量,加上x权限,执行即可.
另外,官方的植物大战僵尸安卓版出来了, 好像第一天还免费, 跑到amazon上下载, 居然说不向我所在的国家提供服务, 傻逼澳洲白人也被人鄙视了吧, 伟大天朝就有解决方案:http://u.115.com/file/dn491eui