Урок 2. Подключение с другого компьютера
В целях повышения безопасности к компоненту Компонент Database Engine выпусков SQL Server Developer Edition, Express Edition и Evaluation Edition нельзя получить доступ с другого компьютера при первоначальной установке. В этом занятии показано, как включить протоколы, настроить порты и брандмауэр Windows для соединения, используя другие компьютеры.
Это занятие содержит следующие задачи.
Включение протоколов
Для повышения безопасности выпуски SQL Server ExpressDeveloper и Evaluation устанавливаются с ограниченными возможностями подключения к сети. Соединяться с компонентом Компонент Database Engine можно с помощью средств, которые выполняются на том же компьютере, но не с других компьютеров. Если разработка будет выполняться на том же компьютере, где установлен компонент Компонент Database Engine, то дополнительные протоколы включать не нужно. Среда Management Studio подключится к компоненту Компонент Database Engine с помощью протокола общей памяти. Этот протокол уже включен.
Если нужно соединяться с компонентом Компонент Database Engine с другого компьютера, следует включить какой-либо другой протокол, например TCP/IP.
Разрешение соединений по протоколу TCP/IP с других компьютеров
В меню Пуск последовательно выберите пункты Все программы, Microsoft SQL Server, Средства настройки и щелкните Диспетчер конфигурации SQL Server.
Могут быть доступны и 32-разрядные и 64-разрядные версии.
Поскольку диспетчер конфигурации SQL Server является оснасткой консоли управления ( Microsoft ), а не изолированной программой, при работе в более новых версиях Windows диспетчер конфигурации SQL Server не отображается как приложение. Имя файла содержит число, представляющее номер версии SQL Server. Чтобы открыть диспетчер конфигурации с помощью команды "Выполнить", воспользуйтесь одним из приведенных ниже путей для последних четырех версий (предполагается, что система Windows установлена на диске C).
В диспетчере конфигурации SQL Server разверните раздел Сетевая конфигурация SQL Server и щелкните элемент Протоколы для <InstanceName> .
Экземпляр по умолчанию (неименованный экземпляр) указан в списке под именем MSSQLSERVER. Если был установлен именованный экземпляр, то в списке будет приведено заданное ему имя. SQL Server 2012 Express устанавливается как SQLEXPRESS, если это имя не было изменено при установке.
В списке протоколов щелкните правой кнопкой мыши протокол, который необходимо включить (TCP/IP), и выберите команду Включить.
После внесения изменений в сетевые протоколы необходимо перезапустить службу SQL Server ; однако это выполняется в следующей задаче.
Настройка фиксированного порта
В целях повышения безопасности в таких системах, как Windows Server 2008, Windows Vistaи Windows 7, включен брандмауэр Windows. При подключении к этому экземпляру из другого компьютера необходимо открыть порт соединения в брандмауэре. Экземпляр компонента Компонент Database Engine , запускаемый по умолчанию, прослушивает порт 1433, поэтому нет необходимости настраивать фиксированный порт. Однако именованные экземпляры, включая SQL Server Express , принимают соединения через динамически назначаемые порты. Прежде чем появится возможность открыть порт в брандмауэре, необходимо предварительно настроить компонент Компонент Database Engine для прослушивания конкретного порта, известного как постоянный порт или статический порт; в противном случае компонент Компонент Database Engine может прослушивать другой порт после каждого запуска. Дополнительные сведения о брандмауэрах, настройках брандмауэра Windows по умолчанию и описание портов TCP, влияющих на ядро СУБД, службы Analysis Services, службы Reporting Services и службы Integration Services, см. в разделе Настройка брандмауэра Windows для разрешения доступа к SQL Server.
Присваиванием номеров портов управляет администрация адресного пространства Интернет (IANA), а списки этих номеров находятся по адресу https://www.iana.org. Портам должны назначаться номера от 49152 до 65535.
Настройка SQL Server для подключения через определенный порт
В диспетчере конфигурации SQL Server раскройте узел Сетевая конфигурация SQL Server и щелкните экземпляр сервера, который надо настроить.
На правой панели дважды щелкните TCP/IP.
В диалоговом окне Свойства TCP/IP перейдите на вкладку IP-адреса .
Введите доступный номер порта в поле TCP-порт раздела IPAll . В данном учебнике используется порт 49172.
Нажмите кнопку ОК , чтобы закрыть диалоговое окно, и кнопку ОК в предупреждении о необходимости перезагрузки службы.
На левой панели щелкните Службы SQL Server.
На правой панели щелкните экземпляр SQL Serverправой кнопкой мыши и выберите пункт Перезапустить. После перезапуска компонент Компонент Database Engine будет принимать соединения через порт 49172.
Открытие портов в брандмауэре
Системы брандмауэров предотвращают несанкционированный доступ к ресурсам компьютера. Для подключения к SQL Server с другого компьютера при включенном брандмауэре в брандмауэре необходимо открыть порт.
Открытие портов на брандмауэре может привести к незащищенности сервера от вредоносных атак. Поэтому для открытия портов требуется понимание работы систем брандмауэров. Дополнительные сведения см. в разделе Security Considerations for a SQL Server Installation.
После настройки компонента Компонент Database Engine на использование фиксированного порта следуйте приведенным ниже инструкциям, чтобы открыть в брандмауэре Windows нужный порт. (Нет необходимости настраивать фиксированный порт для экземпляра по умолчанию, потому что он уже настроен на подключение к TCP-порту 1433.)
Открытие порта в брандмауэре Windows для доступа по TCP (Windows 7)
В меню Пуск выберите команду Выполнить, введите WF.msc и нажмите кнопку ОК.
На левой панели Брандмауэр Windows в режиме повышенной безопасности щелкните правой кнопкой мыши раздел Правила для входящих подключений и выберите на панели действий пункт Создать правило .
В диалоговом окне Тип правила выберите Порт и нажмите кнопку Далее.
В диалоговом окне Протокол и порты выберите протокол TCP. Выберите Определенные локальные порты и введите номер порта экземпляра компонента Компонент Database Engine. Для экземпляра по умолчанию введите 1433. Если в предыдущей задаче был настроен фиксированный порт, а сейчас настраивается именованный экземпляр, введите 49172 . Щелкните Далее.
В диалоговом окне Действие выберите Разрешить соединение и нажмите кнопку Далее.
В диалоговом окне Профиль выберите профили, описывающие среду соединения компьютеров, который нужно подключить к компоненту Компонент Database Engine, и нажмите кнопку Далее.
В диалоговом окне Имя введите имя и описание правила и нажмите кнопку Готово.
Дополнительные сведения о настройке брандмауэра, включая инструкции для Windows Vista, см. в разделе Настройка брандмауэра Windows для доступа к компоненту Database Engine. Дополнительные сведения о настройках брандмауэра Windows по умолчанию и описание портов TCP, влияющих на компонент Database Engine, службы Analysis Services, службы Reporting Services и службы Integration Services, см. в разделе Настройка брандмауэра Windows для разрешения доступа к SQL Server.
Соединение с компонентом Database Engine с другого компьютера
После настройки компонента Компонент Database Engine на прослушивание определенного порта и открытия порта в брандмауэре можно подключиться к SQL Server с другого компьютера.
Если служба браузера SQL Server на сервере запущена и в брандмауэре открыт порт UDP 1434, то подключение можно установить, используя имя компьютера и имя экземпляра. В целях повышения безопасности в нашем примере не используется служба браузера SQL Server .
Соединение с ядром СУБД с другого компьютера
На втором компьютере, содержащем клиентские средства SQL Server , войдите под учетной записью, для которой разрешено подключение к SQL Server, и откройте среду Среда Management Studio.
В диалоговом окне Соединение с сервером выберите Компонент Database Engine в списке Тип сервера .
В поле Имя сервера введите tcp: , чтобы указать протокол, за которым должны следовать имя компьютера, запятая и номер порта. При подключении к экземпляру по умолчанию подразумевается номер порта 1433. Этот номер можно опустить, поэтому введите tcp: <имя_компьютера> . В этом примере для именованного экземпляра введите tcp: <имя_компьютера> ,49172.
Если не указать tcp: в поле Имя сервера , то клиент попытается использовать все включенные протоколы в порядке, указанном в конфигурации клиента.
В поле Проверка подлинности подтвердите значение Проверка подлинности Window, а затем нажмите Подключиться.
Соединение с помощью службы обозревателя SQL Server
Служба браузера SQL Server прослушивает входящие запросы на ресурсы SQL Server и предоставляет сведения об экземплярах SQL Server , установленных на компьютере. Когда служба браузера SQL Server запущена, пользователи могут подключаться к именованным экземплярам, указывая имя компьютера и имя экземпляра вместо номера порта. Поскольку служба браузера SQL Server принимает UDP-запросы без проверки подлинности, во время установки она включается не всегда. Описание службы и объяснение того, когда она включается, см. в разделе Служба обозревателя SQL Server (компонент Database Engine и SSAS).
Чтобы использовать браузер SQL Server , выполните те же шаги, что и ранее, чтобы открыть UDP-порт 1434 в брандмауэре.
На этом краткий учебник по базовым возможностям подключения связи заканчивается.
Как разрешить удаленные подключения к MS SQL EXPRESS 2008?
Далее:
1. проверить подключение из SSMS с локальной машины по этому ip адресу (ip,port/instance)
2. проверить что firewall пропускает подключения по указанному порту
3. проверить подключение SSMS из локальной сети (с другого компьютера)

