首页 > 数据库 > SQL Server > 正文

备份服务器端SQL SERVER数据库至本地目录

2024-08-31 00:49:29
字体:
来源:转载
供稿:网友

/*數據庫備份存儲過程*/
/**//*支持從服務器備份數據至本地機器上*/
--
create procedure up_dbbackup
(
@backup_db_name varchar(128),
@filename varchar(128), /**//*備份路徑+文件名*/
@flag varchar(60) output
)
as
set nocount on
declare @sql nvarchar(4000),@par nvarchar(1000)
if not exists(
  select * from master..sysdatabases
    where [email protected]_db_name
    )
begin
  select @flag='數據庫'[email protected]_db_name+'不存在!'
  return
end
else
begin
  if right(@filename,1)<>'/' and charindex('/',@filename)<>0
  begin
  /**//*定義標誌*/
  declare @lflag int
  execute @lflag=master..xp_cmdshell 'dir z:'
  if @lflag<>0
  begin
    /**//* 在客戶機192.168.2.45上建立一個完全共享目錄db,指定一個用戶名和密碼.win98用戶不需要用戶名和密碼*/
    execute @lflag=master..xp_cmdshell 'net use z: //192.168.2.45/db$ test /user:ca.atc/test'
    if @lflag<>0
    begin 
      select @flag='服務器創建目錄失敗!'
      return
    end
  end
  select @par='@filename varchar(1000)'
  select @sql='backup database '[email protected]_db_name+' to [email protected] with init'
  execute sp_executesql @sql,@par,@filename
  execute master..xp_cmdshell 'net use z: /delete'
  select @flag='數據庫'[email protected]_db_name+'備份成功!'
  return
end
else
begin
    select @flag='數據庫備份路徑錯誤!'
    return
end
end


**以上過程在sql server下測試通過



发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表