前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux实现SqlServer数据库数据自动备份,并定期删除过期备份文件

Linux实现SqlServer数据库数据自动备份,并定期删除过期备份文件

作者头像
浩Coding
发布2019-07-02 16:47:16
4.1K0
发布2019-07-02 16:47:16
举报
文章被收录于专栏:浩Coding浩Coding

前言--本地Linux远程连接SqlServer:

实现Linux下远程连接SqlServer过程,或者搜索在Linux上安装Sqlcmd,上篇文章我们讲了在RedHat(或Centos)上安装sqlcmd,现在讲的是Ubuntu(或者Deepin)系列安装教程:

1 导入公共存储库 GPG 密钥:

curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

2 注册 Microsoft Ubuntu 存储库:

curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list

3 更新源列表(可以更新依赖包,减少很多不必要的麻烦),并使用 unixODBC 开发人员包运行安装命令:

sudo apt-get update

sudo apt-get install mssql-tools unixodbc-dev

4 添加/opt/mssql-tools/bin/到你路径bash shell 中的环境变量:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

5 若要使sqlcmd/bcp能从交互式/非登录会话,bash shell 访问修改路径中 ~/.bashrc文件使用以下命令:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc

source ~/.bashrc

好了,大公告成!可以在本地远程操纵我们云服务器上的SqlServer数据库了。

由于我之前写过一个MySQL服务器自动备份数据的教程,所以这里不做过多啰嗦了,详细过程可以看那个教程,这里只贴代码,我也是从网上搜集别人的代码,懒得写脚本了,代码亲测有效:

自动备份任务是借助Linux的Crontab命令完成的,下面是相关命令,具体的Crontab命令我之前的文章里面有写。

1、查看crontab执行历史记录

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

2、添加crontab定时任务

crontab -e

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

代码语言:javascript
复制
0 23 * * * /backup/backup_mssql.sh

3、查看crontab定时任务

crontab -l

完整脚本代码:

#!/bin/bash

#设置mssql备份目录

folder=/backup/mssql

cd $folder

day=`date +%Y%m%d`

#rm -rf $day

#mkdir $day

#cd $day

#数据库服务器,一般为localhost

host=localhost

#用户名

user=sa

#密码

password='123456'

#要备份的数据库

db=TestDB

#数据要保留的天数

days=30

#由于crontab命令是没环境变量,所以sqlcmd命令,要用全路径,否则定时执行会执行失败

/opt/mssql-tools/bin/sqlcmd -H$host -U$user -P$password -Q "

BACKUP DATABASE TESTDB

TO DISK = '/backup/mssql/mssql"$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"

参考文章:

http://blog.51cto.com/svsky/2121967

https://blog.csdn.net/fuck487/article/details/79295314

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 浩Coding 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档