linux下crontab执行shell定时备份sqlserver数据库

16 篇文章 0 订阅

1、查看crontab执行历史记录

tail -n 100 -f /var/log/cron

2、添加crontab定时任务

crontab -e

添加定时任务,每天23点0分执行

0 23 * * * /usr/local/mssqlbackup.sh

3、查看crontab定时任务

crontab -l


注:crontab里面是没环境变量,如果crontab历史记录中有shell有执行记录,但是shell没效果,可能是shell中存在需要环境变量path的命令

export $PATH

所以shell里面要用全路径


4、mssql的备份脚本

#!/bin/bash
#设置mysql备份目录
folder=/var/opt/mssql/backup
cd $folder
day=`date +%Y%m%d`
#rm -rf $day
#mkdir $day
#cd $day
#数据库服务器,一般为localhost
host=localhost
#用户名
user=sa
#密码
password='123456'
#要备份的数据库
db=MTS

#数据要保留的天数
days=7

#由于crontab命令是没环境变量,所以sqlcmd命令,要用全路径,否则定时执行会执行失败
/opt/mssql-tools/bin/sqlcmd -H$host -U$user -P$password -Q "
BACKUP DATABASE TESTDB  
TO DISK = '/var/opt/mssql/backup/TESTDB"$day".bak'   
WITH FORMAT;
GO" 


#删除之前的备份
#cd ..
day=`date -d "$days days ago" +%Y%m%d`
rm -rf "TESTDB"$day".bak"
echo "remove TESTDB"$day".bak"




  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值