Устранение неполадок 7105 Msg в SQL Server

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

Проблема

Запрос может столкнуться Msg 7105 не может получить доступ к данным больших объектов (LOB) ссылается строка страницы базы данных. Приложение будет возникать сообщение, которое выглядит примерно так:

Сообщение 7105, уровень 22, состояние 6, строка 1
Идентификатор базы данных 11, страницы (255:177), разъем 1 для типов данных LOB узел не существует. Обычно причиной операции, которые могут считывать незафиксированные данные на странице данных. Выполните инструкцию DBCC CHECKTABLE

Так как эта ошибка 22 уровень серьезности, будет разорвано сервером. Это сообщение об ошибке также записывается в файл SQL ERRORLOG и журнал событий приложений Windows с EventID = 7105.

Причина

Эта ошибка может возникнуть по одной из следующих причин:

  1. Проблему повреждения базы данных существует в пределах одной страницы базы данных или на странице LOB структуры ссылок на страницы базы данных
  2. ЧТЕНИЕ НЕЗАФИКСИРОВАННОГО УРОВНЯ ИЗОЛЯЦИИ или в запросе подсказку NOLOCK использует запрос, который используется при возникновении сбоя
  3. Проблема в ядро SQL Server вызывает запрос к этой ошибке.

Обратитесь к разделам разрешение и дополнительная информация для определения того, что является причиной для конкретной проблемы и соответствующего решения.

Решение

  1. Как сообщение указывает, сначала необходимо принять является для выполнения инструкции DBCC CHECKDB в базе данных или DBCC CHECKTABLE в таблице где возникла проблема.
    • Идентификатор базы данных, содержащихся в сообщении.
    • Чтобы узнать точное таблицы без запуска инструкции DBCC CHECKDB необходимо выяснить, какие таблицы осуществлялся запроса произошла ошибка. Одним из способов является использование профилировщика SQL для запроса. Однако в SQL Server 2008 и SQL Server 2008 R2 можно найти запрос с помощью сеанса расширенных событий system_health. Видеть эту ссылку для получения дополнительных сведений об использовании сеансов system_health: http://blogs.msdn.com/psssql/archive/2008/07/15/supporting-sql-server-2008-the-system-health-session.aspx
    • Как и в случае любой проблемы согласованности базы данных, восстановление из проверенной рабочей резервной копии, содержащей эту проблему можно устранить эти ошибки.
    • Тем не менее если не удается восстановить из резервной копии, выполните рекомендации для инструкции DBCC CHECKDB и DBCC CHECKTABLE для устранения ошибок. Это возможно, что это приведет к потере данных. Для получения дополнительных сведений об использовании CHECKDB и причины повреждения базы данных проблем обратитесь к статье: Устранение ошибок согласованности базы данных, инструкция DBCC CHECKDB
  2. Возможно, ошибка произошла, так как запрос доступа к таблице было использование уровня изоляции READ UNCOMMITTED или в запросе подсказку NOLOCK (также известный как «грязные» чтения)
    • Если инструкция DBCC CHECKDB и DBCC CHECKTABLE не показывать ошибки, связанные с этой таблицей и бизнес-данных, наиболее вероятной причиной является использование dedirty чтения. Для вашего приложения, необходимо будет либо в случае не используйте «грязные» считывания или повторить запрос.
    • Если это является причиной ошибки, имеется не проблема несогласованности фактической базы данных.
  3. Были некоторые проблемы, связанные с проблемами с SQL Server, которые привели к этой ошибке. Таким образом, следует проверить, если эта неполадка продолжает возникать применены следующие исправления:

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

Если повреждение базы данных является причиной возникновения этой проблемы, затем инструкция DBCC CHECKDB и DBCC CHECKTABLE следует сообщить об ошибках. Тем не менее эти команды не будет выдавать сообщение 7105. Что повреждена в ссылку на бизнес-структур и структур LOB, сами по себе будет зависеть от ошибок, возникающих из CHECKDB.

Например если строка страницы базы данных не ссылаться на правильно допустимым страницы LOB, могут возникнуть ошибки, подобные:

Сообщение 8929, уровень 16, состояние 1, строка 1
2137058649 Идентификатор объекта, индекса с Идентификатором 0, раздел 72057594038910976 ID, единицы ID 72057594039828480 (тип В строке данных): обнаружены ошибки в внестрочные данные с владельцем записи данных, определяемого RID 131203072 ID = (1:179:1)
Сообщение 8964, уровень 16, состояние 1, строка 1
Ошибка таблицы: объект с Идентификатором 2137058649, индекса с Идентификатором 0, секции 72057594038910976 ID, идентификатор 72057594039894016 (тип данных LOB) единицы. Нет ссылки на узел внестрочные данные на страницу (1:177), разъем 1, идентификатор 131203072 текста.
Сообщение 8965, уровень 16, состояние 1, строка 1
Ошибка таблицы: объект с Идентификатором 2137058649, индекса с Идентификатором 0, секции 72057594038910976 ID, идентификатор 72057594039894016 (тип данных LOB) единицы. Узел внестрочные данные на странице (255:177), разъем 1, текст 131203072 идентификатор ссылается страница (1:179), разъем 1, но не видны при сканировании

