При использовании дескриптора файла FileStream доступа в SQL Server 2008 транзакции транзакция может случайным образом не зафиксировать в Windows Server 2003 или Windows XP Professional x 64 Edition

Переводы статьи Переводы статьи
Код статьи: 955280 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Проблема

На компьютере под управлением Windows Server 2003 или Windows XP Professional x 64 Edition, при использовании OpenSqlFilestream API или.Класс NET SqlFilestream для получения дескриптора файла FileStream доступ в транзакции в Microsoft SQL Server 2008, транзакция случайным образом не сможет зафиксировать. При возникновении этой проблемы одной из следующих ошибок записывается в файл журнала SQL Server:
  • 3910 (Контекст транзакции используется другим сеансом)
  • 3981 (Транзакции невозможно выполнить операцию, так как имеются ожидающие запросы, работающие в этой транзакции)
  • 3922 (Нельзя включить в транзакцию, так как транзакции не существует)
Причиной этой проблемы не связанные с функцией FILESTREAM в SQL Server 2008. Тем не менее часто происходит эта проблема при использовании функции FILESTREAM в SQL Server 2008.

Причина

Данная проблема возникает из-за ошибки в службе сервера. Служба сервера неправильно закрытия файла задержки обработки. Таким образом SQL Server 2008 не может выполнять операции фиксации.

Решение

Сведения об исправлении

Windows Server 2003

Исправление выпущенного корпорацией Майкрософт. Тем не менее он предназначен для устранения проблемы, описанной в этой статье. Предлагаемое исправление должно применяться исключительно в системах, в которых обнаружена эта специфическая неполадка. Это исправление находится на стадии дополнительного тестирования. Таким образом Если вы не представляет особой эта проблема, рекомендуется отложить ее решение до выхода ближайшего пакета обновления, содержащего это исправление.

Чтобы решить проблему немедленно, обратитесь в службу технической поддержки Майкрософт для получения исправления. Полный список телефонов служб поддержки клиентов корпорации Майкрософт и сведения о стоимости поддержки посетите следующий веб-узел корпорации Майкрософт:
http://support.Microsoft.com/contactus/?ws=Support
Примечание В особых случаях, предусмотренная для звонков в службу поддержки может быть отменена, если специалистом службы поддержки Майкрософт определяет, что решения проблемы является специально выпущенное. Затраты на обычные службы поддержки будут применяться дополнительные вопросы и проблемы, которые не соответствуют требованиям особым обновлением.
Необходимые условия
Для установки исправления необходимо наличие пакета обновления 1 для Windows Server 2003, пакет обновления 2 для Windows Server 2003, Windows XP Professional x 64 Edition или Windows XP Professional x 64 Edition пакетом обновления 2 на компьютере.
Необходимость перезагрузки
Необходимо перезагрузить компьютер после установки этого исправления.
Сведения о замене исправлений
Это исправление не заменяет ранее выпущенные исправления.
Сведения о файлах
Английская версия исправления содержит атрибуты файла (или более поздними), приведенные в следующей таблице. Дата и время для файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, следует использовать Часовой пояс на вкладке Дата и время элемент панели управления.

Windows Server 2003 с пакетом обновления 1, 32 разрядных выпусков
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.3177361,47218 Июля 2008 г.10: 15X86

Windows Server 2003 с пакетом обновления 1, 64-разрядные версии
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.3177674,81621 Июля 2008 г.07: 32X64
Windows Server 2003 с пакетом обновления 1 для систем на базе процессоров Itanium
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.31771,110,52821 Июля 2008 г.07: 32IA-64

Windows Server 2003 с пакетом обновления 2, 32 разрядных выпусков
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.4337358,40018 Июля 2008 г.12: 04X86

Windows Server 2003 с пакетом обновления 2, 64-разрядных версий
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.4337648,19221 Июля 2008 г.14: 57X64

Windows Server 2003 с пакетом обновления 2 для систем на базе процессоров Itanium
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.43371,111,55221 Июля 2008 г.14: 54IA-64

Windows XP Professional x 64 Edition

Исправление выпущенного корпорацией Майкрософт. Тем не менее он предназначен для устранения проблемы, описанной в этой статье. Предлагаемое исправление должно применяться исключительно в системах, в которых обнаружена эта специфическая неполадка. Это исправление находится на стадии дополнительного тестирования. Таким образом Если вы не представляет особой эта проблема, рекомендуется отложить ее решение до выхода ближайшего пакета обновления, содержащего это исправление.

