zoukankan      html  css  js  c++  java
  • SqlServerExpress2005 自动备份 天高地厚

    众所周知SqlServerExpress2005 属于简装版,安装程序五六十兆,在客户的服务器上部署时很畅快。但该数据库无Agent这样对我们进行定时备份保护数据安全带来了麻烦。为了定时备Express2005数据库,可以采取以下方案:

      1.编写WindowsService,在服务内调用备份数据库方法。

      2.使用Windows自带的计划任务。(推荐使用)。

      下面就由我来介绍一下如何用计划任务实现数据库备份的,操作步骤如下:

      1. 首先建立一个windows任务计划,打开任务计划向导,选择指定的的exe文件,该文件名为SQLCMD.EXE,位于x:\Program Files\Microsoft SQL Server\90\Tools\Binn 目录下。

      2.然后选择执行周期,假设选择每天上午9点,接着输入Windows用户名和密码。

      3.在任务计划向导完成前勾选 “在单击完成时,打开此任务的高级属性”这个CheckBox。

      4.修改运行命令为:sqlcmd -S .\SQLEXPRESS -E -i e:\Backup\Backup.sql

      注:.\SQLEXPRESS 是你的数据库实例, e:\Backup\Backup.sql 磁盘位置可任意更改。Backup.sql 文件内容为:

      exec [sp_BackupDatabase] '需要备份的数据库名','F'go

      6.在你Master数据库内执行该段存储过程,该存储过程被Windows计划调用。

    -- ============================================= 
    -- Author: RyanDing 
    -- Create date: 2010-10-10
    -- Description: 备份数据库
    -- Parameter1: 数据库名
    -- Parameter2: 备份类型 F=全部, D=差异, L=日志
    -- ============================================= 
    CREATE PROCEDURE [dbo].[sp_BackupDatabase]  
           @databaseName sysname, @backupType CHAR(1) 
    AS 
    BEGIN 
           SET NOCOUNT ON; 

           DECLARE @sqlCommand NVARCHAR(1000) 
           DECLARE @dateTime NVARCHAR(20) 

           SELECT @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),111),'/','') + 
           REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')  

           IF @backupType = 'F' 
                   SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName + 
                   ' TO DISK = ''C:\Backup\' + @databaseName + '_Full_' + @dateTime + '.BAK''' 
            
           IF @backupType = 'D' 
                   SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName + 
                   ' TO DISK = ''C:\Backup\' + @databaseName + '_Diff_' + @dateTime + '.BAK'' WITH DIFFERENTIAL' 
            
           IF @backupType = 'L' 
                   SET @sqlCommand = 'BACKUP LOG ' + @databaseName + 
                   ' TO DISK = ''C:\Backup\' + @databaseName + '_Log_' + @dateTime + '.TRN''' 
            
           EXECUTE sp_executesql @sqlCommand 
    END
    go

      执行计划任务后 查看C盘Backup目录下生成的bak数据库备份文件。

    不登高山,怎知天高;不临深溪,焉知地厚!站在坚实的土地上,做着生命中最真实的事情;像一棵挺拔的大树,认可自己的命运并敢于迎接属于这一方天空的风风雨雨。

  • 相关阅读:
    trackr: An AngularJS app with a Java 8 backend – Part III
    trackr: An AngularJS app with a Java 8 backend – Part II
    21. Wireless tools (无线工具 5个)
    20. Web proxies (网页代理 4个)
    19. Rootkit detectors (隐形工具包检测器 5个)
    18. Fuzzers (模糊测试器 4个)
    16. Antimalware (反病毒 3个)
    17. Debuggers (调试器 5个)
    15. Password auditing (密码审核 12个)
    14. Encryption tools (加密工具 8个)
  • 原文地址:https://www.cnblogs.com/net2012/p/2864045.html
Copyright © 2011-2022 走看看