Браузер SQL Server показывает только имя хоста, а не имя экземпляра

Я только что установил новый компьютер с Windows Server 2008 с экземпляром SQL Server 2008 Express. Служба обозревателя SQL работает неправильно. В Management Studio при просмотре серверов отображается имя хоста нового сервера, но не имя экземпляра. Когда вы выбираете имя хоста из списка, оно не подключается. Но я могу подключиться вручную, введя комбинацию hostname\instancename.

обновление 1:

  1. Служба браузера работает, и я пробовал ее с несколькими разными учетными записями, в том числе с администратором домена, что является плохой практикой, но я все равно пытался для устранения неполадок.
  2. Я пробовал пробить соответствующие отверстия в брандмауэре, а также полностью отключить брандмауэр.
  3. Это работает на 32-разрядной гостевой системе Hyper-V, Windows Server 2008, которая находится на 64-разрядном хосте Windows Server 2008. Я делал это раньше (без проблем) на том же хосте, но с SQL 2008 Standard вместо Express.
  4. Когда я просматриваю сервер в SSMS (Express) на компьютере с SQL Server, он работает нормально и показывает полное имя экземпляра. Когда я просматриваю его на удаленном компьютере (в той же интрасети) с помощью SSMS (стандарт), он просто показывает имя хоста.

обновление 2:

Следовал за пакетами, как было предложено, и нашел следующее

  1. Клиент отправил широковещательную рассылку, как и ожидалось, и получил правильные ответы от других серверов SQL в той же сети.
  2. Сервер получил широковещательную рассылку, но не отправил ответ.

Учитывая эти результаты, я удивляюсь, почему имя хоста вообще появляется в списке клиентов. Он вообще не должен появляться, верно?

обновление 3:

Провел полтора часа по телефону с техподдержкой Майкрософт. Я узнал несколько вещей, но проблема еще не решена. Было предложено попробовать установить экземпляр SQL Standard на том же компьютере. Я так и сделал, и новый экземпляр проявляет все те же симптомы. Имя хоста отображается в списке просмотра только один раз, а не один раз для каждого экземпляра.

обновление 4:

Stackoverflow выбрал для меня ответ благодаря системе вознаграждений, но на этот вопрос нет ответа. Сегодня попробовал перенести всю виртуальную машину на другой хост-сервер - все точно так же. Имя хоста по-прежнему отображается в списке просмотра без имени экземпляра.

обновление 5:

Подтверждено, что службы интеграции Hyper-V установлены на гостевом (SQL) сервере.


person Community    schedule 20.03.2009    source источник
comment
:( возможно, это как-то связано с Hyper-V и драйвером сетевой карты или с чем-то еще низкоуровневым? Это между двумя гостевыми виртуальными машинами на одном хосте?   -  person Nick Kavadias    schedule 01.04.2009
comment
Это возможно. Но у обоих этих хостов Hyper-V были другие гости с сервером sql, которые не проявляли этих симптомов.   -  person ScottStonehouse    schedule 01.04.2009


Ответы (5)


проверьте, запущена ли служба браузера, она не включена по умолчанию.

ОБНОВЛЕНИЕ 1: проверьте, можете ли вы установить Сетевой монитор/Wireshark для трассировки сети на SQL Server для посмотрите, получает ли он широковещательные сообщения и отправляет ли ответы. Я думаю, что это ваш лучший вариант в устранении этой проблемы. Согласно MSDN, служба использует UDP-порт 1434, так что это трафик для просмотра.

ОБНОВЛЕНИЕ 2. У сервера несколько IP-адресов? Согласно этой статье MSDN, у брандмауэра Windows Server 2008 возникают проблемы с реагированием на Служба SQL Browser выполняет широковещательную рассылку, даже если правила разрешают прохождение пакетов.

person Nick Kavadias    schedule 21.03.2009
comment
клиент и сервер находятся в одном широковещательном домене? то есть подсеть? - person Nick Kavadias; 21.03.2009
comment
Да, мы в одной подсети. - person ScottStonehouse; 23.03.2009
comment
Только один IPv4-адрес, но это интересная ссылка. Я пробовал полностью отключать брандмауэр. - person ScottStonehouse; 27.03.2009
comment
Извините, это было непонятно. Пробовал отключать брандмауэр, не помогло. - person ScottStonehouse; 27.03.2009

Я склонен не полагаться на просмотр. Вы получите противоречивые результаты, потому что просмотр отправляет широковещательный пакет udp/1434 и ждет ответа. Однако, поскольку вы можете подключаться удаленно через ИМЯ_СЕРВЕРА\ИМЯ_ЭКЗЕМПЛЯРА, этот аспект службы браузера SQL работает. Если бы это было не так, вы бы не смогли подключиться. С учетом сказанного, чтобы устранить неполадки в части просмотра:

  • Вы пытались остановить и перезапустить службу браузера SQL?
  • Вы пытались остановить и перезапустить экземпляр, если это не сработало?

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

person K. Brian Kelley    schedule 21.03.2009
comment
Да, я сделал и то, и другое. Также десятки раз перезагружался и клиент, и сервер - практически после каждого изменения, которое я пробовал. На новой машине пока ничего критичного нет, так что перезагрузка не проблема. - person ScottStonehouse; 23.03.2009
comment
Это хороший момент, служба браузера на самом деле работает до некоторой степени, иначе я бы не смог подключиться - она ​​настроена на динамические порты. - person ScottStonehouse; 23.03.2009

Похоже, служба просмотра как-то испорчена ...

Я не знаю, можете ли вы временно отключить этот SQL Server. Но если это так, вы можете попробовать это:

  1. Полностью удалите все SQL\экземпляры.
  2. Запустите установку SQL Express 2008.
  3. Создайте экземпляр по умолчанию во время установки (не именованный экземпляр)
  4. Запустите программу установки еще раз и создайте именованный экземпляр по умолчанию (SQLExpress).
  5. Попробуйте снова подключиться к указанному экземпляру. Если это работает, вы можете удалить экземпляр по умолчанию.
person Community    schedule 27.03.2009

У меня была такая же проблема в виртуальной машине. После отключения брандмауэра все заработало.

person Community    schedule 05.08.2009

У меня была такая же проблема. Мне не удалось увидеть имена экземпляров на вкладке «Сетевые серверы SSMS». Оказалось, что я настроил Hyper-V и создал внутреннюю сеть на своей локальной машине. Эта сеть была определена как общедоступная/гостевая сеть, и для нее был ВКЛЮЧЕН брандмауэр Windows, даже несмотря на то, что в настройках моего домена брандмауэр ОТКЛЮЧЕН. Как только я отключил эту гостевую сеть на своем компьютере, я смог увидеть все экземпляры.

Компьютеры: Физический ноутбук с SQL Server 2014 Ent Windows 8.1 и Hyper-V.

person Community    schedule 06.06.2014