Назад | Перейти на главную страницу

Почему из-за сбоев входа в систему SQL 2005 может сбрасывать данные?

У нашего сервера SQL 2005 начался тайм-аут и, наконец, 26 октября он перестал отвечать. Журналы приложений показали массу 17883 событий, приведших к перезагрузке. После перезагрузки все было нормально, но мы все еще ломали голову. Перенесемся на 6 дней ... это случилось снова. Затем снова через 2 дня. Вчера вечером. Сегодня это случилось трижды слишком далеко. Временная шкала довольно предсказуема, когда это происходит:

  1. Резервные копии журналов трансляций.
  2. Ошибка входа для "user2".
  3. Минидамп
  4. Еще один минидамп для планировщика
  5. Повторено 17883 события.
  6. Сервер постепенно выходит из строя, пока не перестанет принимать запросы.
  7. Перезагрузка - это все, что нас снова заводит (пластырь)

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

Сегодня мы впервые попробовали остановить службы вместо перезагрузки. Все службы остановились сами по себе, за исключением службы SQL Server. Мы, наконец, выполнили «конечную задачу» и смогли вернуть все обратно. Он работал нормально около 30 минут, пока мы снова не увидели таймауты и 17883. На этот раз, вероятно, из-за того, что мы не перезагружались полностью, мы увидели группу из 844 событий, смешанных с событиями 17883.

Вся наша техническая команда ломает голову над некоторыми идеями, которые мы обсуждаем:


Просмотр журнала SQLDUMP0151.log во время одного из сбоев. Есть несколько "неудачных попыток входа в систему" и два дампа стека. 1-й - нормальный дамп стека, 2-й - дамп планировщика. Вот отрывок: (извините за отсутствие разрывов строк)

2009-11-10 11: 59: 14.95 spid63 Использование xpsqlbot.dll версии 2005.90.3042 для выполнения расширенной хранимой процедуры xp_qv. Это только информационное сообщение; От пользователя не потребуется никаких действий. 2009-11-10 11: 59: 15.09 spid63 Использование xplog70.dll версии 2005.90.3042 для выполнения расширенной хранимой процедуры xp_msver. Это только информационное сообщение; От пользователя не потребуется никаких действий. 2009-11-10 12: 02: 33.24 Ошибка входа в систему: 18456, уровень серьезности: 14, состояние: 16. 2009-11-10 12: 02: 33.24 Ошибка входа в систему для пользователя «standard_user2». [КЛИЕНТ: 50.36.172.101] 2009-11-10 12: 08: 21.12 Ошибка входа в систему: 18456, уровень серьезности: 14, состояние: 16. 2009-11-10 12: 08: 21.12 Ошибка входа в систему для пользователя 'standard_user2'. [КЛИЕНТ: 50.36.172.101] 2009-11-10 12: 13: 49.38 Ошибка входа в систему: 18456, уровень серьезности: 14, состояние: 16. 2009-11-10 12: 13: 49.38 Ошибка входа в систему для пользователя 'standard_user2'. [КЛИЕНТ: 50.36.172.101] 2009-11-10 12: 15: 16.88 Ошибка входа в систему: 18456, уровень серьезности: 14, состояние: 16. 2009-11-10 12: 15: 16.88 Ошибка входа в систему для пользователя 'standard_user2'. [КЛИЕНТ: 50.36.172.101] 2009-11-10 12: 18: 24.41 Ошибка входа в систему: 18456, уровень серьезности: 14, состояние: 16. 2009-11-10 12: 18: 24.41 Ошибка входа в систему для пользователя 'standard_user2'. [КЛИЕНТ: 50.36.172.101] 2009-11-10 12: 18: 38.88 spid111 Использование 'dbghelp.dll' версии '4.0.5' 2009-11-10 12: 18: 39.02 spid111 *** Дамп стека отправляется на C : \ Program Files \ Microsoft SQL Server \ MSSQL.1 \ MSSQL \ LOG \ SQLDump0149.txt 2009-11-10 12: 18: 39.02 spid111 SqlDumpExceptionHandler: процесс 111 сгенерировал фатальное исключение c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server завершает этот процесс. 2009-11-10 12: 18: 39.02 spid111 * ************************************** **************************************** 10-11-2009, 12:18: 39.02 spid111 * 2009-11-10 12: 18: 39.02 spid111 * НАЧАТЬ ДАМП СТЕКА: 2009-11-10 12: 18: 39.02 spid111 * 11.10.09 12:18:39 spid 111 2009-11-10 12: 18: 39.02 spid111 * 2009-11-10 12: 18: 39.02 spid111 * 2009-11-10 12: 18: 39.02 spid111 * Адрес исключения = 0159D56F Module (sqlservr + 0059D56F) 2009-11-10 12:18: 39.02 spid111 * Код исключения = c0000005 EXCEPTION_ACCESS_VIOLATION 2009-11-10 12: 18: 39.02 spid111 * Нарушение прав доступа произошло при записи адреса 00000000 2009-11-10 12: 18: 39.02 spid111 * Входной буфер 138 байт - 2009-11-10 12:18: 39.02 spid111 * "NRSC _ PTA 22 00 4e 00 52 00 53 00 43 00 5f 00 50 00 54 00 41 00 2009-11-10 12: 18: 39.02 spid111 * C _ QA. Dbo. 43 00 5f 00 51 00 41 00 2e 00 64 00 62 00 6f 00 2e 00 2009-11-10 12: 18: 39.02 spid111 * U sp S el N ex 55 00 73 00 70 00 53 00 65 00 6c 00 4e 00 65 00 78 00 2009-11 -10 12: 18: 39.02 spid111 * t A ccoun t 74 00 41 00 63 00 63 00 6f 00 75 00 6e 00 74 00 00 00 2009-11-10 12: 18: 39.02 spid111 * @ int F orm I 0a 40 00 69 00 6e 00 74 00 46 00 6f 00 72 00 6d 00 49 2009-11-10 12: 18: 39.02 spid111 * D & 8 @ tx 00 44 00 00 26 04 04 38 00 00 00 09 40 00 74 00 78 00 2009-11-10 12: 18: 39.02 spid111 * t A lias § 74 00 41 00 6c 00 69 00 61 00 73 00 00 a7 0f 00 09 04 2009-11-10 12: 18: 39.02 spid111 * Ð GQE9732 d0 00 00 07 00 47 51 45 39 37 33 32 2009 -11-10 12: 18: 39.02 spid111 *
2009-11-10 12: 18: 39.02 spid111 * 2009-11-10 12: 18: 39.02 spid111 * КОНЕЦ БАЗЫ МОДУЛЯ 2009-11-10 12: 18: 39.02 spid111 * sqlservr 01000000 02C09FFF 01c0a000 2009-11-10 12 : 18: 39.02 spid111 * ntdll 7C800000 7C8C1FFF 000c2000 2009-11-10 12: 18: 39.02 spid111 * kernel32 77E40000 77F41FFF 00102000

UspSelNex - это хранимая процедура, которая всегда работает, когда у вас есть проблема?