Linux服务器实现每日定时备份MySQL数据库的shell脚本
Linux服务器实现每天定时备份MySQL数据库的shell脚本
在home下面创建back_db.sh
#!/bin/bash
#hebtu data backup shell,execute at everyday 23:00
#use crontab -l command to have a look
########################################## define parameters############################
#export PATH=/data/mysql-5.1.73/bin:$PATH
c_time=$(date +%Y%m%d)
#old_bak=`date --date='7 days ago' +%Y%m%d`
backuphome="/opt/back_db"
############################################database backup############################
user=root
password=111111
db1=andacms_hebmu
#backup sql files
mkdir $backuphome/$c_time
cd $backuphome/$c_time
echo "start backup database sql files to localhost"
mysqldump -u$user -p$password -e --max_allowed_packet=1048576 --net_buffer_length=8192 $db1>$db1.sql
tar czf db.tar.gz $db1.sql
rm -rf $db1.sql
echo "backup database sql files to localhost successfully"
然后再opt下面添加back_db 执行mkdir back_db
然后执行./back_up.sh测试一下
添加定时任务
crontab -e
添加 0 23 * * * /home/back_db.sh
查看状态 crontab -l 命令
显示 0 23 * * * /home/backup_db.sh
在每天的23点
在home下面创建back_db.sh
#!/bin/bash
#hebtu data backup shell,execute at everyday 23:00
#use crontab -l command to have a look
########################################## define parameters############################
#export PATH=/data/mysql-5.1.73/bin:$PATH
c_time=$(date +%Y%m%d)
#old_bak=`date --date='7 days ago' +%Y%m%d`
backuphome="/opt/back_db"
############################################database backup############################
user=root
password=111111
db1=andacms_hebmu
#backup sql files
mkdir $backuphome/$c_time
cd $backuphome/$c_time
echo "start backup database sql files to localhost"
mysqldump -u$user -p$password -e --max_allowed_packet=1048576 --net_buffer_length=8192 $db1>$db1.sql
tar czf db.tar.gz $db1.sql
rm -rf $db1.sql
echo "backup database sql files to localhost successfully"
然后再opt下面添加back_db 执行mkdir back_db
然后执行./back_up.sh测试一下
添加定时任务
crontab -e
添加 0 23 * * * /home/back_db.sh
查看状态 crontab -l 命令
显示 0 23 * * * /home/backup_db.sh
在每天的23点