Это частичная настройка, но я не уверен, что меня просили достичь на 100%.
1 server
2 instances of SQL Server
1 internal IP for each sql instance
1 external IP for each sql instance
Оба экземпляра установлены и работают для удаленного доступа с отдельного IP-адреса, поэтому для подключения через SSMS, например, просто введите внешний IP-адрес, пользователя, пароль и он подключится.
Внутренний IP: 192.168.0.9
Используя вышеупомянутый IP-адрес от фактического сервера, на котором находятся два экземпляра, это подключается, как ожидалось
Внутренний IP: 192.168.0.10
Снова подключение с использованием указанного выше IP-адреса с правильным именем пользователя и паролем, из ЖЕСТКОГО окна два экземпляра работают нормально.
Если вы попытаетесь подключиться к экземпляру 2 с другого компьютера в той же сети, он будет указывать на экземпляр SQL 1 вместо 2. Единственный способ подключения - использовать IP \ InstanceName.
Возможно ли, чтобы они были доступны со своего собственного IP-адреса, если они настроены в одном окне, или вы ДОЛЖНЫ использовать имя экземпляра. Он отлично работает из коробки, на которой установлены экземпляры, но не с других компьютеров в сети.
IP-адрес или DNS-имена разрешаются только серверу.
На самом сервере вызов направляется по имени экземпляра или номеру порта на соответствующий экземпляр.
Server\Instance2
Server,1234
Server\Whatever, 1234 -- port overrides instance name
Вы можете настроить псевдонимы клиентов для каждой клиентской машины, но это накладные расходы на управление, и я бы не рекомендовал это делать.
В общем, нет, вы не можете привязать экземпляр SQL Server к IP-адресу. Вам нужно имя экземпляра или номер порта.
Сам не тестировал, но это может помочь. Альтернативный подход - оставить порт прежним (1433) и использовать второй IP-адрес.
1. Прежде всего, добавьте свои дополнительные IP-адреса на хост-машину.
2.Настройте SQL Server для использования нового IP-адреса.
Диспетчер конфигурации SQL Server - это инструмент, который нужно использовать. Используя версию 2008 года, я могу видеть службы и протоколы для экземпляров 2005 и 2008 на моем компьютере.
По умолчанию SQL прослушивает все порты и динамически определяет, какие из них использовать. Нам нужно остановить это поведение, т.е. ограничить установку SQL одним портом на одном порту, чтобы экземпляры могли сосуществовать.
Под каждым экземпляром откройте свойства TCP / IP. Установите "Listen All" = No. Установите желаемый IP-адрес и порт. Отключите прослушивание IP-адресов, отличных от выбранного вами основного. Отключите динамические порты, удалив «o» из динамических портов TCP для всех IP-адресов (кроме 127.0.0.1 и «IPAll»). Перезапустите службы SQL.