SQL Server远程定时备份数据库脚本分享
程序员文章站
2023-11-25 15:22:16
经常会有定时备份sql server数据库的需要。定时备份到本机的话,还是挺容易的,计划任务就可以完成,但如果是整机挂了,那备份到本机是没意义的,那么就需要来考虑备份到局域...
经常会有定时备份sql server数据库的需要。定时备份到本机的话,还是挺容易的,计划任务就可以完成,但如果是整机挂了,那备份到本机是没意义的,那么就需要来考虑备份到局域网中,其它电脑里。
下面就分享一份在网上找了之后,自己再简单整理过的代码,配合 sql server 代理中的作业功能,已经稳定运行一个星期了,每小时就备份一次。
复制代码 代码如下:
-- 创建网络映射(y是盘符;ip地址后面要带共享文件夹的名称;password是密码,双引号引起;account是远程电脑的登录名)
exec master..xp_cmdshell 'net use y: \\192.168.0.69\sqlbackup "password" /user:192.168.0.69\account'
-- 按日期时间做文件名(注意路径中的文件夹,需要先建立好)
declare @filename varchar(200)
select @filename = 'y:\db\' + replace(replace(replace(convert(varchar, getdate(), 120 ),'-',''),' ','-'),':','') + '.bak'
-- 执行备份(db是要备份的数据库名称)
backup database [db] to disk = @filename
-- 删除网络映射(y是盘符,同上)
exec master..xp_cmdshell 'net use y: /delete'