Подтвердить что ты не робот

Не удалось подключиться к экземпляру SQL Server удаленно

Я пытаюсь получить доступ к экземпляру SQL Server на своем VPS из SQL Server Management Studio на моем локальном компьютере. Его не работает (ошибка Im get:

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

Я думаю, это связано с тем, что мне нужно настроить механизм базы данных, чтобы разрешить удаленные подключения (исправьте меня, если я ошибаюсь!). Итак, Ive нашел это пошаговое руководство, чтобы помочь мне сделать это: http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/ Я получил 10-е место в руководстве, и теперь я застрял! На моем VPS не установлена ​​SQL Server Management Studio. Во всяком случае, это оставило меня с двумя вариантами:

  • Установить SSMS
  • Найдите другой способ сделать точку 10 в руководстве без установки SSMS.

Я попытался установить SSMS на своем VPS с помощью установщика веб-платформы, но он продолжает терпеть неудачу. Я не знаю, почему его неудача, потому что, похоже, это не причина. Кто-нибудь знает, как я могу позволить удаленным соединениям по-другому?

Версия SQL Server, установленная на моем VPS, - это SQL Server 2008 R2 Express.

Обновление

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

Другое обновление:

Теперь, когда я смог установить SSMS (я установил непосредственно с веб-сайта, а не с помощью WPI), я смог проверить, что сервер настроен на разрешение удаленных подключений (я пошел в SSMS, подключенный к SQL Server экземпляр, щелкнув правой кнопкой мыши на соединении, нажал "Свойства", перешел на вкладку "Подключения". "Разрешить удаленные подключения к этому серверу" уже отмечено).

Решение

Спасибо всем за то, что помогли мне добраться до этого решения! Мне, наконец, удалось заставить его работать! Я последовал совету Filip De Vos и открыл порты в брандмауэре на моем VPS, а затем получил другое сообщение об ошибке. Это привело меня к дальнейшему исследованию, и я обнаружил, что я использую неправильные учетные данные для входа в систему! Поэтому я установил пароль для пользователя sa, и мне удалось войти в систему, используя это! Еще раз спасибо!

4b9b3361

Ответ 1

  • Чтобы включить смешанную проверку подлинности, вы можете изменить следующий раздел реестра:

    HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\LoginMode
    

    Обновите значение до 2 и перезапустите службу сервера Sql, чтобы разрешить смешанную проверку подлинности. Обратите внимание, что MSSQL.1, возможно, потребуется обновить, чтобы отобразить количество экземпляров SQL Server, которые вы пытаетесь изменить.

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

  • Другая причина может заключаться в том, что служба браузера SQL Server не запущена. Когда эта служба не запущена, вы не можете подключиться к именованным экземплярам (когда они используют динамические порты).

  • Также возможно, что Sql Server не настроен для прослушивания TCP-соединений и разрешает только именованные каналы.

    • В меню "Пуск" откройте "Программы" > "Microsoft SQL Server 2008" > Инструменты конфигурации > Конфигурация поверхности SQL Server
    • В утилите конфигурирования Surface Area щелкните ссылку "SQL Server Configuration Manager "
    • Разверните "Конфигурация сети SQL Server" и выберите Протоколы.
    • Включить TCP/IP. Если вам нужны именованные каналы, то вы можете включите их здесь также.
  • И последнее, но не менее важное: брандмауэр Windows должен разрешать подключения к SQL Server

    • Добавить исключение для sqlserver.exe при использовании системы "Динамический порт".
    • В противном случае вы можете поместить исключения для портов SQL Server (порт по умолчанию 1433)
    • Также добавьте исключение для браузера SQL Server. (порт udp 1434)

Дополнительная информация:

Как последнее примечание, SqlLocalDB поддерживает только именованные каналы, поэтому вы не можете подключиться к нему по сети.

Ответ 2

В дополнение к настройке службы обозревателя SQL Server в Services.msc для Automatic и запуску службы мне пришлось включить TCP/IP в: SQL Server Configuration Manager | Конфигурация сети SQL Server | Протоколы для [ИМЯ ИНСТАНЦИИ] | TCP/IP

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

Ответ 3

  • Запустите диспетчер конфигурации SQL Server на своем VPS.

  • Взгляните на конфигурацию сети SQL Server. Убедитесь, что TCP/IP включен .

  • Далее просмотрите службы SQL Server. Убедитесь, что браузер SQL Server запущен.

  • Перезапустите службу для вашего экземпляра SQL Server.

Ответ 4

  • Откройте диспетчер конфигурации SQL Server.... 2. Проверьте, работают ли TCP и UDP или нет. 3.Если не работает, включите их, а также проверьте, работает ли браузер SQL Server или нет. Если он не работает, включите его.

  • Затем вам нужно проверить, какие порты используют TCP и UDP. Вы должны открыть эти порты из брандмауэра Windows.

5. Нажмите здесь, чтобы увидеть шаги по открытию определенного порта в брандмауэре Windows....

  1. Теперь SQL Server готов к доступу по локальной сети........

  2. Если вы хотите получить доступ к нему удаленно (через Интернет), вам нужно выполнить другое задание, которое является "Port Forwarding". Вы открыли порты TCP и UDP, которые используются в SQL Server на вашем маршрутизаторе. Теперь конфигурация маршрутизаторов отличается. Если вы дадите мне информацию о вашем маршрутизаторе (например, название компании и версия), я могу показать вам шаги по переходу на определенный порт.

Ответ 5

Недавно я обновился с SQL 2008 R2 до SQL 2012 и имел аналогичную проблему. Проблема заключалась в брандмауэре, но более конкретно в правиле брандмауэра для SQL SERVER. Таможенное правило было указано на предыдущую версию SQL Server. Попробуйте это, откройте "Брандмауэр Windows" > "Дополнительно". Найдите правило SQL Server (оно может иметь собственное имя). Щелкните правой кнопкой мыши и перейдите в свойства, затем вкладки "Программы и службы". Если "Программы" - эта программа выбрана, вы должны найти подходящую версию sqlserver.exe.

Ответ 6

У меня была такая же проблема, когда мой брандмауэр был настроен правильно, TCP/IP был включен в диспетчере конфигурации SQL Server, но я все еще не мог получить доступ к моей базе данных SQL за пределами компьютера, на котором он находится. Я нашел решение, что браузер SQL Server отключен по умолчанию в службах (и для включения в диспетчере конфигурации SQL Server этого параметра не было).

Я включил его с помощью панели управления > "Администрирование" > "Службы", затем дважды щелкните "Браузер SQL Server". На вкладке "Общие" в раскрывающемся списке задайте тип запуска "Автоматически". Затем вернитесь в диспетчер конфигурации SQL Server и убедитесь, что включен браузер SQL Server. Надеюсь это поможет. введите описание изображения здесь