d-stream,
1.Подключается без проблем.
2. не соображу как проверить. пытался слушать пакеты вайршарком на 1433 порт там тихо
3 с другого компьютера не подключается
с локальной машины подключается по адресу 172.24.9.5\SQLEXPRESS2008, значит ли, что с других машин нужно подключаться по этому адресу? если да, то все равно не работает
Как на sql server разрешить удаленные соединения
Как на sql server разрешить удаленные соединения
2.4.1. Microsoft SQL Server 2000

2.4.2. Microsoft SQL Server 2005
- Разрешите удаленные подключения на экземпляре сервера SQL, к которому необходимо подключаться с удаленного компьютера.
- Включите службу SQL Server Browser.
- С помощью SQL Server Configuration Manager проверьте SQL Server Browser . Если он остановлен, то его необходимо запустить и настроить на автоматический режим запуска (см. рис. 12 – 15).
- После выполнения указанных действий нажмите кнопки «Start»и « OK».
- Проверьте, включен ли TCP\IP протокол, если нет, то включите.
- С помощью SQL Managment Studio проверьте и в случае необходимости, установите разрешение для удаленных подключений (рис. 17 и 18).
- После завершения настроек выполните полный перезапуск MS SQL Server 2005.
2.4.3. Microsoft SQL Server 2008
- Запустите утилиту «Диспетчер конфигурации SQL Server». В разделе «Сетевая конфигурация SQL Server»/«Протоколы для…» нажмите правой кнопкой мыши на строке «TCP/IP» и в контекстном меню выберите пункт «Свойства».
- На закладке «Протокол» установите для параметра «Включено» значение — «Да». На закладке «IP-адреса» в разделе «IPAll» для параметра «TCP-порт» укажите — «1433». Затем нажмите кнопку «ОК» (рис. 20 и 21).
- В разделе «Службы SQL Server» нажмите правой кнопкой мыши на строке «SQL Server (…)» и в контекстном меню выберите пункт «Перезапустить» (этот пункт можно пропустить, если Вы перезагрузите компьютер после завершения остальных настроек).
2.4.4. Создание правил брандмауэра для возможности удаленных подключений к MS SQL Server 2005/2008
Включение удаленных подключений для SQL Server Express 2012
- запустите Диспетчер конфигурации SQL Server на сервере и включите браузер SQL Server
- добавьте исключение Брандмауэра Windows на сервере для TCP, портов 1433 и 1434 в локальной подсети.
- убедитесь, что у меня есть логин на экземпляре SQL Server для пользователя, которого я вошел в систему как на рабочем столе.
- убедитесь, что я использование проверки подлинности Windows на экземпляре SQL Server.
- повторно перезапустите SQL Server и весь сервер dang.
- вытащить все мои волосы.
- запустите Диспетчер конфигурации SQL Server.
- перейдите в раздел Конфигурация сети SQL Server > протоколы для SQLEXPRESS.
- убедитесь, что TCP / IP включен.
- щелкните правой кнопкой мыши TCP / IP и выберите свойства.
- убедитесь, что в разделе IP2 IP-адрес установлен на IP-адрес компьютера в локальной подсети.
- прокрутите вниз до IPAll.
- убедитесь в том, что динамические порты TCP is пробел. (У меня был установлен какой-то 5-значный номер порта.)
- убедитесь в том, что TCP-порт установлено значение 1433. (Мой был пусто.)



