ERP中某单据无法添加,一直报“超时”错误修复方法(dbcc checkdb('AErp_HC', repair_allow_data_loss)

问题背景

一客户“销售发货单”反馈无法添加,不管是一条数据还是多条数据,都是转半天后报“超时”的错误。


测试+检查+疑问

经检查核实(关闭所有check、EV、知会、审批,还是报超时错误)未找到症结;使用SQL Server Profiler跟踪亦未发现有其他语句影响效率,但可以发现发货单新增写入数据时时间很长占用资源很大,切久久不会释放,如下图:

再次检查

这说明系统正常单据写入出现问题;后寻求波哥协助,通过 语句 dbcc checkdb('AErp_HC') 检查该数据发现异常;

解决

通过修复语句完成对数据库修复   dbcc checkdb('AErp_HC', repair_allow_data_loss);


注意:

A.为保险起见,需要先备份数据库;

B.执行修复语句时报错提示:“未处理修复语句,数据库需处于单用户模式下。”

将数据库设置为单用户模式:SQL对象资源管理器/找到对应数据库AErp_HC/右击-属性/选项/状态限制访问做如下设置

设置好后,再次执行修复语句即可,修复后测试,发货单可正常保存。


分析

预计是日常服务器非正常断电、SQL进程异常终止或其他原因引起!最终完美解决~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容