随笔分类 -  备份还原

摘要:1前言本文的步骤基于以下条件:1.SQL Server可以启动。2.数据库没有做有效的备份。3.当前用户有Sysadmin权限。数据库质疑的原因会有多种多样,不同的suspect采用的步骤也会有所不同,以下的步骤不能适用所有的情况,但包括了一些基本的步骤。数据库suspect是指数据库内部处于不一致的状态,很有可能会有数据丢失。 我们推荐您从“好的数据库备份”恢复。 我们这里所指的“好的数据库备份”是指:1.在做数据库备份之前,您检查过DBCC CHECKDB没有错误。2.备份之后的数据库没有更改,或者更改可以忽略。在做任何修复操作之前,请务必备份.mdf/.ndf以及.ldf文件。2SQL 阅读全文
posted @ 2013-11-21 14:35 王凯旋 阅读(954) 评论(1) 推荐(0)
摘要:注意:如果数据库的恢复模式是简单模型(SIMPLE),则无法利用日志文件抢救数据。 在数据文件损坏时,要从日志文件恢复损坏的数据库中的数据,步骤如下:(1)使用带NO_TRUNCATE子句的BACKUP LOG语句备份损坏的数据库尾日志。NO_TRUNCATE,允许在数据库损坏时备份日志。解释: NO_TRUNCATE 指定不截断日志,并使数据库引擎尝试执行备份,而不考虑数据库的状态。因此,使用 NO_TRUNCATE 执行的备份可能具有不完整的元数据。该选项允许在数据库损坏时备份日志。 BACKUP LOG 的 NO_TRUNCATE 选项相当于同时指定 COPY_ONLY 和 ... 阅读全文
posted @ 2013-11-20 22:33 王凯旋 阅读(311) 评论(0) 推荐(0)
摘要:RESTORE DATABASE [db1] FROM DISK = N'E:\Backup\db2.bak' WITH FILE = 1, MOVE N'db1_Data' TO N'D:\Data\db2.MDF', MOVE N'db2_Log' TO N'E:\Logs\db2.LDF', STANDBY = N'E:\Standby\ROLLBACK_UNDO_db2.BAK', NOUNLOAD, STATS = 10GO 指定一个允许撤消恢复效果的备用文件。 STANDBY 选项可以用 阅读全文
posted @ 2013-11-14 09:46 王凯旋 阅读(576) 评论(0) 推荐(0)
摘要:对于大多数情况,在完整恢复模式或大容量日志恢复模式下,SQL Server 2005 及更高版本要求您备份日志结尾以捕获尚未备份的日志记录.还原操作之前对日志尾部执行的日志备份称为"结尾日志备份". SQL Server 2005 及更高版本通常要求您在开始还原数据库前执行结尾日志备份.结尾日志备份可以防止工作丢失并确保日志链的完整性.将数据库恢复到故障点时,结尾日志备份是恢复计划中的最后一个相关备份.如果无法备份日志尾部,则只能将数据库恢复为故障前创建的最后一个备份. 并非所有还原方案都要求执行结尾日志备份.如果先前的日志备份中包含恢复点,或者您准备移动或替换(覆盖)数据 阅读全文
posted @ 2013-11-11 23:40 王凯旋 阅读(819) 评论(0) 推荐(0)