基本信息
源码名称:sqlserver远程备份方法
源码大小:4.37KB
文件格式:.zip
开发语言:SQL
更新时间:2015-09-15
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
--大家可以“新建维护计划”的方式自动定时备份,或者手动执行备份
--查询xp_cmdshell
SELECT *
FROM sys.configurations
WHERE name = 'show advanced options'
OR name = 'xp_cmdshell'
GO
--启用xp_cmdshell
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'xp_cmdshell', 1
RECONFIGURE
GO
----禁用xp_cmdshell
--sp_configure 'show advanced options', 1
--RECONFIGURE
--GO
--sp_configure 'xp_cmdshell', 0
--RECONFIGURE
--GO
---------------------------------备份开始---------------------------------
--EXEC master..xp_cmdshell 'net use z: \\[IP 或者 计算机名称]\[目录] "[登录密码]" /user:[IP 或者 计算机名称]\[用户名]'
-- 创建网络映射(Y是盘符;IP地址后面要带共享文件夹的名称;password是密码,双引号引起;administrator是远程电脑的登录名)
EXEC master..xp_cmdshell 'net use Y: \\10.44.103.239\BackupTest "password" /user:10.44.103.239\administrator'
-- 执行备份
DECLARE @strPath NVARCHAR(200)
DECLARE @name SYSNAME
DECLARE userDB CURSOR
FOR
SELECT name
FROM master.dbo.sysdatabases
WHERE SID <> 0x01
--AND name = 'HotelList1001' --写上你要备份的数据库名称,或者全部备份
OPEN userDB
FETCH NEXT FROM userDB INTO @name
WHILE ( @@FETCH_STATUS = 0 )
BEGIN
SET @strPath = CONVERT(NVARCHAR(19), GETDATE(), 120)
SET @strPath = REPLACE(@strPath, ':', '.')
SET @strPath = 'Y:\' @name @strPath '.bak'
BACKUP DATABASE @name TO DISK = @strPath WITH NOINIT, NOUNLOAD, NOSKIP, STATS = 10, NOFORMAT
FETCH NEXT FROM userDB INTO @name
END
CLOSE userDB
DEALLOCATE userDB
-- 删除网络映射(Y是盘符,同上)
EXEC master..xp_cmdshell 'net use Y: /delete'
GO
---------------------------------备份结束---------------------------------