Различные сценарии проблема может привести к другую комбинацию ошибок. В этом примере 1:179 страница базы данных, разъем 1 ссылается на странице LOB, который не является допустимым страницы базы данных (страница 255:177). Страницы (1:177) является допустимым страницы LOB, но никогда не была ссылка на любой странице базы данных. Поэтому в этом случае проблема в том что строки в 1:179 разъем 1 страница ссылается на страницу 255:177 вместо 1:177.

Ключ для определения, будет ли ошибок инструкция DBCC CHECKDB связаны проблемы страницы LOB, поиск фразы "внестрочный данных" и «тип данных LOB».

Msg 8929 — это ошибка, связанная с страницы базы данных, ссылки на страницы больших ОБЪЕКТОВ.
Msg 8964 — это сообщение об ошибке, указывающее страницы LOB не ссылается ни одной страницы базы данных.
Msg 8965 — это сообщение об ошибке, указывающее страниц больших ОБЪЕКТОВ на странице базы данных, но не существует как допустимый страницы

Во многих случаях с участием таких ошибок repair приведет к удалению строк данных LOB, а сами данные LOB. Алгоритм восстановления будет предпринята попытка удалить фрагменты LOB, влияет на строки базы данных, в вопросе, но не может быть гарантирована только во всех ситуациях, в зависимости от того, что повреждения в LOB «дерево».

В приведенном здесь примере сообщения, возвращенные CHECKTABLE, используя REPAIR_ALLOW_DATA_LOSS выглядеть так:

Исправление: Удалена запись для объекта 2137058649 ID, идентификатор индекса 0, раздел 72057594038910976 идентификатор единицы ID 72057594039828480 (данные В строку типа), на странице (1:179), разъем 1. Индексы будут перестроены.
Исправить: Удалить внестрочные данные столбца с Идентификатором 131203072, идентификатор 2137058649, идентификатор индекса 0, раздел 72057594038910976 идентификатор единицы 72057594039894016 идентификатор объекта (тип данных LOB) на странице (1:177), разъем 1.
Сообщение 8929, уровень 16, состояние 1, строка 1
2137058649 Идентификатор объекта, индекса с Идентификатором 0, раздел 72057594038910976 ID, единицы ID 72057594039828480 (тип В строке данных): обнаружены ошибки в внестрочные данные с владельцем записи данных, определяемого RID 131203072 ID = (1:179:1)
Ошибка была восстановлена.
Сообщение 8964, уровень 16, состояние 1, строка 1
Ошибка таблицы: объект с Идентификатором 2137058649, индекса с Идентификатором 0, секции 72057594038910976 ID, идентификатор 72057594039894016 (тип данных LOB) единицы. Нет ссылки на узел внестрочные данные на страницу (1:177), разъем 1, идентификатор 131203072 текста.
Ошибка была восстановлена.
Сообщение 8965, уровень 16, состояние 1, строка 1
Ошибка таблицы: объект с Идентификатором 2137058649, индекса с Идентификатором 0, секции 72057594038910976 ID, идентификатор 72057594039894016 (тип данных LOB) единицы. Узел внестрочные данные на странице (255:177), разъем 1, идентификатор 131203072 текста ссылается страница (1:179), разъем 1, но не видны во время сканирования.
Не удалось исправить эту ошибку

Последнее сообщение об ошибке «не удалось исправить эту ошибку» не соответствует действительности. Ошибка фактически было исправить, так как строка страницы базы данных, Недопустимая страница (255:177), на который указывает была удалена.

Примечание. Это ЭКСПРЕСС-ПУБЛИКАЦИЯ, подготовленная непосредственно службой технической поддержки Майкрософт . Сведения, содержащиеся в данном документе, предоставлены в качестве отклика на возникшие проблемы. Из-за срочности в материалах могут быть опечатки, и в любое время и без уведомления в них могут быть внесены изменения. Чтобы получить дополнительные сведения, см. Условия использования.

Свойства

Код статьи: 2015760 - Последний отзыв: 30 мая 2011 г. - Revision: 6.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
Ключевые слова: 
kbmt KB2015760 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:2015760

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

 

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