SqlServer数据库使用SQL脚本进行定时备份+异机备份

一.定时备份

1.创建存放备份数据的文件夹(如D:\bak\bakup),否则执行sql语句会报错;

2.编写一个用于备份数据的sql脚本,内容如下:

--声明备份集名称变量
declare @name varchar(250) 
--变量赋值,形如DBname_20210818.bak
set @name='D:\bak\bakup\DBname_'+ convert(varchar(50),getdate(),112)+'.bak'
--DBname为对应备份数据库的名称
BACKUP DATABASE DBname TO  DISK = @name
WITH NOFORMAT, NOINIT,  NAME = N'Full Backup of DBname', SKIP, NOREWIND, NOUNLOAD

DBname为对应备份数据库的名称,WITN选项详见:Microsoft SQL文档那-完整数据库备份

3.保存为myScript.sql,同样存放至D:\bak\bakup(自定义的备份文件路径)

4.编写一个批处理文件,执行sql脚本,内容如下:

sqlcmd -SmyServer\instanceName -U account -P password -d DBname -i  D:\bak\bakup\myScript.sql -o D:\bak\bakup\examLog.txt

myServer\instanceName:使用计算机名称要连接的实例替换 myServer\instanceName SQL Server (如QA-DB-B06\SQLSERVER2014)

-U后面为数据库用户名 -P后面为数据库密码

-d后面为数据库名称  -i后面为sql脚本存放路径

-o后面为执行sql脚本后输出的内容指定文件(可省略)

sqlcmd工具详见Microsoft sqlcmd - 运行 Transact-SQL 脚本文件

5.保存编码格式为ANSI文本文件修改txt后缀格式为.bat,如myScript.bat,同样存放至D:\bak\bakup下(注:编码格式选择ANSI保存,否则运行时会中文乱码无法正确执行命令)

6.新建一个Windows任务计划,定期(比如每天)执行批处理命令

选择[管理工具]-[任务计划程序]

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第1张图片

 点击[创建基本任务]

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第2张图片

输入名称和描述

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第3张图片

选择任务触发周期

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第4张图片设置任务开始执行的时间

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第5张图片

选择[启动程序]

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第6张图片

添加启动程序所需的创建存放备份数据的文件夹(如D:\bak\bakup)bat文件以及sql脚本

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第7张图片

点击[完成]后,完成定时备份任务计划设定

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第8张图片

通过点击[任务计划程序],查看所有任务计划,选中某一条计划右击,可对其进行运行,导出等操作

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第9张图片

 双击计划或右击-点击[属性],可以对现有计划的内容进行修改

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第10张图片

二.异机备份

  异机备份,即将本地的文件通过远程网络驱动备份至目标备份文件夹中

1.设置映射网络驱动

打开"计算机",右击-[映射网络驱动]

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第11张图片

文件夹,根据示例\\server\qa的形式,输入目标备份文件夹,勾选"使用其他凭据连接",

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第12张图片

点击[完成]后,需要输入远程服务器的用户名和密码,进行凭据的连接,注意勾选"记住我的凭据"

2.使用net use 命令查看共享映射情况

WIN+R,输入cmd,呼出命令行窗口

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第13张图片

 输入net use,状态为ok,表示已完成映射共享(即\\192.168.1.7\qa成功映射为本机的Y盘)

SqlServer数据库使用SQL脚本进行定时备份+异机备份_第14张图片

3.在上述Y盘中,创建一个用于存放备份数据的文件夹,如Y:\nbak

4.编写一个批处理文件,内容如下:

--删除映射的Y盘
net use Y: /delete

--将\\192.168.1.7\qa映射为本机的Y盘
net use Y:  \\192.168.1.7\qa   "password" /user:"account"

--将本机D:\bak\bakup中的备份文件复制到共享映射的Y:\nbak中去
--输出结果存放至本机D:\bak\bakup\transfer.log中
xcopy D:\bak\bakup  Y:\nbak  /e /y /i /c /r /q>> D:\bak\bakup\transfer.log

::net use Y: /delete

5.保存编码格式为ANSI文本文件修改txt后缀格式为.bat,如transfer.bat,存放至D:\bak\bakup下,双击运行即可完成异机备份

6.可通过新建Windows任务计划,设置定时异机备份,操作步骤同定时备份中的6其中启动程序中的"添加参数"和"起始于"无需填写

你可能感兴趣的:(sqlserver)