linux 文件备份定时任务脚本,linux服务器每天执行备份数据库定时任务脚本demo

30 04 * * * /data/jiaoben/mysql_backup.sh 每天4点执行脚本 qq571031767

数据作为网站及网络的灵魂,及时做好数据备份才是天道。

否则,某天一个错误操作导致损失几百上千万甚至更多更多~~  好可怕~  因为我就不小心错误操作过

好啦,怎么备份,怎么处理我来教你

脚本文件 mysql_backup.sh 上传后记得修改此文件的权限

!/bin/bash

#db_password=`cat /data/www/mysql_password`

db_name='sm'

backup_dir='/data/www/mysqlback/'

current_time=$(date +'%Y-%m-%d_%H%M%S')

filepath=$backup_dir$current_time'.sql.gz'

tables='cmstop_article cmstop_baoliao cmstop_content cmstop_qudonghao_user cmstop_admin cmstop_qudonghao_comment'

n=43200 #43200分钟 也就是30天

#此处没有使用 $db_password $db_user, 已经写入到配置文件中

echo '开始导出数据库...'

mysqldump --defaults-extra-file=/data/jiaoben/my_mysql.cnf $db_name $tables | gzip > $filepath

echo '导出成功,文件名为: '$filepath

#find . -mtime +30 -type f -name "*.sql.*" -exec rm -f {} \; 未经测试

find $backup_dir -maxdepth 1 -type f -mmin +$n -name "*.sql.gz" | xargs rm -rf #亲测 +n 代表n分钟 删除30天前的备份

# 命令: find . -mtime +N -type f -name "*.log.*" -exec rm -f {} \;

# 简单解释: find .查询 ;

# -mtime 规定时间的一个参数,固定格式;

# +N : N是指N天前;

# -type f :类型文件;

# -name: 名称;

# "*.log.*" :要删除的文件的后缀名称,如果是删除全部,可以写"*";

# -exec rm -f {} \ :固定格式,递归删除前面条件约束下的文件;

#*/1 * * * * /www/jiaoben/mysql_backup.sh 定时任务-每分钟执行脚本 /www/jiaoben/mysql_backup.sh

# 30 04 * * * /data/jiaoben/mysql_backup.sh 每天4点执行脚本 qq571031767

配置文件 my_mysql.cnf

[mysqldump]

max_allowed_packet= 400M

host=192.168.0.4

user=yourmysqluser

password='yourmysqlpass'

[mysql]

host=192.168.0.4

user=yourmysqluser

password='yourmysqlpass'

最后添加定时任务

30 04 * * * /data/jiaoben/mysql_backup.sh 每天4点执行脚本 qq571031767

好啦,上述就是linux下的 数据库备份脚本,本篇讲了如何备份mysql下的特定表文件,如果想备份整个数据库,只需要修改上述的tables

crontab -e 编辑定时任务哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值