SQLServer定时备份到其它服务器上

发布于:2024-12-18 ⋅ 阅读:(59) ⋅ 点赞:(0)

环境

Microsoft SQL Server 2019 (RTM) - 15.0.2000.5 (X64)
SQL Server Management Studio 15.0.18384.0
SQL Server 管理对象 (SMO) 16.100.46367.54
Microsoft .NET Framework 4.0.30319.42000
本地操作系统(SQLServer环境) Windows 11
远程操作系统(备份服务器) RedHat Linux8 x64

关键点

  1. 准备好备份服务器并开放共享文件夹、确保本地主机和服务器能够正常连通
    借阅该教程==> Samba文件共享服务
    在SSMS上开启SQL Server代理
    在这里插入图片描述

  2. 使用维护计划来做定时备份
    新建一个维护计划,如果不会用可以使用维护计划向导。如何使用维护计划可借阅该教程SQLServer维护计划 ,该教程包含了使用SSMS维护计划任务定时备份的全过程,包含流程、测试、配置等。
    在这里插入图片描述

  3. 配置定时备份任务的两种方式
    (1)纯配置方式
    纯配置方式见第2点使用维护计划教程;
    (2)T-SQL存储过程
    使用T-SQL存储过程方式,借阅该教程T-SQl定时备份任务
    (3)T-SQL+配置备份任务
    ★最终我采用T-SQL实现服务器连接+配置定时备份的方式来实现效果。
    这样做的原因:由于是边学边做,没接触过存储过程和T-SQL,如果让我写“每周完整备份+每天差异备份+文件保留十四天”,对我来说有点难度。因此我直接用配置的方式来实现我想要的备份功能。

下面是教程:
在创建了维护计划后,点击左上角的工具箱,然后拖两个任务进来(T-SQL任务/备份任务)
在这里插入图片描述
双击T-SQL计划,然后写语句:

-- 这条语句是用来连接备份服务器的
EXEC MASTER..XP_CMDSHELL 'NET USE \\服务器地址\要备份哪?文件夹路径 密码 /USER:服务器地址\用户名'; 
--比如:
EXEC MASTER..XP_CMDSHELL 'NET USE \\192.168.192.131\database\bakup\ abc@123 /USER:192.168.192.131\admin'; 

在这里插入图片描述
在这里插入图片描述
修改数据库备份文件的路径:
在这里插入图片描述

总结流程:先用T-SQL建立连接,要做任务流,记得连线。然后备份任务的配置工作。

最后点击执行测试一下:
在这里插入图片描述
进到共享文件夹看下:
测试成功!在这里插入图片描述

注意!
若在单个维护计划中建立多个子计划,如在数据库备份计划下面有完整备份、差异备份2个子计划,那么需要在作业下中启动作业步骤进行测试。
在这里插入图片描述

在SQL代理中,点击作业开始步骤:
在这里插入图片描述


网站公告

今日签到

点亮在社区的每一天
去签到