在查找“用SSH备份mysql”时,发现的——“Dreamhost下每天自动备份mysql数据库,并发送到指定邮箱”。
觉得比wordpress的一些备份plugin好,决定启用。
1、用putty登录你的dreamhost;
2、运行
cd ~
mkdir backups
mkdir backups/archives
3、新建一个名为“mysql.sh”的文件,并输入下列代码:
#!/bin/bash
cd /home/username/backups/ #username改为你登录ssh时用的用户名
mkdir mysql
suffix=$(date +%y%m%d)
mysqldump --opt -uUser -pPass -h mysqlA.domain.com db_nameA > mysql/db_nameA.$suffix.sql #User为数据库用户名,pass为数据库用户密码,mysqlA.domain.com为数据库地址,db_nameA为数据库名,请根据你的情况修改。
tar zcf archives/mysql_backup.$suffix.tar.gz mysql/*
rm -r mysql/
mutt you@domain.com -a /home/username/backups/archives/mysql_backup.$suffix.tar -s "MySQL Backup" #you@domain.com修改为你准备用于收取备份压缩包的邮箱。
保存后,上传到backups文件夹中。
4、在putty中运行
dos2unix ~/backups/mysql.sh
chmod 755 ~/backups/mysql.sh
5、在Dreamhost的panel,Goodies->Cron Jobs中新建Cron任务,选项设置为
Command to run: /home/User/backups/mysql.sh
#User改为你登录SSH时用的用户名。
时间照下图设置,将在北京时间每天的24:10左右运行备份MySQL程序,并发送备份压缩包到你指定的邮箱。
6、完成!
参考文献:wiki.dreamhost.com