日期:2014-05-18  浏览次数:20505 次

SQL数据库异地备份失败,请高手帮忙
我一个作业有备份三个库,前两个都成功,最后一个主业务库失败,错误如下:
PS:之前遇到过这种情况,后来重装了备份机系统就OK了,但是现在想找到方便的解决办法

消息
执行用户: NT AUTHORITY\SYSTEM。10% backed up。 [SQLSTATE 01000](消息 3211) 20% backed up。 [SQLSTATE 01000](消息 3211) 30% backed up。 [SQLSTATE 01000](消息 3211) 40% backed up。 [SQLSTATE 01000](消息 3211) 50% backed up。 [SQLSTATE 01000](消息 3211) 60% backed up。 [SQLSTATE 01000](消息 3211) 70% backed up。 [SQLSTATE 01000](消息 3211) 80% backed up。 [SQLSTATE 01000](消息 3211) 90% backed up。 [SQLSTATE 01000](消息 3211) 已处理 1327216 页,这些页属于数据库 'SHOPSHSTOCK' 的文件 'SHOPSHStockData'(位于文件 1 上)。 [SQLSTATE 01000](消息 4035) 100% backed up。 [SQLSTATE 01000](消息 3211) 已处理 5 页,这些页属于数据库 'SHOPSHSTOCK' 的文件 'SHOPSHStockLog'(位于文件 1 上)。 [SQLSTATE 01000](消息 4035) BACKUP DATABASE 操作异常终止。 [SQLSTATE 42000](错误 3013). 步骤失败。

------解决方案--------------------
SQL code
--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'