WEB开发网
开发学院数据库MSSQL Server SQL Server 2005灾难恢复步骤(一) 阅读

SQL Server 2005灾难恢复步骤(一)

 2008-10-24 10:07:16 来源:WEB开发网   
核心提示: 从Northwind数据库模式中,你很难删除Products, Orders和Customers表,SQL Server 2005灾难恢复步骤(一)(2),这是因为有其他表比如Order Details表的外码约束限制,但我敢打赌你可以轻易地删除Order Details表,在下面的脚本中

从Northwind数据库模式中,你很难删除Products, Orders和Customers表,这是因为有其他表比如Order Details表的外码约束限制。但我敢打赌你可以轻易地删除Order Details表。接下来,我们来模拟在大约上午11:00时删除这张表的灾难情景。

  DROPTABLE[OrderDetails]

2) 包含发生的问题

由于这个数据库只有一个单一的MDF和LDF文件,我们不可能做很多操作。我们所能做的就是通过把它设置成有限制的用户模式来使数据库脱机。

  USEmaster
  GO
  ALTERDATABASENorthwind
  SETRESTRICTED_USER
  WITHROLLBACKIMMEDIATE
  GO

这将很有效地使数据库脱机,停止所有活动的连接。这是分秒必争的时刻,我们需要采取行动。当进行到下面的步骤时,请牢记你的RPO和RTO。

3) 备份事务日志

一个好的数据库管理员应该知道当灾难来临时,首先要做的是备份事务日志 – 假设你的数据库被设置成全数据库备份。这是为了确保在上次备份之后你还保存所有活动的事务。在我们的场景中,由于上次的备份 – 全备份,在这个例子中 – 发生于早上6:00。

  BACKUPLOGNorthwind
  TODISK=N'D:DBBackupNorthwindBackupLog.trn'
  WITHNAME=N'TransactionLogBackup'
  ,DESCRIPTION='Gettingeverythingtocurrentpointintime.',
  STATS=10
  GO

4) 还原数据库到一个已知的良好时间点

现在,任何用户意外地删除一张表或者在数据库上造成一些破坏后都不会立即告诉你。有时候,你可能需要自己深入挖掘它,但是这需要花很多时间。由于我们想让数据库尽快地联机,所以我们假设一个众所周知的良好时间点,并且让发掘在稍后的时间里进行。在下面的脚本中,我将选择在我的STOPAT参数中将早上10:42设置成已知的良好时间点,一次达到展示的目的。

上一页  1 2 3 4 5 6  下一页

Tags:SQL Server 灾难

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接