读书人

一个非常简单的有关问题希望大家帮忙

发布时间: 2012-01-10 21:26:51 作者: rapoo

一个非常简单的问题,希望大家帮忙,关于数据库备份的命令,知道的朋友请进!!!
在SQL下建立的数据库,里面包含了几个数据表,表名: A1,B1,C1
现在想每天中午12:00定时自动备份出这些表到指定的文件夹:D:\SQLDATA\

请问我应该怎么做?
1:在哪里设置?
2:怎么写命令?
3:怎么做SCHEDULE?

希望知道方法的朋友帮忙解答一下,我对于SQL的使用实在是不熟,谢谢了。

[解决办法]
首先建一份的存程。可以仿照
CREATE PROCEDURE sp_auto_backup

--可加指定备份文件名 @vname
--指定备份路径 @vpath
AS


declare @vName varchar(255), --备份文件名称(完整路径)
@vFile varchar(255), --备份文件名称,防止重复
@vcmd varchar(255), --外部命令
@result int --查找结果
--注意备份命令不支持事务处理
--备份分三步完成
--创建备份目录
--在目录中创建备份设备
--备份数据库

-- 1 -- 建目录

exec @result = master..xp_cmdshell 'dir y:\hisdata_bak '

--if (@result = 0)
--print '目录已经存在,直接备份! '
--else
exec master..xp_cmdshell 'md y:\hisdata_bak '

-- 2 -- 建设备
select @vname = 'y:\hisdata_bak\ '+convert(varchar(8), getdate(), 112)
select @vfile = convert(varchar(8), getdate(), 112)
select @vcmd = 'dir ' + @vname
exec @result = master..xp_cmdshell @vcmd

--if (@result = 0) --可用del 命令删除
--print '备份设备已经存在,直接备份! '
--else
exec master..sp_addumpdevice 'disk ', @vfile,@vname

-- 3 -- 备份
BACKUP DATABASE wagenHisv4 TO @vfile

GO
然後再在sql代理面新建一作。用存程就行了
[解决办法]
搞得这么烦
[解决办法]
在企业管理器里也可以!右击数据库所有任务就有或新任务计划也可以
当然CREATE PROCEDURE sp_auto_backup

--可加指定备份文件名 @vname
--指定备份路径 @vpath
AS


declare @vName varchar(255), --备份文件名称(完整路径)
@vFile varchar(255), --备份文件名称,防止重复
@vcmd varchar(255), --外部命令
@result int --查找结果
--注意备份命令不支持事务处理
--备份分三步完成
--创建备份目录
--在目录中创建备份设备
--备份数据库

-- 1 -- 建目录

exec @result = master..xp_cmdshell 'dir y:\hisdata_bak '

--if (@result = 0)
--print '目录已经存在,直接备份! '
--else
exec master..xp_cmdshell 'md y:\hisdata_bak '

-- 2 -- 建设备
select @vname = 'y:\hisdata_bak\ '+convert(varchar(8), getdate(), 112)
select @vfile = convert(varchar(8), getdate(), 112)
select @vcmd = 'dir ' + @vname
exec @result = master..xp_cmdshell @vcmd

--if (@result = 0) --可用del 命令删除
--print '备份设备已经存在,直接备份! '
--else
exec master..sp_addumpdevice 'disk ', @vfile,@vname

-- 3 -- 备份
BACKUP DATABASE wagenHisv4 TO @vfile

GO

[解决办法]
qys2000(银升) ( ) 信誉:100 2007-07-31 11:23:38 得分: 0


搞得这么烦


你的不。干制我的代。

你的那所有任不是自份的。那只是一次性份。就是人操作一次就份一次。你是多看比好
[解决办法]
看看助吧,我就不了
[解决办法]
其实也不必那么麻烦
做一个维护计划就可以了啊!
企业管理器---管理---数据维护计划
你一步一步配置好就行了!
[解决办法]
TO:LZ
好象在VB版里见过你哦
[解决办法]
作业就行了!
------解决方案--------------------


CREATE PROCEDURE BACKUP_PROCEDURE
AS
BEGIN
DECLARE @Str VARCHAR(255)
SET @Str = 'E:\D:\SQLDATA\ ' + 'databasename ' + CONVERT(VARCHAR(2), DATEPART(WEEKDAY, GETDATE())) + '.BAK '
BACKUP DATABASE databasename TO DISK = @Str WITH INIT
EXECUTE databasename..SP_UPDATESTATS
END
GO
然后用作业来实现

[解决办法]
放到维护计划里
企业管理器---管理---数据维护计划

[解决办法]
在job里找下,在backup文件夹中找一下

读书人网 >SQL Server

热点推荐