SQL Server «Ошибка входа пользователя» не записана в журнал ошибок - PullRequest
0 голосов
/ 20 января 2011

Следующее исключение возвращается в наш код в следующих случаях:

m_cnn = new SqlConnection();
m_cnn.ConnectionString = sxCnn;
m_cnn.Open();

--- ИНФОРМАЦИЯ ИСКЛЮЧЕНИЯ ---

Exception: in OpenEx. 
Msg=OpenEx failed. 
Errors: Index #0
Message: Login failed for user 'xyz'.
LineNumber: 65536
Source: .Net SqlClient Data Provider
Procedure: 
Number: 18456
State: 1

Проблема Iу меня есть то, что я не могу найти эту запись в журналах ошибок SQL для поиска состояния.Например, мы увидели это исключение сегодня в 11:43, и когда я захожу в журналы, запись для этого времени отсутствует.

Что нам нужно сделать, чтобы включить эту запись?У нас есть опция «Только неудачные входы в систему», выбранная в свойствах базы данных в разделе «Безопасность |Аудит входа в систему.Тем не менее, мы не видим там ничего для этой проблемы.

Любая помощь очень ценится.

Ответы [ 3 ]

0 голосов
/ 21 января 2011

Ведение журнала ошибок входа контролируется настройкой AuditLevel.

0 голосов
/ 31 марта 2011

Эта проблема возникла из-за двух основных проблем:

  1. Несколько коммутаторов в нашей сети были неисправны
  2. Мы делаем непристойное количество одновременных подключений к базе данных

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

0 голосов
/ 20 января 2011

У вас могут быть проблемы с вашей строкой соединения. Это не должна быть переменная в коде, она должна быть установлена ​​в вашем файле web.config и извлечена оттуда. Вот мой в web.config:

<connectionStrings>
    <add name="MyConnectionString" connectionString="Data Source=MYSQL1;Initial Catalog=MyDATABASE;User ID=dummyUser;Password=dummyPW" providerName="System.Data.SqlClient"/>
</connectionStrings>

и вот я вытаскиваю его из кода:

mcnn.ConnectionString = ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;

Кроме того, если в строке подключения есть орфографическая ошибка или что-то отсутствует, вы не сможете даже добраться до базы данных, чтобы попытаться войти в систему. Sql не будет ничего регистрировать. Может стоить двойной проверки ^ _ ^

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...