sql server代理 作业

wynlc 2010-09-09 09:04:18
作业内容
backup database weds_v4 TO DISK = 'D:\KQbak'

错误提示:
BACKUP 未能完成命令 backup database weds_v4 TO DISK = 'D:\KQbak'
BackupDiskFile::CreateMedia: 备份设备“D:\KQbak”create 失败。操作系统错误 = 5(拒绝访问。)。


问题出在什么地方呢?
...全文
147 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
中国风 2010-09-09
  • 打赏
  • 举报
回复
語法沒問題,最好在生成文件加上.bak

--------------
查看一下 啟動賬號有沒有權限訪問 D:\
路伊阑珊 2010-09-09
  • 打赏
  • 举报
回复
自己修改一下路径
路伊阑珊 2010-09-09
  • 打赏
  • 举报
回复
---完整备份
declare @filename varchar (1000)
set @filename='E:\BackData\'+convert(varchar(10),getdate(),112)+'.Bak'
print @filename
BACKUP DATABASE [MOS] TO DISK = @filename WITH NOINIT , NOUNLOAD , NAME = N'备份', NOSKIP , STATS = 10,
NOFORMAT
--差异备份
declare @filename varchar (1000)
set @filename='E:\BackData\'+convert(varchar(10),getdate(),112)+'DIFFERENTIAL.Bak'
print @filename
BACKUP DATABASE [MOS] TO DISK = @filename WITH DIFFERENTIAL , NOUNLOAD , NAME = N'备份', NOSKIP , STATS = 10,
NOFORMAT
龟仙 2010-09-09
  • 打赏
  • 举报
回复
备份文件 打个时间戳就好了。
但是 还是必须给出完整路径。
wynlc 2010-09-09
  • 打赏
  • 举报
回复
INIT

指定应重写所有备份集,但是保留媒体头。如果指定了 INIT,将重写那个设备上的所有现有的备份集数据。

当遇到以下几种情况之一时不重写备份媒体:

媒体上的备份设置没有全部过期。有关更多信息,请参见 EXPIREDATE 和 RETAINDAYS 选项。


如果 BACKUP 语句给出了备份集名,该备份集名与备份媒体上的名称不匹配。有关更多信息,请参见 NAME 子句。
使用 SKIP 选项替代这些检查。有关使用 SKIP、NOSKIP、INIT 和 NOINIT 时的相互作用关系的更多信息,请参见注释部分。
Rotel-刘志东 2010-09-09
  • 打赏
  • 举报
回复
未指定备份名称,会报错的。
backup database weds_v4 TO DISK = 'D:\KQ.bak'
wynlc 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 claro 的回复:]

覆盖备份集。
[/Quote]

谢谢
yoyo_ 2010-09-09
  • 打赏
  • 举报
回复
备份是必须指定文件名的,不能自动生成~
mshuangjiaqia 2010-09-09
  • 打赏
  • 举报
回复
楼主,你建个文件夹就可以
claro 2010-09-09
  • 打赏
  • 举报
回复
覆盖备份集。
wynlc 2010-09-09
  • 打赏
  • 举报
回复

弱弱问一下with init 是什么意思,有什么作用
Mr_Nice 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wynlc 的回复:]

引用 3 楼 orchidcat 的回复:

引用 2 楼 wynlc 的回复:

引用 1 楼 claro 的回复:

SQL code
backup database weds_v4 TO DISK = 'D:\KQ.bak'


D:\KQbak 这个是目录 ,必须制定备份后的文件名吗?
如下:
backup database weds_v4 TO DISK = '……
[/Quote]
[Quote=引用 5 楼 claro 的回复:]

SQL code
declare @data nvarchar(50)
set @data='D:\KQbak\'+convert(varchar(10),getdate(),112)
BACKUP DATABASE weds_v4 TO DISK = @data
with init
[/Quote]

动态拼接语句,生成即可...
claro 2010-09-09
  • 打赏
  • 举报
回复
declare   @data   nvarchar(50)    
set @data='D:\KQbak\'+convert(varchar(10),getdate(),112)
BACKUP DATABASE weds_v4 TO DISK = @data
with init
wynlc 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 orchidcat 的回复:]

引用 2 楼 wynlc 的回复:

引用 1 楼 claro 的回复:

SQL code
backup database weds_v4 TO DISK = 'D:\KQ.bak'


D:\KQbak 这个是目录 ,必须制定备份后的文件名吗?
如下:
backup database weds_v4 TO DISK = 'D:\KQbak\KQ1.bak'

不能自动……
[/Quote]

这样子话 就会把上次备份的给覆盖了
Mr_Nice 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wynlc 的回复:]

引用 1 楼 claro 的回复:

SQL code
backup database weds_v4 TO DISK = 'D:\KQ.bak'


D:\KQbak 这个是目录 ,必须制定备份后的文件名吗?
如下:
backup database weds_v4 TO DISK = 'D:\KQbak\KQ1.bak'

不能自动生成文件名吗
[/Quote]

应该是必须指定备份名称的。
wynlc 2010-09-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 claro 的回复:]

SQL code
backup database weds_v4 TO DISK = 'D:\KQ.bak'
[/Quote]

D:\KQbak 这个是目录 ,必须制定备份后的文件名吗?
如下:
backup database weds_v4 TO DISK = 'D:\KQbak\KQ1.bak'

不能自动生成文件名吗
claro 2010-09-09
  • 打赏
  • 举报
回复
backup database weds_v4 TO DISK = 'D:\KQ.bak'

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