declare @bkfile nvarchar(1000)
set @bkfile='\\192.0.0.11\d:\backup.bak'
backup database airport to disk=@bkfile代码如上,但是用查询分析器执行时提示“设备出现错误或设备脱机”,请问这代码错在哪里?
set @bkfile='\\192.0.0.11\d:\backup.bak'
backup database airport to disk=@bkfile代码如上,但是用查询分析器执行时提示“设备出现错误或设备脱机”,请问这代码错在哪里?
--SQL如何备份到异机 写成存储过程,建立作业定时备份~~~
--在sql中映射一下就可以了
exec master..xp_cmdshell 'net use z: \\yizhi\D$ "密码" /user:yizhi\administrator' /*--说明:
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator' z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径 xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--*/ --备份;with init覆盖 ¦noinit添加
backup database 库名 to disk='E:\H_BACKUP.bak' with init --COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z:' --删除(这句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak' --完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'
--在sql中映射一下就可以了
exec master..xp_cmdshell 'net use z: \\yizhi\D$ "密码" /user:yizhi\administrator'/*--说明:
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--*/--备份;with init覆盖|noinit添加
backup database 库名 to disk='E:\H_BACKUP.bak' with init--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z:'--删除(这句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak'--完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'
exec master..xp_cmdshell 'net use z: \\yizhi\D$ "module" /user:yizhi\administrator'/*--说明:
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--*/--备份;with init覆盖|noinit添加
backup database holytron to disk='E:\H_BACKUP.bak' with init--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z:'--完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'——————————————————————————————————参考:(局域网内)--在sql中映射一下就可以了
exec master..xp_cmdshell 'net use z: \\yizhi\D$ "密码" /user:yizhi\administrator'/*--说明:
exec master..xp_cmdshell 'net use z: \\xz\c$ "密码" /user:xz\administrator'z:是映射网络路径对应本机的盘符,与下面的备份对应
\\xz\c$是要映射的网络路径xz\administrator
xz是远程的计算机名,
administrator是登陆的用户名
密码 面指定的administrator用户的密码
--*/--备份;with init覆盖|noinit添加
backup database 库名 to disk='E:\H_BACKUP.bak' with init--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z:'--删除(这句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak'--完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'
————————————————————————————————————
自动完成异地备份1、共享本地文件夹 D:\temp 共享名为 test
net share test = D:\temp2、执行SQL在数据库服务器上创建映射 z:
exec master..xp_cmdshell 'net use z: \\server\test 密码 /user:administrator'3、执行备份
backup database Northwind to disk = 'z:\\Northwind_20060101.bak'4、删除数据库服务器上的映射 z:
exec master..xp_cmdshell 'net use z: /delete'5、取消本机共享文件夹 test
net share test /delete
exec master..xp_cmdshell 'net use z: \\computer_name\D$ "密码" /user:computer_name\administrator'
/*--说明:
z:是映射网络路径对应本机的盘符,与下面的备份对应
\\computer_name\D$是要映射的网络路径
computer_name是远程的计算机名,
administrator是登陆的用户名
密码 指定的administrator用户的密码
--*/
--备份;with init覆盖 ¦noinit添加
backup database 库名 to disk='E:\H_BACKUP.bak' with init
--COPY
exec master..xp_cmdshell 'copy E:\H_BACKUP.bak z:'
--删除(这句可以去掉)
--exec master..xp_cmdshell 'del E:\H_BACKUP.bak'
--完成后删除映射
exec master..xp_cmdshell 'net use z: /delete'2,调度企业管理器 --管理 --SQL Server代理 --右键作业 --新建作业 --"常规"项中输入作业名称 --"步骤"项 --新建 --
"步骤名"中输入步骤名 --"类型"中选择"Transact-SQL 脚本(TSQL)" --"数据库"选择执行命令的数据库 --"命令"
中输入要执行的语句:
declare @strsql varchar(1000)
declare @strdirname varchar(50)
declare @strcmd varchar(50)
declare @strsend varchar(1000)
declare @strdate varchar(50)
exec master..xp_cmdshell 'net use \\192.168.0.151\d$ Password /user:192.168.0.151\administrator'
set @strsql='backup database new_his to disk=''\\192.168.0.151\d$\serverd\'
set @strdirname=replace(substring(convert(varchar(20),getdate(),120),1,10),'-','')+'12'
set @strcmd='md \\192.168.0.151\d$\serverd\' s
et @strcmd=@strcmd+@strdirname
exec master..xp_cmdshell @strcmd
--print @strsql
set @strsql=@strsql+@strdirname+'\new_hisbackup.dat'' with init,nounload,noskip,noformat' -
-print @strsql
exec (@strsql)
----其中写的IP地址及共享目录,网友自行修改,Password一定要正确 --确定 --"调度"项 --新建调度 --"名称"
中输入调度名称 --"调度类型"中选择你的作业执行安排 --如果选择"反复出现" --点"更改"来设置你的时间安排
然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行 设置方法: 我的电脑--控制面板--管理
工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定.
z:--本地虚拟盘符(用来接受 \\yizhi\D$ )
\\yizhi\D$--远程主机名及工作目录
"密码"--远程主机管理员密码
/user:yizhi\administrator--远程主机管理员账户先仿照这个 建立IPC连接 把远程硬盘映射到本地然后用你的方法 就可以了
declare @bkfile nvarchar(1000)
set @bkfile='d:\'+substring(convert(char(10),getdate(),112),5,4)+'_'+stuff(convert(char(5),getdate(),108),3,1,'')+'.bak'
backup database airport to disk=@bkfile
exec master..xp_cmdshell 'copy @bkfile e:\backup\'
exec master..xp_cmdshell 'net use e: /delete' 前面的都提示成功,就是执行到copy @bkfile e:\backup\这一句,提示错误:“系统找不到指定的文件”
exec master..xp_cmdshell 'net use e: \\192.0.0.11\d "123456" /user:192.0.0.11\administrator'
declare @bkfile nvarchar(1000)
set @bkfile='d:\'+substring(convert(char(10),getdate(),112),5,4)+'_'+stuff(convert(char(5),getdate(),108),3,1,'')+'.bak'
backup database airport to disk=@bkfile
set @bkfile ='copy '+@bkfile+' e:\backup\'
exec master..xp_cmdshell @bkfile
exec master..xp_cmdshell 'net use e: /delete'