一、条件
1、A为数据库服务器
2、B为备份数据库
3、B服务器建立的共享文件夹可以被A访问
二、测试环境
| 主机A | 主机B |
IP | 192.168.2.190 | 192.168.2.16 |
数据库 | SqlServer2005 Developer Edition | 无 |
备注 | 可以访问文件夹Remote_backup | 共享文件夹Remote_backup (即数据库备份文件夹) |
三、数据库备份步骤
1、在主机B上建立共享文件夹“Remote_backup”,并将该文件夹设置账号权限为“完全控制”;
2、在主机A上,打开sqlserver configuration manager,打开sqlserver agent 的属性,将启动模式改为“自动”;
3、在主机A上,使用sqlserver工具“外围应用配置器”,并打开其中的“功能的外围应用配置器”,启用xp_cmdshell;
4、点击数据库的SQLServer代理下的“作业”,新建作业“RemoteBAK”;
5、点击“步骤”,新建作业步骤,选定需备份数据库,在命令框中输入如下命令,
命令如下:
exec master..xp_cmdshell 'netuse \\备份服务器IP\备份服务器上共享文件夹 "备份服务器登录密码" /user:备份服务器IP\备份服务器登录名'
EXECUTEmaster.dbo.xp_create_subdir '\\备份服务器IP\备份服务器上共享文件夹\数据库名称'
declare @strdirnameDvarchar(100)
declare @strdirnameT varchar(100)
declare @RemotePathstrvarchar(200)
set@strdirnameD=replace(substring(convert(varchar(20),getdate(),120),1,10),'-','')
set@strdirnameT=replace(substring(convert(varchar(20),getdate(),120),12,8),':','')
set @RemotePathstr = '\\备份服务器IP\备份服务器上共享文件夹\数据库名称\备份数据库名称_'+@strdirnameD+@strdirnameT+'.bak'
backup database stu_cou todisk=@RemotePathstr
6、点击“计划”,新建作业计划,设定作业启动时间;
7、结束上面操作后,点击“确定”,保存后,启动作业!