Майк прав, что сообщение об ошибке вы получаете от самого приложения Management Studio, а не от SQL Server. Это память на вашей локальной рабочей станции, которая была исчерпана, вероятно, из-за попытки вытянуть 16 миллиардов строк в клиентское приложение (рендеринг такого количества данных в сетке довольно дорог с точки зрения памяти, поэтому постарайтесь ограничить свои запросы, используя TOP
etc - Я не знаю, какие практические действия вы могли бы сделать с достаточным количеством данных, чтобы все равно использовать всю вашу локальную память).
Но я хочу решить еще одну проблему: использование диспетчера задач для оценки объема памяти, используемого SQL Server. Не делай этого; это наглый лжец Копирование из этого ответа (ваш вопрос двоякий, поэтому я не могу закрыть его как дубликат):
Вы НИКОГДА, НИКОГДА не могли доверять диспетчеру задач, чтобы сообщить вам, сколько памяти использует SQL Server. Прекратите использовать диспетчер задач для этого, точка. Используйте счетчик производительности - вы также можете запросить счетчик производительности, используя DMV:
SELECT object_name, cntr_value
FROM sys.dm_os_performance_counters
WHERE counter_name = 'Total Server Memory (KB)';
Вы можете сохранить его как ярлык запроса в «Инструменты»> «Параметры»> «Среда»> «Клавиатура»> «Ярлыки запроса» и получить точные результаты в окне запроса гораздо быстрее, чем получать неточные результаты из диспетчера задач.
Вы также можете проверить давление памяти (и можете ли вы что-нибудь с этим сделать), используя эти запросы:
SELECT object_name, cntr_value
FROM sys.dm_os_performance_counters
WHERE counter_name IN ('Total Server Memory (KB)', 'Target Server Memory (KB)');
-- SQL Server 2012:
SELECT physical_memory_kb FROM sys.dm_os_sys_info;
-- Prior versions:
SELECT physical_memory_in_bytes FROM sys.dm_os_sys_info;
EXEC sp_configure 'max server memory';