本文备份方法适用于所有Linux系统。
一、先来一分手动备份的例子:
cd /root/
touch backup. sh
chmod +x backup.sh
# vi /root/backup.sh
输入如下内容:
cd /home/backup/mysql/
/opt/lampp/bin/mysqldump -h localhost -u root -pgd5188 pulaiwuang| gzip >pulaiwuang-$(date +%Y%m%d).sql.gz
tar zcvf /home/backup/www/www.pulaiwang.com_$(date +%Y%m%d).tar.gz /www/html/www.pulaiwang.com/
#删除2天前的旧备份
find /home/backup/ -type f -mtime +2 -exec rm -f {} \;
find /home/backup/www/ -type f -mtime +2 -exec rm -f {} \;
find /home/backup/mysql/ -type f -mtime +2 -exec rm -f {} \;
PS:需要事先创建好“/home/backup/mysql/”、“ /home/backup/www/”文件夹
二、测试运行
sh /root/backup.sh
如果没有出现错误,“/home/backup/mysql/”、“ /home/backup/www/”、“注意 -p 和 $db_passwd之间没有空格,不然$db_passwd会被当做参数[数据库名]来解析”文件夹已经出现备份文件,说明已经备份成功。
三、使用cron定时任务工具实现自动备份
crontab -e
添加如下内容(每天凌晨3点运行备份脚本):
0 12 * * * sh /root/backup.sh
MYSQL备份之二
db_user=”root”
db_passwd=”gd5188″
db_name=”pulaiwuang”
# the directory for story your backup file.you shall change this dir
backup_dir=”/data/backup/mysql”
# date format for backup file (dd-mm-yyyy)
time=”$(date +”%Y%m%d%H%M%S”)”
/opt/lampp/bin/mysqldump -u$db_user -p$db_passwd $db_name > “$backup_dir/$db_name”_”$time.sql”