博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sql server异地备份数据库
阅读量:6253 次
发布时间:2019-06-22

本文共 2710 字,大约阅读时间需要 9 分钟。

--注意:异地备份数据库,需要先开启备份文件夹的网络共享,数据库选择master

--打开允许执行xp_cmdshell EXEC sp_configure 'xp_cmdshell',1exec master..xp_cmdshell 'net use \\192.168.0.139\DatabaseBackup password /user:192.168.0.139\administrator'backup database myDatabase to disk='\\192.168.0.139\DatabaseBackup\myDatabase_04_05.bak' with initexec master..xp_cmdshell 'net use \\192.168.0.139\DatabaseBackup /delete'--关闭允许执行xp_cmdshell EXEC sp_configure'xp_cmdshell', 0

 

 

如果提示无权限错误,请先执行以下脚本,注意数据库要选master

EXEC sp_configure 'show advanced options', 1GORECONFIGURE WITH OVERRIDEGO

 

备份数据库存储过程

USE [master]GO/****** Object:  StoredProcedure [dbo].[Pr_BackupDatabase]    Script Date: 04/05/2014 21:23:32 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author:         王再华-- Create date:    2014.04.05-- Description:    备份数据库服务器的所有数据库到映射文件夹-- =============================================ALTER PROCEDURE [dbo].[Pr_BackupDatabase]ASBEGIN    SET NOCOUNT ON;declare @TargetIP varchar(20)declare @backup varchar(20)declare @username varchar(20)declare @password varchar(20)set @TargetIP='192.168.1.139' --要备份到的服务器IP地址set @backup='myDatabase'          --共享文件夹set @username='administrator' --用户名set @password='password'--密码--1.打开允许执行xp_cmdshell EXEC sp_configure 'xp_cmdshell',1declare @sql1 varchar(2000)set @sql1='master..xp_cmdshell ''net use \\'+@TargetIP+'\'+@backup+' '+@password+' /user:'+@TargetIP+'\'+@username+''''--2.建立共享关系 exec master..xp_cmdshell 'net use \\192.168.0.139\DatabaseBackup password /user:192.168.0.139\administrator'exec(@sql1) declare @sql varchar(2000)/*************************** 循环备份数据库 START ***************************/declare my_cursor cursor scroll dynamic forselect name from sysdatabasesopen my_cursordeclare @name sysnamefetch next from my_cursor into @namewhile(@@fetch_status=0)begin  if(@name<>'master' and @name<>'model' and @name<>'msdb' and @name<>'tempdb' and @name<>'ReportServer' and @name<>'ReportServerTempDB')     begin          --3.执行备份          --backup database myDatabase to disk='\\192.168.0.139\DatabaseBackup\myDatabase_04_05.bak' with init          set @sql='backup database '+@name+' to disk=''\\'+@TargetIP+'\'+@backup+'\'+@name+'_'+CONVERT(varchar(100), GETDATE(), 23)+'.bak'' with init'          exec(@sql)         end  fetch next from my_cursor into @nameendfetch first from my_cursor into @nameclose my_cursordeallocate my_cursor/*************************** 循环备份数据库 END ***************************/declare @sql2 varchar(2000)set @sql2='master..xp_cmdshell ''net use \\'+@TargetIP+'\'+@backup+' /delete'''--4.删除共享关系 exec master..xp_cmdshell 'net use \\192.168.1.222\backup /delete'exec(@sql2)--5.关闭允许执行xp_cmdshell EXEC sp_configure'xp_cmdshell', 0END

 

转载地址:http://ygusa.baihongyu.com/

你可能感兴趣的文章
Smarty配置与实例化
查看>>
***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象...
查看>>
Siege——多线程编程最佳实例
查看>>
c# 生成 验证码
查看>>
SQL Server 触发器
查看>>
何为SLAM
查看>>
[工具]infolite-chrome插件css插件
查看>>
javascript 深拷贝
查看>>
【代码小记】无
查看>>
【知识点】Java机密
查看>>
BarTender 2016表单中的“秤显示”控件
查看>>
全面理解javascript的caller,callee,call,apply概念[转载]
查看>>
Jquery 下拉框取值
查看>>
IDEA中使用Maven创建Java Web项目
查看>>
2017.12.25
查看>>
react--1.创建项目
查看>>
11月20日学习内容整理:jquery插件
查看>>
预科班第四次考核总结
查看>>
html
查看>>
数据分析师到底在做什么?
查看>>