• 一个简单的全备数据库的脚本以及系统数据库是否需要备份


    一个简单的全备数据库的脚本,@path部分需要替换路径

     1 DECLARE @name VARCHAR(50) -- database name  
     2 DECLARE @path VARCHAR(256) -- path for backup files  
     3 DECLARE @fileName VARCHAR(256) -- filename for backup  
     4 DECLARE @fileDate VARCHAR(20) -- used for file name
     5  
     6 -- specify database backup directory
     7 SET @path = 'C:Backup'  
     8  
     9 -- specify filename format
    10 SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) 
    11  
    12 DECLARE db_cursor CURSOR FOR  
    13 SELECT name 
    14 FROM master.dbo.sysdatabases 
    15 WHERE name NOT IN ('master','model','msdb','tempdb')  -- exclude these databases
    16  
    17 OPEN db_cursor   
    18 FETCH NEXT FROM db_cursor INTO @name   
    19  
    20 WHILE @@FETCH_STATUS = 0   
    21 BEGIN   
    22        SET @fileName = @path + @name + '_' + @fileDate + '.BAK'  
    23        BACKUP DATABASE @name TO DISK = @fileName  
    24  
    25        FETCH NEXT FROM db_cursor INTO @name   
    26 END   
    27  
    28 CLOSE db_cursor   
    29 DEALLOCATE db_cursor

    可以看到并不备份'master','model','msdb','tempdb' 数据库
    为了较为容易地处理孤立账号的问题,建议备份master 数据库。或者启用2012的包含数据库,但也建议备份master数据库

    model 数据库虽然不会有任何用户数据在其中,数据库其中过程中的tempdb需要通过model的参数来创建,所以也建议备份。

    msdb记录一些关于SQL Agent 的计划信息以及备份还原信息,建议也备份一下,并建议使用完全恢复模式放在冗余设备中。

    tempdb 在数据库启动时创建,所以不需要备份。

    Reference

    http://www.mssqltips.com/sqlservertip/1070/simple-script-to-backup-all-sql-server-databases/

  • 相关阅读:
    linux日志守护进程 syslog
    ORM(一)
    ajax
    python bbs项目代码分析
    jquery基础
    PHP根据概率产生随机数
    用PHP删除文件操作unlink
    实时显示剩余可以输入的文字数
    mysql分表方法实现
    php 输出昨天,今天,明天是星期几的方法
  • 原文地址:https://www.cnblogs.com/SignalTips/p/4013456.html
Copyright © 2020-2023  润新知