我正在尝试在包含 910 万行的表上重建索引。目前碎片化程度为 88%
在 [MYTABLE] REBUILD 上更改索引 [MYINDEX]
几分钟后我从 SSMS 收到以下信息...
消息 10054,级别 20,状态 0,行 0 从服务器接收结果时发生传输级错误。 (提供程序:TCP 提供程序,错误:0 - 现有连接被远程主机强制关闭。)
几分钟后,我从管理门户收到以下信息...
运行 Transact-Sql 命令失败 无法读取响应的状态。
目前不知道该尝试什么。
最佳答案
您可以尝试使用 CREATE INDEX...WITH DROP_EXISTING 代替。只需将现有索引编写为 CREATE 并添加 DROP_EXISTING 选项,如下例所示。这将更加高效,因为它利用了现有的索引结构,从而避免了聚集索引扫描和排序。此方法将减少碎片,但不会像 REBUILD 那样解决索引损坏问题。
CREATE INDEX [MYINDEX] ON MYTABLE
(
[MYCOLUMN] ASC
)WITH (DROP_EXISTING = ON);
关于sql-server - SQL Azure - SSMS - 从服务器接收结果时发生传输级错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24353969/