`

SQLServer2005数据库备份

阅读更多


  本地备份具体步骤如下:
        一、开始菜单中打开SQL Server Management Studio,展开窗口左边的SQL服务器;
        二、SQL Server代理,右键选择"启动"(未启动的话);
        三、选择“作业->新建作业”;
        四、在"常规"中输入作业的名称;(图1)

 
五、新建步骤,选择T-SQL,命令中输入下面语句:
DECLARE @strPath NVARCHAR(200)
set @strPath = convert(NVARCHAR(19),getdate(),102 )
set @strPath = 'D:\ProjectDatabaseBackUp \Test_fullback_' + @strPath + '.bak' -- 备份路径
BACKUP DATABASE [Test ] TO DISK = @strPath WITH NOINIT , NOUNLOAD , NOSKIP , STATS = 10, NOFORMAT  -- Test是要备份的数据库名
 (图2)
 

 六、添加计划,然后确定完成:(图3)

 
 
 
 
 其他本地备份方法:可以使用sql server2005 管理功能中的维护计划进行备份,非常方便快捷,推荐大家使用!可参考以下文章:

DBA的SQL Server 2005备份维护计划:

http://www.qqread.com/sqlserver/2008/04/q407027_2.html

 使用SQL Server维护计划实现数据库定时自动备份

:http://hi.baidu.com/gisland/blog/item/5e1f9f584f2f4fd79c8204e5.html

 
远程备份:

SQLSERVER服务实例名称:XXLONG

需要备份的数据库名称: Project
备份机器名称(Client端):192.168.1.100
备份机用户:Administrator  密码:123
备份机提供备份需求的文件夹:D:\test

备份数据库

第一步: 首先在外围应用配置器里,启动xp_cmdshell。

第二步: 在备份机建立共享文件夹
               在程序代码中调用(或者CMD窗口)   net share test=D:\test                 

              简要说明: net share:是WINDOWS内部的网络命令。
               作用:建立本地的共享资源,显示当前计算机的共享资源信息。

               备份机显示共享成功时,在本地机器中的运行中输入: \\192.168.1.100\test 看是否能访问备份机上的此共享文件夹:如下图所示:

第三步: 建立共享信用关系

此语法格式为:    master..xp_cmdshell 'net use \\<remotecomputer>\<sharefolder> <password> /user:<remotecomputername\loginname>'
              exec master..xp_cmdshell 'net use z:
\\192.168.1.100\test "123" /user:192.168.1.100\Administrator'              简要说明:
                     1:xp_cmdshell :是SQLSERVER的扩展存储过程。
                             作用:以操作系统命令行解释器的方式执行给定的命令字符串, 并以文本行方式返回任何输出。
                             语法:参见SQLSERVER联机帮助
                     2:net use : 是WINDOWS内部的网络命令。
                             作用:将计算机与共享资源连接或断开,或者显示关于计算机连接的信息。

                              该命令还控制持久网络连接。

 

第三步:备份数据库
              BACKUP DATABASE [Project] TO  DISK = @localPath  -- 本地路径            

  BACKUP DATABASE [Project] TO  DISK = @localPath   WITH DIFFERENTIAL (差异备份)

第四步: 删除共享文件夹
               在程序代码中调用(或者CMD窗口)   net share z: /delete
              

 

完整代码如下 :


--下面指定映射网络文件夹为本地的z:盘,
--EXEC sp_configure 'show advanced options', 1
--GO
--RECONFIGURE
--GO
--EXEC sp_configure 'xp_cmdshell', 1
--GO
--RECONFIGURE
--GO

exec master..xp_cmdshell 'net use z: \\192.168.1.100\test   "123" /user:192.168.1.100\Administrator'

--定义两个备份位置
declare @localPath nvarchar(200);
declare @remotePath nvarchar(200);
set @localPath=N'D:\lanchong\database\';--这里指定本地备份的文件夹,N--代表的意思是unicode

set @remotePath=N'z:\';--这里指定远程备份的文件夹

--唯一的标识符
declare @guid nvarchar(36)
set @guid=newid()

--动态文件名
declare @fileName nvarchar(100)
set @fileName=N'project_fullbak_'+convert(char(10),getdate(),110)+@guid+'.bak'
set @localPath=@localPath+@fileName

--执行本地备份
BACKUP DATABASE [Project] TO  DISK = @localPath WITH NOFORMAT, NOINIT,  NAME = N'project-完整数据库备份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
--将本地备份拷贝到映射文件夹

declare @copy nvarchar(100)
set @copy=N'copy
'+@localPath+' '+@remotePath
exec master..xp_cmdshell @copy
--删除映射
exec master..xp_cmdshell 'net use z: /delete'

GO

 

参考资料: SQLSERVER远程备份、恢复 : http://www.cnblogs.com/iinsnian/archive/2008/06/06/1214821.html

 

  • 大小: 29.9 KB
  • 大小: 59.1 KB
  • 大小: 58 KB
  • 大小: 11.6 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics