Linux-crontab定时执行sh脚本进行数据库备份

首先在指定的目录里新建sh脚本,并在脚本里面编写mysql数据库备份语句,然后使用crontab定时执行,话不多说,直接开始命令
一、编写sh脚本
       # cd /usr/local
# mkdir scripts
# cd ./scripts
# vi mysql_full_bak.sh
在sh脚本写上简单的备份语句,按i进行编辑
例如:
user=root
passwd=123456
databak_dir=/usr/local/databackup
DATE=`date +\%Y\%m\%d`
database=gnclass 
cd /usr/local/databaskup
dumpFile=$database$DATE.sql
options="-u$user -p$passwd -h192.168.10.10 $database"
mysqldump $options > $dumpFile
或者最简单的写法: mysqldump -uroot -p123456 -h192.168.10.10 gnclass > /usr/data/gnclass.sql
如果只需要备份数据表结构,则可以加‘-d’
例如: mysqldump -uroot -p123456 -d -h192.168.10.10 gnclass > /usr/data/gnclass.sql
按Esc, 输入:wq保存退出

二、启动crontab并设定执行时间
# service crond start (如果已经启动了则忽略)
# crontab -e
按i进行编辑,格式: * * * * * 脚本位置及名称
30 3 * * * /usr/local/scripts/mysql_full_bak.sh (表示每天凌晨3点半执行一次脚本)
第一个*,表示在哪分钟执行(0-59)
第二个*,表示在哪小时执行(0-23)
第三个*,表示在哪天执行(1-31)
第四个*,表示在哪个月执行(1-12)
第五个*,表示在周几执行(0-6)
更详细的用法可以参考: https://jingyan.baidu.com/article/f54ae2fcce2f8e1e92b849c9.html
按Esc, 输入:wq保存退出就可以了

如果想要恢复数据库,编辑sh脚本时可以这么写:
mysql -uroot -p123456 -h192.168.10.10 gnclass < /usr/data/gnclass.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值