Назад | Перейти на главную страницу

Ошибка при выполнении sqlcmd между серверами из-за проблемы с брандмауэром

У меня есть сервер приложений с IP-адресом 10.107.0.100 и один сервер базы данных, на котором установлен SQL Server 2012, с IP-адресом 10.107.0.101.

К этому серверу выполняются удаленные подключения, брандмауэр включен, а сервер работает под управлением Windows Server 2008 R2.

Теперь на моем сервере приложений я выполняю командный файл, который удаленно подключается к серверу базы данных, создает мою базу данных и выполняет все операции, которые я хочу, но это работает только тогда, когда брандмауэр выключен.

Как только я включаю брандмауэр, я получаю сообщение об ошибке «удаленное соединение не разрешено».

Я погуглил его, и он сказал добавить номер порта к ВХОДЯЩИМ ПРАВИЛАМ НА МОЕМ СЕРВЕРЕ БД. Я добавил к этому порты 1433 и 1444, но мне не помогло.

Итак, как я могу решить эту проблему с брандмауэром?

SQL Server по умолчанию отвечает на динамический порт. Если вы хотите, чтобы SQL отвечал на 1433, вам нужно настроить его на это. Возможно, менее интуитивно понятная часть заключается в том, что значение TCP Dynamic Ports установлено на 0, чтобы включить его, и чтобы отключить его, вам нужно удалить 0.