Вопрос

У нас проблемы с нашим сервером sql.Примерно два раза в день нам приходится перезапускать наш сервер, потому что SQL перестает отвечать на наши веб-приложения.Не похоже, что у нас проблемы со многими соединениями, поскольку одновременно активных соединений никогда не бывает более 20.Странно то, что я могу получить доступ к sql только из MS SQL Enterprise Manager 8.0.Время ожидания подключений из любого другого приложения (asp.net или SQL Server Management Studio 05).Запросы в Enterprise Manager работают нормально, поэтому я не думаю, что это проблема с блокировками.Любая помощь приветствуется.Спасибо

Это было полезно?

Решение

Что говорит журнал SQL Server?Если он чистый и (вы можете подключиться к DB локально или удаленно), а перезагрузка восстанавливает ваше приложение в известное состояние, то это предлагает проблему объединения и/или сетевую проблему

У нас была аналогичная проблема, которая была устранена без указания причины путем обновления до последней версии пакета обновления.Наша проблема проявлялась в том, что базовые сетевые подключения оставались открытыми, в то время как веб-приложение думало, что они закрыты, поэтому оно пыталось восстановить пул, а затем использовало максимальное количество подключений.В вашем вопросе говорится, что вы не достигли максимального количества подключений, но ваши симптомы схожи.Посмотрите на сетевые подключения на уровне ОС.Некоторые другие вещи, которые следует учитывать...

Можете ли вы подключиться из того же компьютера, на котором размещены ваши веб-приложения, но с помощью другого клиентского приложения, например Query Analyzer или даже bcp или isql, из командной строки?

Еще одна вещь, вызывающая удивление:Если вы можете подключиться из веб-приложения, можете ли вы ИСПОЛЬЗОВАТЬ базу данных, которую использует ваше приложение?Если да, можете ли вы чем-нибудь заняться, когда окажетесь там?

Каковы настройки параметров пула соединений веб-приложения?Вы пробовали их настроить?

удачи.

Другие советы

  • Какие-либо изменения в среде, аппаратном или программном обеспечении?
  • Какое было последнее изменение?

Просто примечание из опыта по проблемам с сетью..если сеть выходит из строя, это может вызвать скопление сетевых подключений, которое вы сможете увидеть только по счетчику производительности в мониторе производительности (perfmon), так что я бы посмотрел именно здесь.

Если изменений в среде нет, возможно, база данных нуждается в хорошем обслуживании, например, в консолидации таблиц и индексов, отправке журналов в резервное копирование или их очистке, а также в любых действиях администратора базы данных по очистке.

Ранее у меня была похожая проблема с MySQL, когда незанятые соединения были помечены как устаревшие, и время ожидания истекло, и в конце концов мне пришлось перезапустить приложение. Возможно, в вашем пуле соединений есть конфигурация, которую можно использовать?

Некоторые вопросы, которые могут помочь кому-то помочь вам:

<Ол>
  • Какую версию SQL Server вы используете?
  • На сервере работает еще что-нибудь?
  • Вы говорите, что не можете получить к нему доступ от определенных клиентов - время ожидания истекло. Вы имеете в виду, что время ожидания просто при подключении или при выполнении запросов?
  • Работает ли он одинаково в этих приложениях на каждом клиентском компьютере?
  • Если сам SQL-сервер бездействует и не замечено никаких блокировок, могут быть проблемы с сетью, брандмауэром или антивирусом? Или просто серверный RAID-массив умирает.

    Что происходит с оперативной памятью в то время. Может быть, вы разрушаете с RAM

    Вы просматриваете свои журналы SQL, чтобы увидеть, есть ли расширение или что-то необычное?

    Вы профилируете, чтобы увидеть, что работает, когда он застрял?

    Ищете ли вы в журналах событий на коробке ненормальную активность?

    Вы перезапускаете только SQL Server или перезапускаете весь блок?

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top