KB2894326 — приложению не удается подключиться к автономной базе данных, если в SQL Server 2012 или SQL Server 2014 включен пул подключений

Применяется к
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Parallel Data Warehouse SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Проблема

Рассмотрим следующий сценарий.

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

Примечание

дата и время Ошибка входа в систему: 18456, серьезность: 14, состояние: 5.
datetime — вход в систему — сбой входа для SID пользователя. Причина: Не удалось найти логин, соответствующий указанному имени [клиент:]
datetime spid# Error: 18056, Severity: 20, State: 5.
datetime spid# Клиенту не удалось повторно использовать сеанс с SPID #, который был сброшен для пула подключений. Идентификатор ошибки: #. Эта ошибка могла быть вызвана сбоем предыдущей операции. Проверьте журналы ошибок на наличие неудачных операций непосредственно перед этим сообщением об ошибке.

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

Решение

Эта проблема была впервые исправлена в следующем накопительном пакете обновления SQL Server.

Накопительный пакет обновления 1 для SQL Server 2014 г. /en-us/help/2931693

Накопительный пакет обновления 7 для SQL Server 2012 с пакетом обновления 1 (SP1) /en-us/help/2894115

Сведения о накопительных обновлениях для SQL Server

Каждый новый накопительный пакет обновления для SQL Server содержит все исправления и исправления безопасности, которые входили в состав предыдущего накопительного пакета обновления. Ознакомьтесь с последними накопительными пакетами обновления для SQL Server:

      

Состояние

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

Дополнительные сведения

Это обновление также устраняет другую проблему, из-за которой следующие встроенные функции возвращают ИД безопасности пользователя вместо имени пользователя:

  • SUSER_SNAME
  • SUSER_NAME
  • SYSTEM_USER

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

Ссылки

Терминология, используемая корпорацией Майкрософт для описания обновлений программного обеспечения.