其实这个只是利用了 mysqldump来实现的数据库备份 具体代码如下:
#!/bin/sh
mysqldump -u dbuserName -p password dbName | gzip > ~/mysql_backup/dbName`date +%Y-%m-%d_%H%M%S`.sql.gz
cd ~/mysql_backup
find . -name '*.sql.gz' -mtime 30 | xargs rm -rf #delete 30 days ago
把以上脚本保存为dbback.sh, 并添加在 crontab 里执行 就OK了。
具体解释一下:
mysqldump -u dbuserName -p password dbName | gzip > ~/mysql_backup/dbName`date +%Y-%m-%d_%H%M%S`.sql.gz
这句就是用MySQLdump来备份数据库中 dbName的数据库到 ~/mysql_backup/ 目录下, 并且创建的文件名为: dbName + 备份时间.sql
find . -name '*.sql.gz' -mtime 30 | xargs rm -rf #delete 30 days ago
这句就是寻找当前目录下创建时间大于30天的 并删除