Я уже несколько дней пытаюсь установить SQL Server Express. Я пробовал 2008, 2012, а теперь и 2014, все с тем же результатом. Я не могу подключиться к базе данных удаленно, даже если я отключу брандмауэр на Windows 2012 Server. Я получаю следующую ошибку:
Произошла ошибка, связанная с сетью или конкретным экземпляром, при установке соединения с SQL Server. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра правильное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик именованных каналов, ошибка: 40 - не удалось открыть соединение с SQL Server) (Microsoft SQL Server, ошибка: 53)
Сервер настроен на прослушивание порта 1433, а TCP / IP и именованные каналы включены и показывают «готов принять соединения». В журнале есть проблема, связанная с тем, что библиотека сетевого интерфейса SQL Server не может зарегистрировать имя принципа службы, но, судя по моим исследованиям, это не должно мешать мне удаленно входить в систему. SQL Server настроен на разрешение удаленных подключений.
Брандмауэр Windows настроен так, чтобы разрешать соединения через порт 1433, и браузер SQL Server не заблокирован. Я выполнил все инструкции в эта статья MSSQLTips.com и все проходит проверку, кроме ошибки при создании SPN. Я пытался вручную создать SPN, но мне не удалось установить правильные параметры. Нет домена, поэтому я попытался использовать WORKGROUP \ Administrator для запуска setspn -L WORKGROUP\Administrator
, но это вызывает ошибку о том, что это имя пользователя не найдено.
Возможно, мои настройки удаленного подключения просто неверны. Я пытаюсь подключиться к IP-адресу сервера, на котором установлен SQL Server Express. Не уверен, что в этом могло быть не так.
Я получил ответ от хостинговой компании, на которой размещен наш VPS, и, о чудо, они блокируют порт 1433. Они дали мне другой порт, и все в порядке! Спасибо всем, кто комментировал.
Не уверен, почему динамические порты не работали, когда я это пробовал, но возможно, что браузер SQL не смог пройти через брандмауэр на UDP-порт 1434, чтобы выполнить свою работу и сообщить соединению, какой порт прослушивает SQL Server.
Это может произойти из-за отсутствия какого-либо файла dll, вы также можете подключиться к своему серверу без использования имени экземпляра, вам необходимо перенастроить свой сервер для использования статического TCP-порта.
откройте диспетчер конфигурации SQL Server;
переключиться на конфигурацию сети SQL Server | Протоколы для
SQLEXPRESS;
дважды щелкните протокол TCP / IP;
выберите значение Да в поле Включено;
перейти на вкладку IP-адреса;
найдите раздел IPAll;
очистите поле TCP Dynamic Ports в этом разделе;
укажите значение 1433 в поле TCP Port:
перезапустите ваш сервер.
Попробуйте подключиться к вашему серверу, используя только его IP-адрес.
У меня была такая же проблема с подключением ПК к базе данных SQL, расположенной на сервере. Попробовав все то же самое, что и вы, я нашел решение, которое было настолько простым, что я не мог поверить, что оно работает.
Что вам нужно сделать на вашем компьютере: 1. запустить «cliconfg» и включить именованные каналы и протоколы TCP / IP. 2. запустить «obdcad32.exe» и добавить подключение по именованному каналу по умолчанию к вашему серверу (иногда вам приходится это делать дважды в odbcad 64bit)
Больше нет необходимости менять настройки сервера.
С уважением, vlku