
Я установил SQL Server Express 2008 на сервере Windows 2008. И я сделал все стандартные вещи в SQL, чтобы разрешить удаленные соединения. Странно, что если я отключу брандмауэр сервера Windows 2008... он работает.
Я открыл порт 1433 на брандмауэре сервера. И tcp включен, есть ли какой-то другой порт, о котором я не знаю.. Я также открываю 1434 ...
в свойствах TCP я включил TCP для IP (конечно, эта часть должна работать, так как если бы я отключил брандмауэр, она бы работала), номер порта оставлен пустым, а динамические порты равны 0
Я попробовал поиграться с установкой номера порта на 1434 и установкой динамического порта как пустого.
Радости по-прежнему нет.
У меня запущен сервер браузера SQL и именованные каналы.
Я запускаю тесты со своего ПК БЕЗ БРАНДМАУЭРА и через SQL Management Studio.
Я, должно быть, что-то упускаю.
Буду очень признателен за любую помощь, которую кто-либо может предложить. Я застрял
Спасибо
решение1
Вероятно, вы забыли выполнить эту команду:
netsh firewall set portopening TCP 1433 "SQLServer"
Вы можете попробовать новую функцию «Исправить это» из этой статьи службы поддержки Microsoft:Как открыть порт брандмауэра для SQL Server на Windows Server 2008?
Страница также содержит скрипт, удалите строки, если вам не нужен SQL Service Broker, отладчик, https и т. д.
@echo ========= SQL Server Ports ===================
@echo Enabling SQLServer default instance port 1433
netsh firewall set portopening TCP 1433 "SQLServer"
@echo Enabling Dedicated Admin Connection port 1434
netsh firewall set portopening TCP 1434 "SQL Admin Connection"
...
netsh firewall set portopening UDP 1434 "SQL Browser"
@echo Allowing multicast broadcast response on UDP (Browser Service Enumerations OK)
netsh firewall set multicastbroadcastresponse ENABLE
решение2
Вы пробовали указать исполняемые файлы как исключения в брандмауэре Windwows? Только на этих выходных я настроил свою собственную машину Win 2008 с SQL 2008, следуя этим шагам, все работает отлично. В процессе не были задействованы никакие номера портов. Могу получить доступ к этому экземпляру удаленно из Sql Management Studio без проблем.
- Пуск->Выполнить-> firewall.cpl
- Разрешить программу через брандмауэр Windows
- Нажмите кнопку «Добавить программу» и выберите «Обзор».
- Добавьте эти два исполняемых файла:
C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\SqlServer.exe C:\Program Files\Microsoft SQL Server\90\Shared\SqlBrowser.exe
решение3
Еще раз проверьте свои настройки с помощью этой статьи от Microsoft:Настройка брандмауэра Windows для разрешения доступа к SQL Server. Если вы не используете именованный экземпляр, то порт 1433, открытый для входящих подключений, должен это сделать. В любом случае просмотрите статью, вы можете обнаружить, что пропустили какой-то шаг.
решение4
Я бы проверил, что SQL-сервер принудительно использует 1433, иначе он может использовать «динамические порты». Откройте Sql Server Configuration Manager > Sql Server Network Configuration > TCP/IP > Свойства > IP-адреса Я установил: * TCP dynamic ports: * TCP port: 1433