可以限制一下并行度试试 如使用 select * from tbname option(maxdop 1)
with (index(xxx)) 一般都是统计信息的问题导致计划不同 更新统计信息基本都能解决 或者干脆帮他指定索引
尝试两种解决办法: 1.显示配置option(maxdop 1) 2.修改全局: sp_configure 'show advanced options', 1; GO RECONFIGURE WITH OVERRIDE; GO sp_configure 'max degree of parallelism', 1; GO RECONFIGURE WITH OVERRIDE; GO sp_configure 'show advanced options', 1; GO RECONFIGURE WITH OVERRIDE; GO
DBCC CHECKTABLE (表名)
DBCC CHECKDB有多个修复选项,其中一个是REPAIR_ALLOW_DATA_LOSS
执行由 REPAIR_REBUILD 完成的所有修复,包括对行和页进行分配和取消分配以改正分配错误、结构行或页的错误,以及删除已损坏的文本对象。这些修复可能会导致一些数据丢失。修复操作可以在用户事务下完成以允许用户回滚所做的更改。如果回滚修复,则数据库仍会含有错误,应该从备份进行恢复。如果由于所提供修复等级的缘故遗漏某个错误的修复,则将遗漏任何取决于该修复的修复。修复完成后,备份数据库。
不过,需要先备份数据库,用这个选项可以修复,但可能丢失一部分数据。
如使用
select * from tbname option(maxdop 1)
一般都是统计信息的问题导致计划不同
更新统计信息基本都能解决
或者干脆帮他指定索引
1.显示配置option(maxdop 1)
2.修改全局:
sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
sp_configure 'max degree of parallelism', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO