У меня есть торговая точка, установленная на виртуальной машине в моей локальной сети. Программное обеспечение точки продажи ссылается на SQL Server, установленный на той же виртуальной машине (localhost). Использование этой системы, которая ссылается на базу данных, отлично работает из локальной сети, все отлично.
При попытке использовать программное обеспечение для точки продаж либо из WLAN (другая подсеть), либо из VPN, оба выдают одну и ту же ошибку: «Ошибка 40 - не удалось открыть соединение с SQL Server».
Мы запускаем программное обеспечение путем запуска файла .exe на сервере с каждой клиентской машины. Программное обеспечение не устанавливается на клиентах, клиенты запускают его по сети, создавая ярлык с IP-адресом и местоположением файла. Не знаю почему, не спрашивай.
Я потратил целый день на поиск причины и того, как ее исправить, я не знаю, как это сделать, и мне нужна помощь извне, чтобы решить эту проблему. Вот что я пробовал:
И просто для подтверждения, запуск программы в подсетях (или из VPN) открывает программу, но программа выдает эту ошибку SQL Server при попытке подключения, или, по крайней мере, так кажется.
Исправление / обходной путь / решение:
1 Убедитесь, что SQL SERVER включен и экземпляр, к которому вы пытаетесь подключиться, работает.
2 Брандмауэр вашей системы не должен блокировать порт SQL Server.
3 Перейдите в Управление компьютером >> Служба и приложение >> Конфигурация SQL Server 2005 >> Конфигурация сети. Включите протокол TCP / IP. Убедитесь, что порт SQL SERVER по умолчанию 1433.
4 Теперь следуйте этой статье базы знаний MSDN в зависимости от вашего сервера: http://support.microsoft.com/default.aspx?scid=kb;EN-US;914277