Корпорация Майкрософт распространяет исправления Microsoft SQL Server 2008 в виде одного скачиваемого файла. Так как исправления являются накопительными, каждый новый выпуск содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений SQL Server 2008 года.
Проблемы
На компьютере под управлением Microsoft SQL Server 2008 при создании связанного сервера с помощью поставщика sql Native Client (Sqlncli.dll) возникает одна или несколько из следующих проблем.Примечание. Эти проблемы также возникают в Microsoft SQL Server 2005 с пакетом обновления 3 (SP3). Однако исправление в этой статье не применяется к SQL Server 2005 с пакетом обновления 3 (SP3).
Проблема 1
Рассмотрим следующий сценарий.
-
В SQL Server Management Studio откройте окно Создать связанный сервер и создадите связанный сервер с помощью одной из следующих настроек:
-
Поставщик sql Native Client с типом сервераSQL Server
-
Поставщик sql Native Client (не SQL Native Client 10) с типом сервера в качестве другого источника данных
-
Поставщик Microsoft OLE DB для SQL Server с типом сервера в качестве другого источника данных
-
-
Чтобы просмотреть связанные серверы, разверните каталог связанных серверов в SQL Server Management Studio.
В этом сценарии служба SQL Server неожиданно завершает работу или в папке журнала ошибок SQL Server создается файл мини-дампа. Эта проблема продолжается до тех пор, пока служба SQL Server не будет остановлена. Кроме того, SQL Server Management Studio сообщает следующее сообщение об ошибке:TITLE: Microsoft SQL Server Management Studio------------------------------Failed для получения данных для этого запроса. (Microsoft.SqlServer.Management.Sdk.Sfc)Для получения справки щелкните : http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476------------------------------ADDITIONAL INFORMATION:Произошло исключение при выполнении инструкции или пакета Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)срок действия ------------------------------Timeout истек. Время ожидания, прошедшее до завершения операции, или сервер не отвечает. (Microsoft SQL Server, ошибка: -2)Примечание. Эта проблема не возникает при выполнении запроса связанного сервера при использовании поставщика sql Native Client с типом серверав качестве SQL Server.
Проблема 2
Рассмотрим следующий сценарий.
-
Связанный сервер создается с помощью поставщика Microsoft OLE DB для драйверов ODBC.
-
Источник данных ODBC создается с помощью поставщика собственного клиента SQL с типом сервера в качестве другого источника данных.
В этом сценарии связанный сервер не возвращает результатов.
Решение
Исправление этой проблемы было впервые выпущено в накопительном пакете обновления 7 для SQL Server 2008 с пакетом обновления 1 (SP1). Чтобы получить дополнительные сведения об этом накопительном пакете обновления, щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт: -
979065Накопительный пакет обновления 7 для SQL Server 2008 с пакетом обновления 1 (SP1) Примечание. Учитывая, что сборки являются накопительными, каждый новый выпуск исправления содержит все исправления и все исправления безопасности, включенные в предыдущий выпуск исправления SQL Server 2008 года. Рекомендуется применить последний выпуск исправления, содержащий это исправление. Для получения дополнительных сведений щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
970365Сборки SQL Server 2008 года, выпущенные после выпуска SQL Server 2008 с пакетом обновления 1 (SP1) Microsoft SQL Server 2008, создаются для конкретных пакетов обновления SQL Server. Необходимо применить исправление SQL Server 2008 с пакетом обновления 1 (SP1) к установке SQL Server 2008 с пакетом обновления 1 (SP1). По умолчанию любое исправление, предоставляемое в пакете обновления SQL Server, входит в следующий пакет обновления SQL Server.
Дополнительная информация
Вы можете подтвердить версию файлов Sqlncli.dll и Sqlservr.exe, выполнив следующий запрос:
select * from sys.dm_os_loaded_modules where name like '%sqlncli.dll' or name like '%sqlservr.exe'
Если вы используете Microsoft SQL Server 2008 с пакетом обновления 1 (SP1) или более поздние версии Microsoft SQL Server 2008, запрос вернет следующие сведения о версии:
-
Файл Sqlncli.dll будет иметь версию более поздней, чем 9.0:3207.0.
-
Версия файла Sqlservr.exe будет выше или равна 10.0:2531.0, но раньше 10.0:2766.0.
Если вы используете Microsoft SQL Server 2008 RTM или более поздние версии RTM SQL Server 2008, запрос вернет следующие сведения о версии:
-
Версия файла Sqlncli.dll будет выше версии 9.0:3207.0.
-
Версия файла Sqlservr.exe будет выше 10.0:1600.0 или равна 10.0:1835.0.
Обходное решение
Чтобы обойти эти проблемы, выполните следующие действия:Обходное решение 1:1. Удалите сбой связанного сервера.2. Создайте связанный сервер с помощью поставщика SQL Server Native Client 10.0 (SQLNCLI10). Для этого: a. Щелкните правой кнопкой мыши связанные серверы и выберите Создать связанный сервер. B. Выберите Другой источник данных и выберите SQL Server Native Client 10.0 для параметра Поставщик.Обходной путь 2.
-
Создайте подраздел реестра с именем SQLNCLI по следующему пути:
HKLM\Software\Microsoft\DataAccess
-
Создайте запись реестра типа REG_DWORD с именем SQLOSPartitioning в этом подразделе.
-
Задайте для этой записи значение 0x0.
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Дополнительная информация
|
Программное обеспечение для правил |
Заголовок правила |
Описание правила |
Версии продуктов, по которым вычисляется правило |
|
Помощник по System Center |
SQL Server отсутствуют KB979779 обновления, чтобы предотвратить повреждение памяти собственного клиента SQL |
На этом сервере присутствует поставщик sql Native Client, соответствующий SQL Server 2005. Эта более старая версия SQLNCLI.dll может быть загружена в SQL Server 2008 и SQL Server 2008 R2 при перечислении поставщиков и создании связанных серверов. Конкретные сборки SQL Server 2008 и SQL Server 2008 R2 могут столкнуться с проблемами и зависаниями при создании или использовании связанного сервера, созданного с помощью этого затронутого SQLNCLI.dll. Обновите затронутые экземпляры SQL Server 2008 и SQL Server 2008 R2 с помощью необходимых исправлений или избегайте использования этой SQLNCLI.dll при создании связанных серверов. |
Ссылки
Чтобы получить дополнительные сведения о модели добавочного обслуживания для SQL Server, щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
935897 Модель добавочного обслуживания доступна в команде SQL Server для доставки исправлений для обнаруженных проблем. Дополнительные сведения о схеме именования для SQL Server обновлений щелкните следующий номер статьи, чтобы просмотреть статью базы знаний Майкрософт:
822499Новая схема именования для пакетовобновлений программного обеспечения Microsoft SQL Server. Дополнительные сведения о терминологии обновлений программного обеспечения щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт