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

Огромная проблема с SQL при закрытии нашего сайта

Наш веб-сайт сегодня начал отключаться как сумасшедший. Все наши клиенты считают его непригодным для использования. Единственная ошибка, которую мы можем отследить как потенциальную проблему, заключается в следующем:

Ошибка SQLAllocHandle на SQL_HANDLE_DBC Ошибка Описание ASP Категория ошибки Поставщик Microsoft OLE DB для драйверов ODBC

Я понятия не имею, что это значит и как это исправить. Кто-нибудь раньше сталкивался с этой ошибкой?

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

Как я уже сказал, я в растерянности. У кого-нибудь есть совет по этой ошибке?

РЕДАКТИРОВАТЬ

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

РЕДАКТИРОВАТЬ 2

Оказывается, на нашем сервере работает что-то под названием «ServerMask», что делает наш сервер IIS похожим на Apache для внешнего мира. Выключение решило нашу проблему. До сих пор не понимаю, почему это пошло не так, но, очевидно, это была проблема.

Спасибо всем, кто пытался помочь.

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

Номер должен быть 1 800 642 7676 (взял его из липкой ленты «на всякий случай» на дальней стороне монитора, не думаю, что он меняется вообще часто). В прошлом у меня были хорошие результаты с ними; они могут быть или не быть быстрыми, но они будут довольно тщательными.

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

Попробуйте эту строку подключения:

<connectionStrings>
    <add name="ConnString" 
          connectionString="Data Source=IPAddress\InstanceIfNeeded;
                            Initial Catalog=DBName;
                            User ID=YourID;
                            Password=YourPWD; 
                            Max Pool Size=100; 
                            Connection Timeout=20;"
          providerName="System.Data.SqlClient"/>
</connectionStrings>

Он переключит вас на использование более новых драйверов OleDB и обеспечит правильный размер пула и тайм-аут. Конечно, вам нужно будет ввести адрес вашего источника данных (IP-адрес или имя сервера), имя вашей базы данных и учетные данные для входа. Я предполагаю здесь логин SQL, но вы также можете использовать учетные данные Windows.

Похоже, для меня это проблема с драйвером ODBC, к какой системе баз данных вы подключаетесь?

Похоже на работу для вашего администратора базы данных. Ваша база данных готова и доступна? Spid-пакеты блокируют друг друга и время ожидания истекает? Есть ли у вас ночные работы по обслуживанию (резервное копирование, DBCC, переиндексация и т. Д.), Которые выполнялись долго и вызывают проблемы сегодня?

Безумная догадка: вы сказали: «Вы вышли из системы ...» Как вы управляете входом / выходом из системы? Задействовано ли состояние сеанса? Сколько вещей переходит в состояние сеанса? Как долго ты ему живешь? Обычно проблемы с состоянием сеанса проявляются в виде нехватки памяти или случайной потери данных сеанса (например, выхода из системы?), Но это может привести ваш сервер к приступам замены виртуальной машины. Состояние сеанса - это слишком простой способ «запомнить» вещи, чтобы веб-доступ без сохранения состояния выглядел с сохранением состояния, и он не всегда хорошо масштабируется.

Суть в том, что вам нужно оснастить его инструментами, чтобы выяснить, где он терпит неудачу. Журнал событий, вероятно, самый быстрый.