首页 > 代码库 > 一个简单的全备数据库的脚本以及系统数据库是否需要备份
一个简单的全备数据库的脚本以及系统数据库是否需要备份
一个简单的全备数据库的脚本,@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 format10 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 databases16 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/
一个简单的全备数据库的脚本以及系统数据库是否需要备份
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。