Как я могу подключиться к Sql Server 2008 удаленно, используя IP-адрес?
-
06-07-2019 - |
Вопрос
Когда я публикую свой проект, клиенты должны будут иметь возможность настроить первоначальную конфигурацию, частью которой является подключение к базе данных Sql.У меня есть экземпляр Sql Server 2008, работающий в моей системе (MSSQLSERVER2008), а также SQLEXPRESS2005.Я пытаюсь использовать следующую строку подключения локально, чтобы проверить, работает ли это, и не могу заставить ее работать:
ConnectionString = {Data Source=127.0.0.1;Initial Catalog=DCOMProductionsDesktop;Integrated Security=False;User ID=DCOMProductionsDesktopService;Password=;Network Library=dbmssocn}
Я получаю обычную ошибку: «Целевая машина активно отказалась от соединения».
*Там нет брандмауэров работает, и его внутри сети в любом случае * Протоколы TCP/IP включены *Удаленные соединения включены и разрешены
Итак, я в тупике.
Редактировать
Я изменил источник данных строки подключения на:
DataSource=192.168.0.2\MSSQLSERVER2008 on my WinXP VM (for testing remotely)
Теперь это сработало.Но когда я разверну это в Интернете, будет ли та же самая строка подключения работать для клиентов за пределами моей сети, использующих такое доменное имя, как:
DataSource=desktop.dcomproductions.com\MSSQLSERVER2008
Или мне нужно будет сделать что-то другое?
Решение
Это будет работать, пока «desktop.dcomproductions.com» или что-то еще разрешается в правильный IP-адрес.Поэтому это имя должно быть правильно настроено либо в общедоступном, либо в частном DNS.
Кроме того, убедитесь, что он разрешается в общедоступный/внешний IP-адрес, если только сценарии вашего клиента не будут находиться в той же сети, что и сервер SQL.
Думал, что публикую это как ответ, а не комментарий :)
Другие советы
Прошло некоторое время, когда я использовал что-то кроме именованных каналов для подключения к экземпляру сервера sql, так что это может быть неактуально, но попробуйте изменить источник данных на сервер.
Возможно, это синонимы, как я уже сказал, прошло много времени.
Кроме того, даже если вы используете IP-адрес, вы не указываете экземпляр сервера sql для подключения, что также может вызывать проблемы.