尝试打开新的空白查询窗口时,SQL Server Management Studio中的内存不足,没有打开查询

问题描述 投票:0回答:2

在之前工作正常的计算机上重新启动后发生。

内存不足,无法继续执行程序

在SQL Server Management Studio(2016年,2017年)中尝试打开一个新的空白查询窗口时。

我已经尝试重新启动应用程序,修复2017安装并重新启动。

我发现这个错误的每一个提及涉及人们试图执行过大的查询或查询结果集太大。

sql-server
2个回答
1
投票

这对于评论来说太大了,但我道歉,因为它不是真正的答案;更多的评论。

SSMS在使用后不会释放内存,它只是一个32位应用程序。因此,如果您运行的查询确实填满了它的完整内存分配(2GB),然后尝试运行另一个查询(无论多么简单),那么您将收到此错误。

解决方案是不运行将在SSMS中返回大量结果集的查询,它的设计并未考虑到这一点。如果用户计划导出它,请使用其他工具。 bcpsqlcmd是2个完美的合适工具。如果这是大型数据导出的常见任务,您可能还需要考虑使用SSIS。当然,还有很多其他选项,我刚刚列出了一些(Microsoft)选项,它们也是SQL Server产品的一部分。

无论哪种方式,SSMS都不是为返回大量结果集而设计的。它首先是一个开发工具,允许用户从容易返回的结果集中提取数据。


0
投票

事实证明(在这种情况下)这是一个奇怪的共享权限问题。重新启动导致重定向用户的HOME文件夹以重新映射到网络上的共享。由于在策略实施后机器尚未重新启动,因此在重新启动之前它尚未生效。

这本身是无害的,但托管网络主文件夹的共享权限存在问题,导致用户没有对自己主目录的写权限。

稍后会明白这一点,因为尝试创建新查询窗口的活动没有错误,并且有一个有意义的“无法创建文件xyz”类型错误。

© www.soinside.com 2019 - 2024. All rights reserved.