Чтобы решить проблему немедленно, обратитесь в службу технической поддержки Майкрософт для получения исправления. Полный список телефонов служб поддержки клиентов корпорации Майкрософт и сведения о стоимости поддержки посетите следующий веб-узел корпорации Майкрософт:
http://support.Microsoft.com/contactus/?ws=Support
Примечание В особых случаях, предусмотренная для звонков в службу поддержки может быть отменена, если специалистом службы поддержки Майкрософт определяет, что решения проблемы является специально выпущенное. Затраты на обычные службы поддержки будут применяться дополнительные вопросы и проблемы, которые не соответствуют требованиям особым обновлением.
Необходимые условия
Для установки исправления необходимо наличие Windows XP Professional x 64 Edition или Windows XP Professional x 64 Edition с пакетом обновления 2 на компьютере.
Необходимость перезагрузки
Необходимо перезагрузить компьютер после установки этого исправления.
Сведения о замене исправлений
Это исправление не заменяет ранее выпущенные исправления.
Сведения о файлах
Английская версия исправления содержит атрибуты файла (или более поздними), приведенные в следующей таблице. Дата и время для файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, следует использовать Часовой пояс на вкладке Дата и время элемент панели управления.

Windows XP Professional x 64 Edition
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.3177674,81621 Июля 2008 г.07: 32X64

Windows XP Professional x 64 Edition с пакетом обновления 2
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файлаДатаВремяПлатформа
SRV.sys5.2.3790.4337648,19221 Июля 2008 г.14: 57X64

Временное решение

Важные Этот раздел, метод или задача содержит действия, о том, как внести изменения в реестр. Тем не менее при неправильном изменении реестра, могут возникнуть серьезные проблемы. Таким образом Убедитесь, что внимательно выполните следующие действия. Для дополнительной защиты резервную копию реестра перед внесением изменений. Затем при возникновении неполадок можно восстановить реестр. Для получения дополнительных сведений о том, как резервное копирование и восстановление реестра щелкните следующий номер статьи базы знаний Майкрософт:
322756 Резервное копирование и восстановление реестра Windows
Предупреждение Данный метод обхода приведет к проблемы с производительностью, когда при работе с общим файлам в системе.


Чтобы обойти эту проблему, установите значение реестра Cachedopenlimit, чтобы 0, а затем перезапустите службу сервера. Чтобы сделать это, выполните следующие действия.
  1. В редакторе реестра найдите следующий подраздел реестра:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters
  2. В группе Параметры реестра, выберите раздел, Редактирование, нажмите кнопку Новый, нажмите кнопку Значение типа DWORD, тип Cachedopenlimit, а затем нажмите клавишу ВВОД.
  3. Задайте десятичное значение для параметра реестра Cachedopenlimit 0.
  4. Перезапустите службу сервера.
Примечание По умолчанию значение Cachedopenlimit запись реестра 5, несмотря на то, что он не был установлен.

Предупреждение При задании значения 0, дескрипторы всех общих файлов не кэшируется в системе файлов. Это может вызвать проблемы с производительностью при доступе к общим файлам в системе.

Статус

Корпорация Майкрософт подтверждает, что это проблема в продуктах Microsoft, перечисленных в разделе «Относится к».

Дополнительная информация

Эта проблема также возникает в Windows Server 2008 и Windows XP 32 разрядных выпусков. Для получения дополнительных сведений об этой проблеме в Windows Server 2008 щелкните следующий номер статьи базы знаний Майкрософт:
953263На столбец FILESTREAM в SQL Server 2008 с помощью инструкции Transact-SQL инструкции может случайно не зафиксировать и привести к повреждению данных в Windows Server 2008
Для получения дополнительных сведений об этой проблеме в Windows XP 32 разрядных выпусков щелкните следующий номер статьи базы знаний Майкрософт:
955567При попытке добавить данные FILESTREAM varbinary (max) столбец в SQL Server 2008 на компьютере под управлением Windows XP может привести к повреждению данных
Для получения дополнительных сведений о терминологии, обновление программного обеспечения, щелкните следующий номер статьи базы знаний Майкрософт:-
824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт

Использование хранилища FILESTREAM

В SQL Server 2008 данные больших двоичных объектов (BLOB) могут быть данные VARBINARY(MAX) тип, который хранит данные в таблицах базы данных. Большой двоичный объект данных может также содержать данные из VARBINARY(MAX) FILESTREAM тип, который хранит данные в файловой системе. Размер данных и использования данных определяют, следует ли использовать базу данных хранилища или FILESTREAM хранения данных. Следует рассмотреть возможность использования FILESTREAM хранение при следующих условиях:
  • В среднем сохраняемые данные BLOB размером более 1 мегабайта (МБ).
  • Важно, доступ на чтение файлов.
  • При разработке приложений, использующих среднего уровня для логики приложения.
В случае большой двоичный объект данных менее 1 МБ, следует рассмотреть возможность использования базы данных хранилища. Хранение базы данных часто предоставляет лучше потоковую производительность.

Для получения дополнительных сведений посетите следующий веб-узел Microsoft Developer Network (MSDN):
http://MSDN.Microsoft.com/en-us/library/bb933993.aspx
Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.

Свойства

Код статьи: 955280 - Последний отзыв: 19 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows XP Professional x64 Edition
Ключевые слова: 
kbexpertiseadvanced kbfix kbautohotfix kbsurveynew kbqfe kbmt KB955280 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:955280

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com