Как исправить ошибку «Поставщик именованных каналов», ошибка 40 - Не удалось открыть соединение с «SQL Server»? - PullRequest
129 голосов
/ 30 марта 2012

Я не могу подключиться к моей базе данных с сайта.Я получаю эту ошибку:

Поставщик именованных каналов, ошибка: 40 - Не удалось открыть соединение с SQL Server

Я также попытался использовать локальный IP-адрес для подключениякак публичный.Я пробовал:

  1. Да, сайт может взаимодействовать с сервером
  2. Именованные каналы / TCP включен.
  3. Удаленные подключения разрешены.
  4. Брандмауэр Windows выключен
  5. Создано исключение для порта 1433 в брандмауэре Windows.
  6. Включено все в диспетчере конфигурации SQL Server.

Что еще я могу сделать здесь?

Ответы [ 30 ]

3 голосов
/ 14 января 2018

У меня была такая же проблема. Я использую MSSQL Server Management Studio 2017 и решил эту проблему, выполнив следующие действия:

  1. Проверка на работоспособность служб SQL Server Services или нет.
  2. Также проверьте работоспособность SQL Server (MSSQLSERVER).
  3. Также проверьте исправность браузера SQL Server.
  4. Перезапустить SQL Server (MSSQLSERVER)

и исправил его.

1 голос
/ 20 марта 2019

Если вы работаете с ядром Asp.net и используете appsettings.json, тогда пишите сервер как localhost и после записи имени экземпляра sql для включенного именованного канала, например

  "ConnectionString": {
    "dewDB": "server=localhost\\dewelopersql;database=dewdb;User ID=sa;password=XXXXX",
  },
1 голос
/ 21 октября 2014

Попробуйте выполнить следующие действия:

  1. Открыть окно служб (откройте «окно запуска» и введите services.msc).

  2. ИщетеСлужбы SQL (с префиксом SQL).

  3. Запустить их (если не удается запустить. Перейти к шагу 4).

  4. Щелкните правой кнопкой мыши по каждой службе ->Свойства -> Перейти на вкладку «Вход в систему» ​​-> выбрать вход в систему как «Локальный ...» -> 0K.Затем снова запустите службы SQL.

Попробуйте открыть SQL и подключить базу данных.

1 голос
/ 06 марта 2018

Скорее всего, вы обнаружите, что имя вашей БД неверно, вы увидите имя сервера в VS как "DESKTOP-0I14BKI", но если вы откроете SSMS, вы увидите DESKTOP-0I14BKI \ SQLBLAHBLAH ,просто добавьте " \ SQLBLAHBLAH " (имя экземпляра) к вашему "имени сервера" в свойствах подключения VS.

Вы увидите : enter image description here

Исправить: enter image description here

0 голосов
/ 13 октября 2017

Для меня это была проблема с брандмауэром.

Сначала вы должны добавить порт (например, 1444 и, возможно, 1434), но также

C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe

и

%ProgramFiles%\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\Binn\SQLAGENT.EXE

Второй раз, когда я получил эту проблему, когда я вернулся к брандмауэру, пути были неправильными, и мне нужно было обновить форму с 12 до 13! Простое нажатие кнопки «Обзор» на вкладке «Программы и сервисы» помогло понять это.

Наконец, попробуйте выполнить команду

EXEC xp_readerrorlog 0,1, "не удалось зарегистрировать имя участника службы", пусто

Для меня вернулась причина ошибки

0 голосов
/ 15 июня 2017

В моем случае я открыл SQL Server Management Studio и искал SQLEXPRESS в своей базе данных.У него было два экземпляра, и я выбрал правильный.

enter image description here

0 голосов
/ 01 января 2017

У меня была эта проблема, но ни одно из приведенных выше предложений не устранило ее.

Эта проблема возникла при развертывании моего веб-сайта в IIS. Чтобы исправить это, нужно было перейти к дополнительным настройкам пула приложений по умолчанию и изменить свойство удостоверения со стандартного на «Администратор».

0 голосов
/ 11 октября 2016

Я долго боролся с этим, прежде чем осознал свою ошибку - я использовал запятые вместо точек с запятой в строке подключения

0 голосов
/ 23 августа 2016

Думаю, у меня есть еще одно решение.Недавно я изменил имя своего компьютера, так что после того, как я не смог подключиться после того, как попробовал все вышеперечисленные методы.Я изменил имя сервера .. Имя сервера => (найдите больше) => в ядре базы данных, новый сервер был найден так же, как новое имя компьютера.Это сработало, и жизнь снова стала хорошей.

0 голосов
/ 23 июля 2018

Я попробовал почти все на этой странице, но у меня были некоторые проблемы, которые на самом деле нужно было решить. Мне не удалось выполнить определенные действия, например открыть диспетчер конфигурации SQL Server, который в итоге оказался поврежденным или отсутствующим файлами поставщика WMI.

Есть много утомительных способов решить эту проблему в соответствии с тем, что я прочитал, но инструмент tweaking.com смог удалить и заменить / восстановить файлы моего поставщика WMI (инструментария управления Windows).

Раньше я занимался ремонтом компьютеров, и в целом инструмент tweaking.com действительно произвел на меня впечатление, и это было предложено на одной из страниц форума ошибок WMI, на которую я зашел.

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

Надеюсь, это кому-нибудь поможет.

...