我们在SQL Express 2005上运行的RMS_Headquarters(访问数据库的前端应用程序)数据库出现了问题。
检查服务器上的所有事件日志后,我遇到了一些与硬盘和sqlserver相关的错误。
磁盘错误快照
sqlexpress错误
我已执行以下两个命令来查找磁盘或sql数据库中的任何错误。
chkdsk :系统在硬盘上发现坏扇区我运行此代码时没有/ f来获取信息。
DBCC CHECKDB与ALL_ERRORMSGS,NO_INFOMSGS ,结果如下。
我运行了chkdsk / f来解决磁盘错误。这个命令有助于启动和运行hq数据库(应用程序从这一点开始工作正常)。我还在SQL Server上运行了DBCC CHECKDB与ALL_ERRORMSGS,NO_INFOMSGS来检查数据库状态。 DBCC执行时几乎没有错误,请参见下文。
Msg 8928, Level 16, State 1, Line 1
Object ID 1429580131, index ID 1, partition ID 72057598907908096, alloc unit ID 72057598960730112 (type In-row data): Page (1:235150) could not be processed. See other errors for details.
Msg 8941, Level 16, State 2, Line 1
Table error: Object ID 1429580131, index ID 1, partition ID 72057598907908096, alloc unit ID 72057598960730112 (type In-row data), page (1:235150). Test (sorted [i].offset <= m_freeData)
failed. Slot 0, offset 0xffff is invalid.
Msg 8976, Level 16, State 1, Line 1
Table error: Object ID 1429580131, index ID 1, partition ID 72057598907908096, alloc unit ID 72057598960730112 (type In-row data). Page (1:235150) was not seen in the scan although its
parent (1:306430) and previous (1:235149) refer to it. Check any previous errors.
Msg 8978, Level 16, State 1, Line 1
Table error: Object ID 1429580131, index ID 1, partition ID 72057598907908096, alloc unit ID 72057598960730112 (type In-row data). Page (1:235151) is missing a reference from previous page
(1:235150). Possible chain linkage problem.
CHECKDB found 0 allocation errors and 4 consistency errors in table 'TenderEntry' (object ID 1429580131).
CHECKDB found 0 allocation errors and 4 consistency errors in database 'RMS_Headquarters'.
repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKDB (RMS_Headquarters).
系统信息:
我在星期日(2015年4月20日)晚上有备份,该备份不报告任何错误。
请告诉我在这件事情上应该做些什么: (a)从2015年4月20日的备份恢复数据库(从21日起的数据将丢失) (b)继续使用该数据库并忽略'tenderentry'表错误
我们将不胜感激。
此致 PRATIK
答案 0 :(得分:0)
(a)从2015年4月20日的备份恢复数据库(从21日开始的数据将丢失)
是数据将因2015年4月20日您的备份上次更新而丢失。
(b)继续使用此数据库并忽略'tenderentry'表错误
就个人而言,我不会建议这样做,因为将来你可能会有更大的腐败问题。将腐败定为早期阶段应该优先考虑。它有助于维护数据库健康。
请不要使用repair_allow_data_loss运行DBCC CHECKDB而不知道它的效果。