Не удается подключиться к localhost на SQL Server Express 2012/2016

Я только что загрузил последнюю версию SQL Express 2012, но я не могу подключиться к localhost. Я попробовал localhost\SQLExpress и проверку подлинности Windows, но он дает мне сообщение об ошибке, которое невозможно подключить. Я что-то упустил? Раньше я использовал SQL Server 2008, и у меня никогда не было проблем с подключением к localhost. Кажется, что он даже не может его найти. Также в Службах я вижу только VSS Writer SQL Server. Так оно и должно быть? Или я чего-то не хватает? Благодаря

Ответ 1

По словам Аарона Бертана:

  1. Необходимо убедиться, что служба SQL Server запущена. Вы можете сделать это, перейдя в Start > Control Panel > Administrative Tools > Services и проверив, что работает служба SQL Server (SQLEXPRESS). Если нет, запустите его.

  2. Пока вы находитесь в апплете служб, также убедитесь, что запущен SQL-браузер службы. Если нет, запустите его.

  3. Вы должны убедиться, что SQL Server разрешено использовать TCP/IP или именованные каналы. Вы можете включить их, открыв Диспетчер конфигурации SQL Server в Start > Programs > Microsoft SQL Server 2012 > Configuration Tools (или " SQL Server Configuration Manager) и убедитесь, что TCP/IP и Именованные каналы включены.

    SQL Server Configuration Manager

  4. Убедитесь, что режим проверки подлинности подключения к SQL Server соответствует вашей строке подключения:

    • Если вы подключаетесь с использованием имени пользователя и пароля, вам необходимо настроить SQL Server для принятия "режима проверки подлинности SQL Server":

      -- YOU MUST RESTART YOUR SQL SERVER AFTER RUNNING THIS!
      USE [master]
      GO
      DECLARE @SqlServerAndWindowsAuthenticationMode INT = 2;
      EXEC xp_instance_regwrite
        N'HKEY_LOCAL_MACHINE',
        N'Software\Microsoft\MSSQLServer\MSSQLServer',
        N'LoginMode',
        REG_DWORD,
        @SqlServerAndWindowsAuthenticationMode;
      GO
      
    • Если вы подключаетесь с помощью "Integrated Security = true" (режим Windows), и эта ошибка возникает только при отладке веб-приложений, вам необходимо добавить ApplicationPoolIdentity в качестве входа в SQL Server:
  5. в противном случае запустите Start → Run → Services.msc Если да, то работает ли он?

Если он не работает, тогда

Похоже, вы не все установили. Запустите установочный файл и выберите вариант "Новая установка или добавьте функции в существующую установку". Оттуда вы должны быть уверены, что служба ядра базы данных будет установлена.

Ответ 2

Перейти к началу → Программы → Microsoft SQL ServerYYYY → Инструменты настройки → Диспетчер конфигурации SQL Server YYYY или запустить "SQLServerManager12.msc".

Убедитесь, что TCP/IP включен в клиентских протоколах.

Затем перейдите в "Конфигурация сети SQL Server" и дважды щелкните TCP/IP. Перейдите на вкладку "IP-адреса" и прокрутите страницу вниз. В разделе "IP All" удалите TCP Dynamic Ports, если он присутствует, и установите TCP-порт на 1433. Нажмите "ОК", а затем вернитесь в "Службы SQL Server" и перезапустите экземпляр SQL Server. Теперь вы можете подключиться через localhost, по крайней мере, я мог.

введите описание изображения здесь

Ответ 3

У меня была аналогичная проблема - может быть, мое решение поможет. Я только что установил MSSQL EX 2012 (установка по умолчанию) и попытался подключиться к VS2012 EX. Нет радости. Затем я посмотрел на службы, подтвердил, что SQL Server (SQLEXPRESS) действительно работает.

Однако я увидел еще одну интересную услугу, называемую браузером SQL Server, которая была отключена. Я включил его, уволил, а затем смог получить имя сервера в новом соединении в VS2012 EX и подключиться.

Нечетно, что они отключили бы службу, необходимую для подключения VS.

Ответ 4

в SQL SERVER EXPRESS 2012 вы должны использовать "(localdb)\MSSQLLocalDB" в качестве имени источника данных например, вы можете использовать строку подключения, такую ​​как

Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=master;Integrated Security=True;

Ответ 5

Сначала попробуйте самое популярное решение, предоставленное Ravindra Bagale.

Если ваше соединение с localhost в базе данных по-прежнему не выполняется с ошибкой, аналогичной следующей:

Не удается подключиться к базе данных SQL Server. Ошибка. Соединение TCP/IP с хостом [IP-адрес], порт 1433 не выполнено. Ошибка: "Соединение отказано: подключиться. Проверьте свойства подключения. Убедитесь, что на сервере запущен экземпляр SQL Server и принимает соединения TCP/IP в порту. Убедитесь, что TCP-соединения с портом не заблокированы брандмауэром ".

  1. Откройте диспетчер конфигурации SQL Server.
  2. Разверните конфигурацию сети SQL Server для соответствующего экземпляра сервера.
  3. Дважды щелкните "TCP/IP".
  4. В разделе "Протокол" установите "Включено" на "Да".
  5. В разделе "IP-адреса" установите TCP-порт под "IP All" (по умолчанию это 1433).
  6. В разделе "IP-адреса" найдите подразделы с IP-адресом 127.0.0.1 (для IPv4) и :: 1 (для IPv6) и установите для обоих "Включено" и "Актив" значение "Да", а порт TCP - 1433.

    TCP/IP Properties

  7. Откройте " Start > Control Panel > Administrative Tools > Services и перезапустите службу SQL Server (SQLEXPRESS).

Ответ 6

Сначала проверьте, что служба SQL Server работает или остановлена, если она остановлена, просто запустите ее, чтобы сделать это. Просто выполните следующие шаги.

1.Start → Run → Services.msc

enter image description here

  1. Перейдите на вкладку "Стандартная" в панели служб, затем найдите SQl Server (SQL2014)

"SQL2014" предоставляется. Возможно, это может быть другое имя в вашем случае

enter image description here

что после запуска службы SQL вы можете подключить локальную базу данных.

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

Ответ 7

Попробуйте перейти от проверки подлинности Windows в смешанный режим

Ответ 8

Это странно, у меня есть аналогичная проблема. Я загрузил пакет для SQL 2012 Express с помощью инструментов, но Database Engine не был установлен.

Я загрузил другой с сайта MS, и он установил механизм базы данных. После перезагрузки службы были перечислены и готовы к работе.

Ответ 9

Моя ситуация

  • пустое имя экземпляра в SQL Server Management Studio > выберите механизм базы данных > правая кнопка мыши > свойства (свойства сервера) > свойства подключения к соединению > продукт > имя экземпляра пуст

  • Источник данных =.\SQLEXPRESS не работает = > использовать localhost в web.config(см. ниже)

Решение: в web.config

xxxxxx = имя моей базы данных без .mdf yyyyyy = имя моей базы данных в обозревателе базы данных VS2012

Вы можете принудительно использовать TCP вместо общей памяти либо путем префикса tcp: для имени сервера в строке подключения, либо с помощью localhost.

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring%28v=vs.110%29.aspx

Ответ 10

У меня была такая же проблема, и я обнаружил, что это произошло после того, как я установил обновление для своего SQL 2012. Что исправил его для меня, это входить в программы и функции и выполнять ремонт на нем.

Ответ 11

Все мои службы работали, как ожидалось, и я все еще не мог подключиться.

Мне пришлось обновить раздел свойств TCP/IP в диспетчере конфигурации SQL Server для моих протоколов SQL Server Express и установить для IPALL порт значение 1433 для подключения к серверу, как ожидалось.

enter image description here

Ответ 12

Проблема для меня заключалась в том, что я не указывал .\. Я указывал только имя экземпляра:

  • не работает: SQL2016
  • работал:. .\SQL2016

Ответ 13

Попробуйте изменить Пользователя, которому принадлежит служба, на Локальную систему или использовать вашу учетную запись администратора.

В разделе "Службы" я изменил имя входа службы SQL Server (MSSQLSERVER) с NT Service\Sql... на локальную систему. Щелкните правой кнопкой мыши службу и перейдите на вкладку "Вход в систему" и выберите переключатель "Локальная системная учетная запись". Вы также можете заставить другого пользователя запускать его, если это подходит лучше.