- конфигурация сети SQL Server — > протоколы для SQLEXPRESS
- свойства на TCP / IP — > вкладка IP-адреса
- все остается по умолчанию, только установите Ipall: TCP-порт в 1433

- при использовании wstst05\sqlexpress в качестве имени сервера клиентский код разделяется имя машины из имени экземпляра и wstst05 по сравнению с именем netbios. Я не вижу никаких проблем для них, чтобы соответствовать причем соединение считается локальным. Оттуда мы извлекаем необходимая информация без связаться с браузером SQL и подключиться к Экземпляр SQL через общую память без каких либо проблем.
- при использовании wstst05.капатест.локальный\sqlexpress, код клиента не удается сравнить имя (wstst05.капатест.местный) к netbios-имя (wstst05) и считает соединение «удаленным». Это по дизайну и мы определенно рассмотрим улучшать это в будущее. Во всяком случае, из-за рассмотрения удаленного подключения и факта что это именованный экземпляр, клиент решает, что он должен использовать SQLBrowser для разрешения имен. Он пытается связаться с SQL Browser на wstst05.капатест.локальный (UDP-порт 1434) и, по-видимому, эта часть терпит неудачу. Отсюда и ошибка, которую вы получаете.
- любой компонент, который пытается подключиться к именованному экземпляру без полного указания всех параметров (таких как порт TCP/IP или именованный труба).
- любой компонент, который генерирует или передает информацию о сервере\экземпляре, которая позже может быть использована другими компонентами для повторного подключения.
- подключение к именованному экземпляру без указания номера порта или трубы.
- DAC для именованного экземпляра или экземпляра по умолчанию, если не используется порт TCP/IP 1433.
- служба перенаправления OLAP.
- перечисление серверов в среде SQL Server Management Studio, Enterprise Manager или анализаторе запросов.
- необходимо обновить и поддерживать код клиентского приложения, чтобы убедиться, что он подключается к соответствующему порту.
- порт, который вы выбираете для каждого экземпляра, может использоваться другая служба или приложение на сервере, вызывающее экземпляр SQL Сервер будет недоступен.
- открыть управление SQL-сервера Студиязначок .
- если вы не видите ваш сервер (закрепленный слева по умолчанию), нажмите ф8 или перейти к Вид -> Обозреватель Объектов.
- Правой Кнопкой Мыши на имени сервера и выберите свойства (последний пункт)
- в левом нижнем углу вы можете увидеть фактическое имя вашего сервера в разделе»сервер» (не соединение, но выше он.)
Разрешить удаленные подключения к SQL Server, Экспресс-выпуск 2012
- запустите Диспетчер конфигурации SQL Server на сервере и включите браузер SQL Server
- добавьте исключение Брандмауэра Windows на сервере для TCP, портов 1433 и 1434 в локальной подсети.
- убедитесь, что у меня есть логин на экземпляре SQL Server для пользователя, которого я вошел в систему как на рабочем столе.
- убедитесь, что я использование проверки подлинности Windows на экземпляре SQL Server.
- повторно перезапустите SQL Server и весь сервер dang.
- вытащить все мои волосы.
- запустите Диспетчер конфигурации SQL Server.
- перейдите в раздел Конфигурация сети SQL Server > протоколы для SQLEXPRESS.
- убедитесь, что TCP/IP включен.
- щелкните правой кнопкой мыши на TCP / IP и выберите свойства.
- убедитесь, что в разделе IP2 IP-адрес установлен на IP-адрес компьютера в локальной подсети.
- прокрутите вниз до IPAll.
- убедитесь в том, что динамические порты TCP и пробел. (У меня был установлен какой-то 5-значный номер порта.)
- убедитесь в том, что TCP-порт установлено значение 1433. (Мой был пусто.)
правильный способ подключения к удаленному SQL Server (без открытия UDP-порта 1434 и включения браузера SQL Server) использовать IP и порт вместо именованный экземпляр.
использование ip и порта вместо именованного экземпляра также безопаснее, так как это уменьшает площадь поверхности атаки.
возможно, 2 фотографии говорят 2000 слов.
этот метод использует указанный порт (это то, что большинство людей хотят, чтобы я верить.).
этот метод требует открытия UDP-порта 1434 и запуска браузера SQL Server..
Еще Одна Вещь.
Kyralessa предоставляет отличную информацию, но у меня есть еще одна вещь, чтобы добавить, где я был в тупике даже после этой статьи.
В разделе Конфигурация сети SQL Server > протоколы для сервера > TCP / IP включен. Щелкните правой кнопкой мыши TCP / IP и выберите Свойства. Под IP-адреса, необходимо установить возможность Да для каждого типа подключения, который вы используете.


