- 转到对象资源管理器中的随机表
- 将其扩展到索引
- 右键单击索引 - 大约需要10 秒才能出现
如果我尝试DROP & CREATE INDEX
从上下文菜单中创建脚本,则需要类似的时间。
我查看了 Profiler 跟踪,它有大约 4 页的大量重复查询。如果我查看任务管理器的性能/以太网选项卡,我发现它以 800kb-1mb 的速率提供信息,并以大约 200kb 左右的速度发送信息。
这是一个错误吗?特征?我错过了一些简单的设置吗?
- SSMS 版本:13.0.15900.1。
- 将 SSMS 更新到 13.0.16000.28,但没有任何效果。
- SQL Server 版本:2016 年累积更新 2。
- 我安装了 SQL Prompt 7。卸载了它,但没有任何改变。
SELECT COUNT(*) FROM sys.indexes;
1979 年回归。SELECT COUNT(*) FROM sys.partitions;
1973 年回归。
我有自己的盒子,所以没有争议。另外,这个盒子是我用过的最快、规格最好的盒子。除了这个特定的操作之外,一切都很好。
我通过将身份验证方法从“Windows 身份验证”更改为“SQL Server 身份验证”来解决此问题。
我不知道为什么。
在此更改之前,我必须等待最多 1 分钟才能出现上下文菜单。
更改后的上下文菜单是即时的。
在我打开 SSMS (2012) 一个多星期或更长时间并且我一直在运行活动监视器/复制监视器/AO 仪表板之类的东西后,我时不时地注意到这一点
检查打开另一个 SSMS 实例以查看它是否需要相同的时间长度,如果它明显更短,则两者都关闭(我不是即时说话,只是 2-3 秒而不是 9-10 秒)
然后保存所需的脚本并关闭该计算机上运行的所有 SSMS 副本并打开它们,应该会恢复正常时间。
这在过去对我有用几次。
有很多关于这种行为的信息可以追溯到几年前。这是一个线程:SQL Server Management Studio 缓慢打开新窗口
公共线程似乎是 SSMS 正在尝试到达 Internet 中的某个位置。另一件事是更改用户反馈选择加入设置。
也许这些选项之一会加快速度
以我的经验,这是因为 SSMS 每次打开上下文菜单时都会运行(或检查运行授权)某些系统存储过程。当我去查看我无权更改表等的服务器上的表定义时,我意识到了这一点。右键单击上下文菜单的服务器响应是吐回一长串系统存储过程我在上下文菜单出现之前没有访问权限。一旦我关闭了“拒绝访问”对话框,就会出现上下文菜单。每次我调用上下文菜单时都会发生这种情况。
即使您确实拥有所有需要的权限,SSMS 似乎仍然会执行此检查。如果您的目标服务器连接速度较慢,则需要更长的时间。几乎就像它对菜单上的每个项目重新进行身份验证一样,尽管这只是一个猜测。它不仅缓存第一个响应而不是每次都缓存,这似乎很疯狂。单身的。时间。
UI 中非常常用的部分设计非常糟糕。