Источник ошибки net sqlclient data provider
ИТ База знаний
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Популярное и похожее
Пошаговый ввод в домен Windows 10
Погружение в Iptables – теория и настройка
Как сбросить root пароль на MySQL?
Передача файлов по RDP – это просто
Решаем ошибку 18456 в SQL
2 минуты чтения
С нетерпением спешим поделиться с тобой способом решения ошибки 18456 — Login Failed for User (Microsoft SQL Server, Error: 18456). Определим пользователя, который имеет права доступа к SQL и создадим новую учетную запись.
Если вы только столкнулись с проблемой, вам необходимо понять, какой пользователь имеет права на подключение к SQL. Как правило, это юзер, под которым был установлен SQL. Об этом и поговорим.
Получаем доступ
Запустите Server Manager в операционной системе. Переходим в раздел Tools → Computer Management:
Раскрываем список Local Users and Groups, в разделе Computer Management → System Tools и нажимаем на Users.
Смотрим описание к пользователям. Находим описание юзера, которое начинается с Built-in account for administering the computer…. С большой вероятностью, это именно тот аккаунт, с которого мы получим доступ к SQL.
Выходим из под текущего юзера в операционной системе, заходим под пользователем Administrator. Пробуем подключиться – работает.
Даем права нужному пользователю
Подключившись к SQL Management Studio под пользователем Administrator, слева, в меню навигации, раскрываем список под именем сервера, переходим в раздел Security → Logins. Нажимаем на Logins правой кнопкой мыши и нажимаем New Login…:
Нажимаем на кнопку Search:
В появившемся окне укажите имя пользователя, которому необходимо предоставить права администратора SQL. Нажимаем OK:
В разделе Server Roles выбираем sysadmin и жмем OK:
В разрешениях отмечаем Connect SQL и жмем OK.
Теперь, выходим из под пользователя Administrator в ОС и подключаемся под пользователем, с которым мы изначально пытались подключиться. Готово.
Полезна ли Вам эта статья?
Пожалуйста, расскажите почему?
Нам жаль, что статья не была полезна для вас 🙁 Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!
Подпишитесь на нашу еженедельную рассылку, и мы будем присылать самые интересные публикации 🙂 Просто оставьте свои данные в форме ниже.
Источник ошибки net sqlclient data provider
Вопрос
Объект: Виртуальный сервер Windows Server 2008 R2 SE на нем SQL Server 2008 R2 64x
Позавчера встало обновление KB2979597, но со второго раза. Безумно долгая перезагрузка, но терпеливо ждал до 5-ти утра. В итоге получил проблему со входом Management Console
Error: 18401
Login failed for user ‘ ‘. Reason: Server is in script upgrade mode. Only administrator can connect at this time.
Проделал это: https://support.microsoft.com/en-us/kb/2163980 (Исправил: поскольку дело было бессонной ночью, описанное здесь проделал не до конца. Возможно дело в этом).
не помню перезагружался или нет, службу SQL сервер отрестартил. Консоль запустилась, клиентские подключения тоже заработали. Далее система осталась без изменений.
На настоящий момент клиентские подключения работают, к консоли подключиться можно, но при попытке раскрыть перечень баз получаем:
Не удалось получить данные по этому запросу. (Microsoft.SqlServer.Management.Sdk.Sfc)
в Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.Process(Object connectionInfo, Request request)
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.NavigableItemBuilderDataReader.RunQuery()
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.NavigableItemBuilderDataReader.Process()
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.NavigableItemBuilderDataReader.get_PropertyNames()
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.BuildDynamicItemWithQuery(IList`1 nodes, INodeInformation source, INavigableItem sourceItem, String urnQuery, Boolean registerBuilder, Boolean registerBuiltItems)
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.BuildDynamicItem(IList`1 nodes, INodeInformation source, INavigableItem sourceItem, IFilterProvider filter)
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItemBuilder.Build(IList`1 nodes, INodeInformation source, INavigableItem sourceItem, IFilterProvider filter)
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.NavigableItem.RequestChildren(IGetChildrenRequest request)
в Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ExplorerHierarchyNode.BuildChildren(WaitHandle quitEvent)
При выполнении инструкции или пакета Transact-SQL возникло исключение. (Microsoft.SqlServer.ConnectionInfo)
в Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteReader(String sqlCommand, SqlCommand& command)
в Microsoft.SqlServer.Management.Smo.ExecuteSql.GetDataReader(String query, SqlCommand& command)
в Microsoft.SqlServer.Management.Smo.DataProvider.SetConnectionAndQuery(ExecuteSql execSql, String query)
в Microsoft.SqlServer.Management.Smo.ExecuteSql.GetDataProvider(StringCollection query, Object con, StatementBuilder sb, RetriveMode rm)
в Microsoft.SqlServer.Management.Smo.ExecuteSql.ExecuteWithResults(StringCollection query, Object con, StatementBuilder sb)
в Microsoft.SqlServer.Management.Smo.SqlObjectBase.FillData(ResultType resultType, StringCollection sql, Object connectionInfo, StatementBuilder sb)
в Microsoft.SqlServer.Management.Smo.SqlObjectBase.FillDataWithUseFailure(SqlEnumResult sqlresult, ResultType resultType)
в Microsoft.SqlServer.Management.Smo.SqlObjectBase.BuildResult(EnumResult result)
в Microsoft.SqlServer.Management.Smo.SqlObjectBase.GetData(EnumResult erParent)
в Microsoft.SqlServer.Management.Sdk.Sfc.Environment.GetData()
в Microsoft.SqlServer.Management.Sdk.Sfc.Environment.GetData(Request req, Object ci)
в Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.GetData(Object connectionInfo, Request request)
в Microsoft.SqlServer.Management.Sdk.Sfc.Enumerator.Process(Object connectionInfo, Request request)
Недопустимое имя объекта «msdb.dbo.syspolicy_configuration». (.Net SqlClient Data Provider)
——————————
Имя сервера: SDB
Номер ошибки: 208
Серьезность: 16
Состояние: 1
Номер строки: 3
в Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction action, Object execObject, DataSet fillDataSet, Boolean catchException)
в Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteReader(String sqlCommand, SqlCommand& command)
Не открываются не только базы. Гугление пока ни к чему не привело. Поиск по «microsoft sql server ошибка 208» тоже дает несхожие с моей ситуацией результаты.
Источник ошибки net sqlclient data provider
Александр Жевелев
Автор
Сообщений: 2672
Откуда: Новосибирск
с приложением одновременно работают 10-50 пользователей, иногда (и даже не каждый день) от одного или нескольких пользователей прилетает такая ошибка:
Собственно, вопрос в заглавии поста.
PaulWist
1. Причин разрыва соединения может быть масса (для начала посмотри в логах сервера на предмет таймаута, deadlock-a итп).
2. Писать аналог фоксовской SQLIDLDISCONNECT(), те проверять если соединение «умерло», то заново коннектиться (если хранишь логин-пароль, «в тихую», если делаешь правильно и не хранишь логин-пароль, то дать соединиться юзеру интерактивно) и выполнять последоватеность команд заново.
Igor Korolyov
blogs.msdn.com
От те цельная куча возможных причин.
Александр Жевелев
Автор
Сообщений: 2672
Откуда: Новосибирск
Влад Колосов
Сообщений: 22664
Откуда: Ростов-на-Дону
KILL сессиям делают админы или робот, тогда такие сообщения приходят.
Еще слишком умный роутер может сессии прибивать, если нет трафика
Исправлено: Влад Колосов, 12.11.15 14:28
Аспид
Сообщений: 3371
Откуда: Москва
Помнится отлаживал обрыв связи, так шнурок от компа, прямо под руку положил, и рвал.
Добивался, что бы само при восстановлении восстанавливалось )))
зы. И может лучше коннект, на кажный чих, и дисконнект? Должно исчезнуть?
Igor Korolyov
Не факт что лучше — всё ж это затратная процедура. При этом я имею в виду именно «физический» коннект (то что висит в адонетовском пуле даже если прога не пользует в данный момент ни каких Connection). Я надеюсь что автор таки следует «рекомендациям лучших собаководов» и работа с БД организована сравнительно короткими сеансами (подход UnitOfWork) вида
Просто инфраструктура пула не может сама прочухать что подлежащая коннекция протухла и надо бы её выкинуть и сделать новую.
А ежели автор таки пользует подход «при старте проги сделал одну DBConnection, запихал ея в static поле и таперича всегда и везде её пользую», то он таки неправ
Александр Жевелев
Автор
Сообщений: 2672
Откуда: Новосибирск
MSDN
Соединения и платформа Entity Framework
Entity Framework открывает соединения только по требованию, например чтобы выполнить запрос или вызвать метод SaveChanges, и закрывает соединение после завершения операции.
Вызов любого из следующих методов открывает соединение:
-SaveChanges или Refresh в ObjectContext.
-FirstOrDefault или First в ObjectQuery.
-Load в EntityCollection.
-Load в EntityReference.
-Любой метод LINQ или метод построителя запросов ObjectQuery, такой как Where, OrderBy или Select.
2. Похоже найдена и устранена причина ошибки в моем случае — Сервер, на котором крутится SQL server установлен на виртуальной машине, так вот скорость виртуальной сетевой карты виртуальной машины не соответствовала скорости реальной сетевой карты (была в 10 раз выше). После устранении несоответствия ошибок не возникает вообше!
Всем спасибо за внимание и советы!
Ошибка отсутствие установленного MS SQL server Native Client
При разнесении по разным серверам (хостам) Сервер 1С и MS SQL в попытке создать новую базу средствами утилиты администрирования Сервера 1С, нас встречает ошибка: «Ошибка создания информационной базы, Ошибка операции администрирования, Ошибка при получении значения из базы данных: Возможной причиной является отсутствие установленного MS SQL server Native Client. »
Конечно, данная тема также подымается и на курсе: Администратор 1С!
Конечно, получить ошибку «повезло не всем», а только тем, кто работает с 1С версии 8.3.8 и выше.
Благо решить проблему довольно просто, собственно дав Серверу 1С то, что он просит!
Где искать MS SQL server Native Client ?
Скорее всего файл установщик MS SQL server Native Client (он же sqlncli.msi) уже у Вас на диске!
Если Вы не удалили каталог «установщик», когда скачивали и затем ставили свой MS SQL server 2017 (Выпуск Evaluation).
Тогда искать долго не надо!
Идем «по умолчанию путь» на диск С: там ищем каталог «SQL server 2017 Media»
И уже в этом каталоге воспользовавшись обычным поиском sqlncli.msi, успешно находим наш MS SQL server Native Client!
Остается лишь его скопировать и установить там, где работает «Сервер 1С».
Установка очень простая, всего пару кликов по кнопке «Далее»
Ставим «Пакет SDK для SQL Server Native Client»
Также MS SQL server Native Client можно скачать и на официальном сайте Microsoft, например в пакете дополнительных компонентов для Microsoft® SQL Server® 2016:
Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С >>>
System.Data.SqlClient.SqlException: сбой входа для пользователя
При работе с моим проектом в режиме отладки у меня нет проблем. Однако при запуске его в IIS я получаю эту ошибку:
System.Data.SqlClient.SqlException: сбой входа для пользователя ‘домен имя-ПК $’.
Трассировка стека
Решение номер один, которое я могу найти в Google, — это изменить расширенные настройки идентификации пула приложений, которые не работали.
Я использую IIS 7.5 и подключаюсь к SQLServer 2012, моя строка подключения указана ниже.
Строка подключения
8 ответов
Предполагая, что вы собираетесь использовать проверку подлинности Windows для олицетворения учетной записи службы, необходимо настроить проверку подлинности Windows как в IIS, так и в ASP.NET.
В IIS убедитесь, что модуль проверки подлинности Windows добавлен и включен. Также убедитесь, что пул приложений работает под учетной записью домена, а не локальной учетной записью.
В ASP.NET убедитесь, что для атрибута режима аутентификации установлено значение «Windows»
Просто установите Integrated Security=False , и он будет работать в соответствии с комментарий разница между True и False :
True игнорирует User ID и —- +: = 5 =: + —-, если он предоставлен и использует те из запущенного процесса, Password он будет использовать их, если это предусмотрено, поэтому MS предпочитает это. Они эквивалентны тем, что используют один и тот же механизм безопасности для аутентификации, но это так.
Вы также можете получить эту ошибку, если ваш SQL Server не был настроен на использование проверки подлинности в смешанном режиме — он фактически не говорит вам, что это не включено!
У меня был похожий опыт, и мне потребовалось время, чтобы решить проблему. Хотя в моем случае это были ASP.Net MVC Core и Core рамки. Настройка Trusted_Connection=False; решила мою проблему.
Внутри appsettings.json файл
Я только что натолкнулся на эту ошибку, и ее устранение заняло несколько дней. Мы были зациклены на сообщении об ошибке «красная сельдь», упомянутом в первоначальном вопросе, плюс журнал ошибок Windows Event Viewer показал что-то похожее:
Ничего из этого не было правдой, у пользователя были все необходимые разрешения в SQL Server.
В нашем случае решением было переключить идентификатор пула приложений в IIS на NetworkService .
Здесь Numpty использовал аутентификацию SQL
вместо Windows (правильно)
при добавлении имени входа на SQL Server, что также выдает эту ошибку, если вы используете аутентификацию Windows.
Я столкнулся с такой же ситуацией. Создайте строку подключения следующим образом.
добавить постоянную информацию о безопасности = True; в строке подключения.