SQL Server связан запрос сервера не хватает памяти - PullRequest
5 голосов
/ 03 июня 2009

У меня есть файл DBF на сетевом ресурсе, который я пытаюсь выбрать в таблицу SQL Server.

Этот запрос:

SELECT * FROM OPENQUERY(MyLinkedServer, 'SELECT * FROM DP')

... выдает эту ошибку:

Поставщик OLE DB "MSDASQL" для связанного сервера "MyLinkedServer" вернул сообщение "[Microsoft] [ODBC Visual FoxPro Driver] Недостаточно памяти для сопоставления файлов." Msg 7399, уровень 16, состояние 1, строка 11 Поставщик OLE DB "MSDASQL" для связанного сервера "MyLinkedServer" сообщил об ошибке. Провайдеру не хватило памяти.
Msg 7320, уровень 16, состояние 2, строка 11 Невозможно выполнить запрос «SELECT * FROM DP» для поставщика OLE DB «MSDASQL» для связанного сервера «MyLinkedServer».

Я читал об использовании SYS (3050) для освобождения памяти FoxPro. Я не могу понять, как выполнить это на связанном сервере, хотя.

Ответы [ 2 ]

4 голосов
/ 03 июня 2009

Запросы к связанному серверу используют память из области за пределами пула буферов SQL Server, которая называется memToLeave, которая используется для обслуживания потоков соединений и теперь, помимо прочего, sql clr. На 32-разрядном компьютере его размер составляет 384 МБ, что может быть недостаточно для некоторых сценариев.

Если вам нужно настроить конфигурацию памяти SQL Server и, в частности, область memToLeave, вы найдете объяснение в следующем блоге:

Конфигурация памяти SQL Server, определение настроек memToLeave

0 голосов
/ 29 ноября 2013

Если вы используете SQL Server 2005 или даже 2008 SP1 или более раннюю версию, есть исправление для проблемы утечки памяти: http://support.microsoft.com/kb/974130

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...