SQL SERVER数据库备份/恢复测试报告

来源:数据仓库之路  作者:佚名
SQL SERVER数据库备份/恢复测试报告
摘要:为避免因火灾或软硬件故障等特殊原因而导致的数据丢失,数据库管理员通常需要制定一个完善的适用于本系统的灾难恢复计划,而解决的办法中数据库的定期备份又是最有效的途径。在一份合理的备份策略指导下,数据库将得到最大程度的保护和恢复。…

第二章 恢复

一、恢复机制

SQL Server在检查事务日志和采取相应措施时可保证数据库的一致性。恢复过程如下:从最后一个检查点开始检查事务日志,发现受约束的事务就将它们的改变写入数据库,发现不受约束的事务就删除它们。

二、校验备份使用

RESTORE HEADERONLY(关于备份组)、RESTORE FILELISTONLY(关于数据库文件和事务日志文件)、RESTORE LABELONLY(关于备份介质信息,如媒体集)、RESTORE VERIFY(验证备份组完整性和各备份设备的可读性)语句来了解备份组的相关情况。

 三、备份前提

1) 执行EXEC sp_dboption database_name,’dbo use only’,true 2) USE master
 3) 进行恢复之前执行事务日志的备份,以保证数据库的一致性。

 四、具体操作

1.从完整的数据库备份还原

RESTORE DATABASE { database_name

@database_name_var } **必写 [ FROM < backup_device > [ ,...n ] ]
**最多64个,必写 [ WITH [ [ , ] FILE = { file_number

@file_number } ] **标识要还原的备份集 [ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name' ] [ ,...n ] **避免与现有文件冲突 [ [ , ] REPLACE ] **如希望用差异数据库备份中的数据替换现有数据库时使用,SQL Server将创建指定的数据库及其相关文件,删除现有的数据库 [ [ , ] { NORECOVERY

RECOVERY

STANDBY = undo_file_name } ] **指示还原操作不回滚任何未提交的事务。RECOVERY表示恢复时无事务日志备份或差异备份,或者是恢复最后一个事务日志备份。如果有事务日志备份或差异备份,则必须指定 NORECOVERY 或 STANDBY 选项 ] 例如: USE master RESTORE DATABASE testzy FROM backupzy,backupzy1 WITH FILE=5,RECOVERY

2.从差异数据库备份还原语法同上,只是选择NORECOVERY选项。为保证数据一致性,还需还原在差异备份生成之后所附加的事务日志备份。

3、从事务日志备份还原

RESTORE DATABASE { database_name

@database_name_var } **必写 [ FROM < backup_device > [ ,...n ] ] **最多64个,必写 [ WITH [ [ , ] { NORECOVERY

RECOVERY

STANDBY = undo_file_name } ] **指示还原操作不回滚任何未提交的事务。RECOVERY表示恢复时无事务日志备份或差异备份,或者是恢复最后一个事务日志备份。如果有事务日志备份或差异备份,则必须指定 NORECOVERY 或 STANDBY 选项 [ [ , ] STOPAT = { date_time

@date_time_var } **指定将数据库还原到其在指定的日期和时间时的状态。] 例如:USE master RESTORE LOG DATABASE testzy FROM backupzy,backupzy1 WITH FILE=6,RECOVERY,STOPAT=’ May 27, 2002 04:20 PM’

4、从文件或文件组备份还原为保证数据一致性,还需还原在文件备份生成后所附加的事务日志备份。

RESTORE DATABASE { database_name

@database_name_var } { FILE=logical_file_name

FILEGROUP=logical_filegroup_name> } [ ,...n ] [ FROM < backup_device > [ ,...n ] ] 例如:USE master RESTORE DATABASE testzy FILE='testzy_Data' FROM backupzy,bakcupzy1 WITH NORECOVERY

【相关文章】好搜一下
关于SQL Server数据库防止js注入的方法

关于SQL Server数据库防止js注入的

SQL2005的操作方法1、不要使用sa用户连接数据库。SA帐户拥有所有数据库和…