Я только что скачал последнюю версию SQL Express 2012, но не могу подключиться к локальному хосту. Я пробовал localhost\SQLExpress и аутентификацию Windows, но выдает сообщение об ошибке, в котором говорится, что невозможно подключиться. Я что-то упустил здесь? Раньше я использовал SQL Server 2008, и у меня никогда не было проблем с подключением к локальному хосту. Кажется, что он даже не может найти его. Также в службах я вижу только модуль записи SQL Server VSS. Это так и должно быть? Или я что-то упускаю? Спасибо
Не удается подключиться к локальному хосту на SQL Server Express 2012/2016.
Ответы (14)
Вам необходимо убедиться, что служба SQL Server запущена. Вы можете сделать это, перейдя к
Start > Control Panel > Administrative Tools > Services
и проверив, что служба SQL Server (SQLEXPRESS
) работает. Если нет, запустите его.Пока вы находитесь в апплете служб, также убедитесь, что служба SQL Browser запущен. Если нет, запустите его .
Вы должны убедиться, что SQL Server может использовать TCP/IP или именованные каналы. Вы можете включить их, открыв Диспетчер конфигурации SQL Server в
Start > Programs > Microsoft SQL Server 2012 > Configuration Tools
(илиSQL Server Configuration Manager
) и убедитесь, что TCP/IP и именованные каналы включены. Если вы не найдете Диспетчер конфигурации SQL Server в меню «Пуск», вы можете запустить оснастку MMC вручную. Проверьте Диспетчер конфигурации SQL Server для путь к оснастке согласно вашей версии.Убедитесь, что ваш режим аутентификации подключения к 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:
в противном случае запустить
Start -> Run -> Services.msc
Если да, то он запущен?
Если он не запущен, то
Похоже, вы не все установили. Запустите установочный файл и выберите вариант «Новая установка или добавление функций к существующей установке». Оттуда вы сможете убедиться, что служба ядра базы данных установлена.
Перейдите в меню «Пуск» -> «Программы» -> «Microsoft SQL ServerYYYY» -> «Инструменты настройки» -> «Диспетчер конфигурации SQL Server YYYY» или запустите «SQLServerManager12.msc».
Убедитесь, что TCP/IP включен в клиентских протоколах.
Затем перейдите в «Конфигурация сети SQL Server» и дважды щелкните TCP/IP. Перейдите на вкладку «IP-адреса» и прокрутите вниз. В разделе «IP All» удалите динамические порты TCP, если они присутствуют, и установите для порта TCP значение 1433. Нажмите «ОК», а затем вернитесь в «Службы SQL Server» и перезапустите экземпляр SQL Server. Теперь вы можете подключиться через локальный хост, по крайней мере, я мог.
Обратите внимание, что эта ошибка может возникнуть и при подключении из других приложений. Пример строки подключения обычного веб-приложения C# Web.config
:
<connectionStrings>
<add name="DefaultConnection" connectionString="server=localhost;database=myDb;uid=myUser;password=myPass;" />
</connectionStrings>
в SQL SERVER EXPRESS 2012 вы должны использовать "(localdb)\MSSQLLocalDB" в качестве имени источника данных, например, вы можете использовать строку подключения, подобную этой
Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=master;Integrated Security=True;
Сначала попробуйте самое популярное решение, предоставленное Ravindra Bagale.
Если ваше подключение с локального хоста к базе данных по-прежнему не выполняется с ошибкой, подобной следующей:
Не удается подключиться к базе данных SQL Server. Ошибка: TCP/IP-соединение с хостом [IP-адрес], порт 1433 не удалось. Ошибка: «Отказано в подключении: подключитесь. Проверьте свойства подключения. Убедитесь, что экземпляр SQL Server работает на хосте и принимает TCP/IP-соединения на порту. Убедитесь, что TCP-соединения с портом не блокируются брандмауэром. ."
- Откройте диспетчер конфигурации SQL Server.
- Разверните сетевую конфигурацию SQL Server для рассматриваемого экземпляра сервера.
- Дважды щелкните «TCP/IP».
- В разделе «Протокол» установите «Включено» на «Да».
- В разделе «IP-адреса» установите TCP-порт в разделе «IP All» (по умолчанию 1433).
В разделе «IP-адреса» найдите подразделы с IP-адресом 127.0.0.1 (для IPv4) и ::1 (для IPv6) и установите для «Включено» и «Активно» значение «Да», а для TCP-порта — 1433.
Перейдите к
Start > Control Panel > Administrative Tools > Services
и перезапустите службу SQL Server (SQLEXPRESS
).
127.0.0.1
и порт 1433
на IP4
- person xinthose; 05.01.2021
У меня была похожая проблема - может быть мое решение поможет. Я только что установил MSSQL EX 2012 (установка по умолчанию) и попытался подключиться к VS2012 EX. Нет радости. Затем я посмотрел на службы и подтвердил, что SQL Server (SQLEXPRESS) действительно работает.
Однако я увидел еще одну интересную службу под названием SQL Server Browser, которая была отключена. Я включил его, запустил, а затем смог получить имя сервера в новом соединении в VS2012 EX и подключиться.
Странно, что они отключили службу, необходимую для подключения VS.
Сначала проверьте, запущена или остановлена служба SQL Server, если она остановлена, просто запустите ее, для этого просто выполните следующие шаги.
1. Пуск -> Выполнить -> Services.msc
- Перейдите на вкладку «Стандартные» на панели служб, затем найдите SQl Server (SQL2014).
«SQL2014» дан мной, в вашем случае это может быть другое имя.
вот и все, как только вы запустите службу SQL, вы сможете подключить локальную базу данных.
надеюсь, это поможет кому-то.
Все мои службы работали, как и ожидалось, но я все еще не мог подключиться.
Мне пришлось обновить раздел свойств TCP/IP в Диспетчере конфигурации SQL Server для моих протоколов SQL Server Express и установить для порта IPALL значение 1433, чтобы подключиться к сервер, как и ожидалось.
Попробуйте перейти с аутентификации Windows на смешанный режим
Проблема для меня заключалась в том, что я не указывал .\
. Я только указывал имя экземпляра:
- не получилось:
SQL2016
- работало:
.\SQL2016
Странно, у меня похожая проблема. Я загрузил пакет для SQL 2012 Express с инструментами, но ядро базы данных не было установлено.
Я загрузил другой с сайта MS, и этот установил механизм базы данных. После перезагрузки службы были перечислены и готовы к работе.
Моя ситуация
пустое имя экземпляра в SQL Server Management Studio > выберите механизм базы данных > правая кнопка мыши > свойства (свойства сервера) > свойства подключения просмотра ссылок > продукт > имя экземпляра пусто
Источник данных=.\SQLEXPRESS не работал => использовать localhost в web.config (см. ниже)
Решение: в файле web.config.
xxxxxx = name of my database without .mdf yyyyyy = name of my database in VS2012 database explorer
Вы можете принудительно использовать TCP вместо общей памяти, добавив префикс tcp: к имени сервера в строке подключения или используя localhost.
У меня была та же проблема, и я обнаружил, что это произошло после того, как я установил обновление для своего SQL 2012. Что исправило это для меня, так это переход к программам и функциям и запуск исправления.
Попробуйте изменить пользователя, которому принадлежит служба, на локальную систему или используйте учетную запись администратора.
В службах я изменил вход в систему SQL Server службы (MSSQLSERVER) с NT Service\Sql... на локальную систему. Щелкните правой кнопкой мыши службу, перейдите на вкладку «Вход в систему» и выберите переключатель «Учетная запись локальной системы». Вы также можете заставить другого пользователя запустить его, если это подходит лучше.