Я создал учетную запись на моем сервере localhost \ sql2008 (например, User123)
Сопоставлено с базой данных (по умолчанию)
Режим аутентификации на SQL Server установлен на оба (Windows и SQL)
Но войти в SQL Server не удается со следующим сообщением (для User123)
Примечание. Несколько раз проверяли правильность ввода имени пользователя и пароля.
Детали ошибки:
Ошибка входа для пользователя User123 (поставщик данных Net.SqlClient)
Имя сервера: localhost \ sql2008 Номер ошибки: 18456 Уровень серьезности: 14 Состояние: 1 Номер строки: 65536
любая помощь по этому поводу, пожалуйста.
sql-server
sql-server-2008
SREEDHAR
источник
источник
Ответы:
По умолчанию сообщение об ошибке входа в систему не является не чем иным, как сервером отказано в подключении пользователя-клиента из-за несоответствия учетных данных для входа. Первая задача, которую вы можете проверить, - это увидеть, есть ли у этого пользователя соответствующие привилегии на этом экземпляре SQL Server и соответствующей базе данных, это хорошо. Очевидно, что если необходимые права не установлены, вам необходимо исправить эту проблему, предоставив соответствующие права для входа в систему.
Хотя, если у этого пользователя есть соответствующие гранты в базе данных и на сервере, если сервер обнаружит какие-либо проблемы с учетными данными для этого входа в систему, тогда это предотвратит предоставление аутентификации обратно на SQL Server, клиент получит следующее сообщение об ошибке:
Хорошо, а теперь что, глядя на сообщение об ошибке, вы чувствуете, что оно не информативно для понимания уровня и состояния. По умолчанию в ошибке операционной системы «Состояние» отображается как 1 независимо от характера проблем с аутентификацией входа. Поэтому для дальнейшего изучения вам необходимо также просмотреть соответствующий журнал ошибок экземпляра SQL Server, чтобы получить дополнительную информацию о серьезности и состоянии этой ошибки. Вы можете посмотреть соответствующую запись в журнале как:
Как определено выше, столбцы «Серьезность» и «Состояние» ошибки являются ключом к точному отражению источника проблемы. В приведенной выше ошибке номер 8 для состояния указывает на сбой аутентификации из-за несоответствия пароля. Ссылка на электронную книгу: по умолчанию определяемые пользователем сообщения с уровнем серьезности ниже 19 не отправляются в журнал приложений Microsoft Windows при их возникновении. Таким образом, определяемые пользователем сообщения с уровнем серьезности ниже 19 не вызывают предупреждений агента SQL Server.
Сунг Ли, менеджер программ по протоколам SQL Server (команда разработчиков), изложил дополнительную информацию об описании состояния ошибки: Общие состояния ошибок и их описания представлены в следующей таблице:
Вы можете видеть, что из журнала ошибок этого экземпляра SQL Server не определен уровень серьезности или состояния. Таким образом, следующий вариант устранения неполадок - просмотреть журнал безопасности программы просмотра событий [редактировать, потому что снимок экрана отсутствует, но вы получаете
идея, ищите в журнале событий интересные события].
источник
Вам необходимо включить аутентификацию SQL Server:
источник
У меня была такая же проблема, но у меня была такая же проблема, потому что я не установил для проверки подлинности сервера значение «Режим проверки подлинности SQL Server и Windows» (который у вас был). Я просто хотел упомянуть об этом здесь на случай, если кто-то пропустил это в вашем вопросе.
Вы можете получить к нему доступ через
источник
Вы можете получить к нему доступ через
Просто для всех, кто это читает: у меня это сработало и на SQL Server 2012. Спасибо
источник
Правильное решение проблемы - убедиться, что для вашего SQL Server включена проверка подлинности SQL-сервера.
источник
После включения «SQL Server и режима проверки подлинности Windows» перейдите к следующему.
Наконец перезапустите SQL Server.
источник