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

Ошибка SQL Server при входе с использованием входа SQL

У меня есть веб-сайт, который мне нужен для доступа к серверу sql. При разработке с использованием входа в систему Windows все работало нормально, но теперь, когда я развернул его на веб-сервере, он не может получить доступ к БД, потому что он работает как пользователь сервера по умолчанию. Итак, я пытаюсь войти в систему с помощью входа в систему SQL Server, но, что бы я ни пытался, похоже, что это не удается.

Я нахожу это сообщение в журнале ошибок. Ошибка: 18456 Уровень серьезности: 14 Состояние: 58 После небольшого поиска в Google я пришел сюда, кто-нибудь знает, что такое состояние 58 и как его исправить?

Состояние 58 означает, что ваш SQL-сервер работает в режиме проверки подлинности Windows, но вы пытаетесь использовать учетную запись SQL. Чтобы использовать логины SQL, ваш сервер должен работать в смешанном режиме аутентификации.

Вы можете сделать одно из двух:

  • Вернитесь к проверке подлинности Windows в строке подключения
  • Измените сервер на смешанную аутентификацию, чтобы вы могли войти в систему с помощью входа SQL. Если вы это сделаете, обязательно перезапустите SQL.

Чтобы изменить ваш сервер на смешанную аутентификацию:

  • Щелкните правой кнопкой мыши сервер в обозревателе объектов и выберите «Свойства».
  • Нажмите Безопасность в меню слева.
  • Выберите SQL Server и режим проверки подлинности Windows в первом заголовке (в разделе Проверка подлинности сервера)
  • Перезапустить SQL

Учетные записи SQL Server отличаются от учетных записей Windows. Вы уверены, что вводимые вами имя пользователя и пароль соответствуют тем, которые вы установили в SQL Server?

Самый простой способ создать логины - использовать SQL Server Management Studio. Вы можете следить это руководство от Microsoft для создания имени входа, использующего проверку подлинности Windows или проверку подлинности SQL Server. Если ваш веб-сервер и сервер базы данных не присоединены к домену, проще всего использовать аутентификацию SQL Server.