RBa*_*ung 2 sql-server sql-server-2008-r2 corruption
我正在与一位客户合作,该客户从其 SharePoint 数据库之一的日志备份中收到以下错误:
Backup detected log corruption in database FOOPORTAL_SP2010_Config. Context is FirstSector.
LogFile: 2 'D:\MSSQL2K8\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\FOOPORTAL_SP2010_Config_log.LDF'
VLF SeqNo: x864 VLFBase: x172d0000 LogBlockOffset: x176b1800
SectorStatus: 2 LogBlock.StartLsn.SeqNo: x771 LogBlock.StartLsn.Blk: x1f0c
Size: x400 PrevSize: x200
Run Code Online (Sandbox Code Playgroud)
我知道这表明磁盘硬件和/或 IO 子系统存在问题,我们一直在与托管提供商合作。具体来说,这似乎是 /a 磁盘上的一个“坏点”,因为该数据库的日志文件一直报告它,但过去几周其他 6 个数据库日志备份没有报告其他错误,也不适用于 20 多个其他数据库的完整数据备份中的任何一个。
我的直接问题是客户端已经以这种方式运行了几个星期,因为这是一项强制要求的 24x7 服务,他们一直无法给我一个停机服务窗口来解决这个问题,直到今晚(突然)2 小时. 不幸的是,数据库损坏和这种管理工作不是我在 SQL Server 中的专长,我不确定最好/最安全/最可靠的方法是什么。
我现在的初步计划是:
我对此的担忧/焦虑是:
欢迎任何其他建议。
如果您的日志文件已损坏,我担心备份/恢复会保留损坏。我的方法(可能会更快完成)是:
要附加数据库并重建日志文件,它只是CREATE DATABASE语句中的附加语法:
CREATE DATABASE [foo]
ON (FILENAME=<<Path to data file>>)
FOR ATTACH_REBUILD_LOG;
Run Code Online (Sandbox Code Playgroud)
这将强制 SQL Server 在附加数据库时重建日志文件。
这样做的风险是丢失在完成完整备份和分离数据库之间发生的任何事务,但听起来这将是最小的风险。如果您可以在停机时间窗口开始时“冻结”Sharepoint,这将有助于降低该风险。
归档时间: |
|
查看次数: |
13623 次 |
最近记录: |