• SQL Server Express 自动备份方法


    使用Windows 【管理工具】的【任务计划程序】

    操作步骤如下:

    1. 选择【创建任务】,填入名称backup_db

    2.然后选择【触发器】,假设选择每天执行一次,时间在下午6点。

    3.选择【操作】- 新建- 启动程序,程序路径c:\backup.bat 确定

    4.修改c:\backup.bat内容为:"C:\Program Files\Microsoft SQL Server\90\Tools\Binn\SQLCMD.EXE" -S .\SQLEXPRESS -E -i c:\Backup.sql

    5.修改c:\backup.sql 内容,建立c:\backup目录,确认这个目录 Authenticated Users 这个用户有读写的权限

    exec [usp_BackupDatabase] '需要备份的数据库名','c:\backup','F'
    go

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

    CREATE PROCEDURE [dbo].[usp_BackupDatabase]   
           @databaseName sysname,@backupPath nvarchar(255), @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 = '''+@backupPath+'\' + @databaseName + '_Full_' + @dateTime + '.BAK'''  
             
           IF @backupType = 'D'  
                   SET @sqlCommand = 'BACKUP DATABASE [' + @databaseName +  
                   '[ TO DISK = '''+@backupPath+'\'+ @databaseName + '_Diff_' + @dateTime + '.BAK'' WITH DIFFERENTIAL' 
             
           IF @backupType = 'L'  
                   SET @sqlCommand = 'BACKUP LOG [' + @databaseName +  
                   '[ TO DISK = '''+@backupPath+'\' + @databaseName + '_Log_' + @dateTime + '.TRN'''  
             
           EXECUTE sp_executesql @sqlCommand  
    END 
    

      

  • 相关阅读:
    Kubernetes日常维护命令
    4-docker的三要素
    3-docker的安装
    2-docker介绍
    1-为什么要使用docker
    块存储、文件存储、对象存储意义及差异
    ceph分布式存储的搭建
    YAML入门:以创建一个Kubernetes deployment为例
    Zabbix通过SQL语句从数据库获取数据说明
    图解HTTP--03--http报文内的信息
  • 原文地址:https://www.cnblogs.com/zitjubiz/p/sqlserver_express_backup.html
Copyright © 2020-2023  润新知