首先了解主要的系统数据库:
系统数据库
master |
包含登录信息和其他数据库的核心信息 |
msdb
|
存储作业、操作员、警报、备份还原历史。数据库邮件信息等等。 |
model
|
所有新数据库的模型,如果希望新数据库都有某些对象,可以在这里创建。 |
tempdb |
sql server重启时重建,所以不需要备份 |
除了以上四种,其实还有一个数据库:Resource
从2005就引入的,一个只读、隐藏的数据库,包含所有在sql server中的系统对象。由于SQL SERVER不支持备份还原Resource数据库。所以DBA需要复制Resource的mssqlsystemresource.mdf和mssqlsystemresource.ldf文件。
SQL Server 2005 中的Resource数据库在路径: “<drive>:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\” location
SQL Server 2008 中的Resource数据库在路径:“<drive>:\Program Files\Microsoft SQL Server\MSSQL10.<instance_name>\MSSQL\Binn\” location.
报表服务数据库:如果装了报表服务,将会看到这两个服务数据库
ReportServer
ReportServerTempDB
Replication System Database(复制服务系统数据库)
distribution - 当配置了复制服务时,将会看到这个数据库。
如果需要执行基于文件的备份功能来备份Resource数据库,则需要开启XP_CmdShell
USE master
GO
sp_configure 'show advanced options'
GO
/* 0 = Disabled , 1 = Enabled */
sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE WITH OVERRIDE
GO
使用下面语句可以把系统数据库备份到E盘的
SystemDatabaseBackups文件夹中:
USE master
GO
SELECT GETDATE() AS 'System Database Backup Start Time'
GO
/* Backup Distribution Database */
BACKUP DATABASE Distribution
TO DISK = 'E:\SystemDatabaseBackups\Distribution.BAK'
WITH INIT
GO
/* Backup ReportServer Database */
BACKUP DATABASE ReportServer
TO DISK = 'E:\SystemDatabaseBackups\ReportServer.BAK'
WITH INIT
GO
/* Backup ReportServerTempDB Database */
BACKUP DATABASE ReportServerTempDB
TO DISK = 'E:\SystemDatabaseBackups\ReportServerTempDB.BAK'
WITH INIT
GO
/* Backup Master Model */
BACKUP DATABASE Model
TO DISK = 'E:\SystemDatabaseBackups\Model.BAK'
WITH INIT
GO
/* Backup Master Database */
BACKUP DATABASE Master
TO DISK = 'E:\SystemDatabaseBackups\Master.BAK'
WITH INIT
GO
/* Backup Master MSDB */
BACKUP DATABASE MSDB
TO DISK = 'E:\SystemDatabaseBackups\MSDB.BAK'
WITH INIT
GO
/* Copy Resource Database Files Using XP_CMDSHELL */
EXEC xp_cmdshell 'COPY /Y "D:\Program Files\Microsoft SQL Server\MSSQL10.
SQL2008\MSSQL\Binn\mssqlsystemresource.mdf" "E:\SystemDatabaseBackups"'
GO
EXEC xp_cmdshell 'COPY /Y "D:\Program Files\Microsoft SQL Server\MSSQL10.
SQL2008\MSSQL\Binn\mssqlsystemresource.ldf" "E:\SystemDatabaseBackups"'
GO
SELECT GETDATE() AS 'System Database Backup End Time'
GO
分享到:
相关推荐
Sqlserver2005数据库还原备份工具,主要是测试应用,希望通过各位的使用提出更好修改意见
可以对sql server数据实现备份和恢复
全面讲述了Sql Server 2008数据库的备份与恢复
SQL SERVER 2000 数据库备份与还原
SQLServer数据库的备份和还原详解SQLServer数据库的备份和还原详解
Sql Server数据库备份的另类解决方案
sqlserver2017数据库的两种备份方式:1、自动备份,2、手动备份,具体介绍如何自动备份sqlserver数据库,如何配置自动备份方案,以及备份数据库的还原,分享在操作过程中遇到的问题
SQL Server数据库备份与恢复(C#代码示例)为你提示了简洁、易懂的代码示例
定时将服务器中SQL SERVER 2000数据库备份到局域网中另一台电脑上.pdf
SQL SERVER2000数据库备份和恢复存储过程
基于SQLServer的数据库备份与还原论文,学校图书馆下的
SQLServer2008R2数据库备份与还原操作文档.pdf
非常实用的SQL_Server数据库自动备份并压缩文档
SQL Server2005 数据库还原和备份
经测试绝对成功。请放心下载。这是一个实例,下载后请看查看说明文档。
精细讲述SQL_Server数据库备份多种方法
数据库技术与应用—SQLServer第数据库备份与还原PPT学习教案.pptx
用于还原SqlServer2000的数据库备份 还原后的数据库名称、存放路径都可以自己设定,很灵活 比在企业管理器中造作更简单 此工具是本人闲暇时所写,大家觉得需要改进的地方请提出来,我会继续完善
批处理(bat)实现SQLServer数据库备份与还原
SQLSERVER2005数据库备份脚本.pdf