强烈向大家推荐一个好网站,【我要自学网】,教程由在校老师录制,有办公会计、平面设计、室内设计、机械设计、网页编程、影视动画等教程.....让你足不出门,都可以体验学校的专业教育!
今天我一同学询问我怎么定时备份数据库,给他提供的办法是是直接写计划任务,但是考虑要加一些特殊需要最好就是让他编写一个脚本,计划任务定期执行脚本即可。
脚本:
mkdir /root/shell
vi /root/shell/database.sh
#!/bin/sh ############################################################ # $Name: databaes.sh # $Version: v1.0 # $Function: 备份mysql数据库自动删除几天前备份 # $Author: 琴子小白 # $organization: west.cn # $Create Date: 2017-4-20 # $Description: 无 ############################################################# root=root #mysql账号 password=password #mysql密码 bak_url=/mnt #数据库备份存放路径 datanum=2 #备份最大保存天数 2是默认3天 mysqldump -u$root -p$password --all-databases | gzip > $bak_url/database_`date '+%y-%d-%m-%H-%M'`.sql.gz find $bak_url -name "database_*.sql.gz" -mtime +$datanum -type f | xargs rm -rf
保存退出,测试执行脚本
sh /root/shell/database.sh
测试可以正常生成,ok脚本搞定,现在开始添加计划任务。
vi /etc/crontab
30 1 * * * /root/shell/database.sh #凌晨1点30执行脚本
保存计划任务,在观察即可。