一个备份集出错的恢复例子

一个备份集出错的恢复例子

/******************************************

 

尝试修复,出现错误

 

*******************************************/

 

restore database th114_oa

from disk='D:\DESK\2010-02-05.bak'

with move 'TH114_OA_Data' to 'd:\TH114_OA_Data.MDF',

move 'TH114_OA_Log' to 'd:\TH114_OA_Log.ldf', 

stats

 

 

/*

已处理百分之 10

已处理百分之 20

已处理百分之 30

消息 3183,级别 16,状态 2,第 

在从该备份集进行读取时,RESTORE 检测到在数据库 "th114_oa" 中的页(27088:-498182872)上存在错误。

消息 3013,级别 16,状态 1,第 

RESTORE DATABASE 正在异常终止。

 

*/

 

 

/******************************************

 

使用CONTINUE_AFTER_ERROR选项,能够恢复,但仍有一致性错误

 

*******************************************/

 

restore database th114_oa

from disk='D:\DESK\2010-02-05.bak'

with move 'TH114_OA_Data' to 'd:\TH114_OA_Data.MDF',

move 'TH114_OA_Log' to 'd:\TH114_OA_Log.ldf',

CONTINUE_AFTER_ERROR ,replace,

 

stats

/*

 

已处理百分之 10

已处理百分之 20

已处理百分之 30

已处理百分之 40

已处理百分之 50

已处理百分之 60

已处理百分之 70

已处理百分之 80

已处理百分之 90

已处理百分之 100

已为数据库 'th114_oa',文件 'TH114_OA_Data' (位于文件 )处理了 5648 页。

已为数据库 'th114_oa',文件 'TH114_OA_Log' (位于文件 )处理了 页。

正在将数据库 'th114_oa' 从版本 539 转换为当前版本 655

数据库 'th114_oa' 正在从版本 539 升级到版本 551

数据库 'th114_oa' 正在从版本 551 升级到版本 552

数据库 'th114_oa' 正在从版本 552 升级到版本 611

数据库 'th114_oa' 正在从版本 611 升级到版本 621

数据库 'th114_oa' 正在从版本 621 升级到版本 622

数据库 'th114_oa' 正在从版本 622 升级到版本 625

数据库 'th114_oa' 正在从版本 625 升级到版本 626

数据库 'th114_oa' 正在从版本 626 升级到版本 627

数据库 'th114_oa' 正在从版本 627 升级到版本 628

数据库 'th114_oa' 正在从版本 628 升级到版本 629

数据库 'th114_oa' 正在从版本 629 升级到版本 630

数据库 'th114_oa' 正在从版本 630 升级到版本 631

数据库 'th114_oa' 正在从版本 631 升级到版本 632

数据库 'th114_oa' 正在从版本 632 升级到版本 633

数据库 'th114_oa' 正在从版本 633 升级到版本 634

数据库 'th114_oa' 正在从版本 634 升级到版本 635

数据库 'th114_oa' 正在从版本 635 升级到版本 636

数据库 'th114_oa' 正在从版本 636 升级到版本 637

数据库 'th114_oa' 正在从版本 637 升级到版本 638

数据库 'th114_oa' 正在从版本 638 升级到版本 639

数据库 'th114_oa' 正在从版本 639 升级到版本 640

数据库 'th114_oa' 正在从版本 640 升级到版本 641

数据库 'th114_oa' 正在从版本 641 升级到版本 642

数据库 'th114_oa' 正在从版本 642 升级到版本 643

数据库 'th114_oa' 正在从版本 643 升级到版本 644

数据库 'th114_oa' 正在从版本 644 升级到版本 645

数据库 'th114_oa' 正在从版本 645 升级到版本 646

数据库 'th114_oa' 正在从版本 646 升级到版本 647

数据库 'th114_oa' 正在从版本 647 升级到版本 648

数据库 'th114_oa' 正在从版本 648 升级到版本 649

数据库 'th114_oa' 正在从版本 649 升级到版本 650

数据库 'th114_oa' 正在从版本 650 升级到版本 651

数据库 'th114_oa' 正在从版本 651 升级到版本 652

数据库 'th114_oa' 正在从版本 652 升级到版本 653

数据库 'th114_oa' 正在从版本 653 升级到版本 654

数据库 'th114_oa' 正在从版本 654 升级到版本 655

检测到该备份集损坏。

RESTORE WITH CONTINUE_AFTER_ERROR 成功完成,但遇到了一些损坏。数据库中可能存在不一致的地方。

RESTORE DATABASE 成功处理了 5649 页,花费 2.425 (18.196 MB/)

*/

 

 

/******************************************

 

DBCC 不报一致性错误,但出现其他问题,搞不懂,但可以查询表数据

 

*******************************************/

alter database th114_oa set single_user

 

dbcc checkdb('th114_oa',repair_allow_data_loss)

/*

有些错误看起来是没办法修复了,估计是跟加密有关

*/

 

 

 

/******************************************

 

重新备份

 

*******************************************/

 

backup database th114_oa

to disk='d:\th114_oa_ok.bak'

with stats

 

/*

已处理百分之 10

已处理百分之 20

已处理百分之 31

已处理百分之 40

已处理百分之 50

已处理百分之 60

已处理百分之 70

已处理百分之 81

已处理百分之 90

已为数据库 'th114_oa',文件 'TH114_OA_Data' (位于文件 )处理了 6248 页。

已处理百分之 100

已为数据库 'th114_oa',文件 'TH114_OA_Log' (位于文件 )处理了 页。

BACKUP DATABASE 成功处理了 6250 页,花费 2.555 (19.110 MB/)

*/

 

/******************************************

 

验证备份的有效性,看起来是有效的。

 

*******************************************/

 

restore verifyonly from disk='d:\th114_oa_ok.bak'

/*

文件 上的备份集有效。

*/ 

posted @ 2013-05-22 14:40  qanholas  阅读(4304)  评论(0编辑  收藏  举报