sqlserver关于 数据损坏|修复 问题

当遇到数据库连接中断并尝试使用DBCC CHECKTABLE进行修复时,若在单用户模式下执行修复语句DBCC CHECKTABLE('表名', REPAIR_ALLOW_DATA_LOSS)会触发消息7919。为解决此问题,首先需要将数据库切换至单用户模式,并执行相应的修复命令。修复完成后,重新切换回多用户模式以确保数据库恢复正常。

Location: q:\SPHINX\NTDBMS\storeng\drs\include\record.inl:1447
Expression: m_SizeRec > 0 && m_SizeRec <= MAXDATAROW
SPID: 53
Process ID: 380
连接中断

先运行    DBCC CHECKTABLE('表名',REPAIR_ALLOW_DATA_LOSS )

然后会报 :

DBCC CHECKTABLE('dtr_shch_m1',REPAIR_ALLOW_DATA_LOSS )

服务器: 消息 7919,级别 16,状态 3,行 1
未处理修复语句。数据库需要处于单用户模式下。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

我们在:

alter database lt_erp set single_user with rollback immediate
go
dbcc checktable('表名',repair_allow_data_loss)
go

他就OK了~~~

支持中文,非DEMO版,绝对可用。 核心功能是修复因各种原因损坏或无法访问的 Microsoft SQL Server 数据库主数据文件 (.MDF) 和辅助数据文件 (.NDF),并从中提取尽可能多的可用数据。 主要功能特点: 修复严重损坏: 处理各种导致 SQL Server 数据库无法附加或访问的错误,例如: 823 错误 (I/O 错误) 824 错误 (逻辑一致性错误) 605 错误 (尝试在数据库中提取逻辑页失败) 数据库可疑 (SUSPECT) 状态 DBCC CHECKDB 命令报告严重错误 文件头损坏 页面撕裂、校验和错误 意外关机、硬件故障(磁盘坏道)、病毒攻击、软件故障等导致的损坏。 绕过 SQL Server 引擎: 该工具不依赖 SQL Server 实例本身来读取损坏的文件。它直接解析 MDF/NDF 文件的内部结构,即使文件无法附加到 SQL Server,也能尝试读取其中的数据页。 数据提取恢复: 扫描损坏的文件,识别并提取其中包含的表结构 (Schema) 和 实际数据 (Records)。 支持恢复各种数据类型。 恢复选项: 生成 SQL 脚本: 将恢复出来的表结构和数据生成为标准的 .SQL 脚本文件。这是最常用和最灵活的方式,允许用户在目标 SQL Server 上执行脚本重建数据库和导入数据。 导出到数据库: 直接将恢复的数据插入到一个新的或现有的、运行中的 SQL Server 数据库中(需要提供连接信息)。 导出到 CSV 文件: 将恢复出来的数据导出为 .CSV 文件,方便在其他程序(如 Excel)中查看或导入到其他系统。 选择性恢复: 通常允许用户选择要恢复的特定数据库对象(表),而不是强制恢复整个文件的所有内容,节省时间。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值