2013-10-08 4 views
2

Может ли кто-нибудь указать мне на соответствующую информацию BOL для этого (нечетного для меня) поведения?Полное доменное имя SQL Server: непризнанный IP/экземпляр

Я должен был присоединиться к prod & промежуточным копиям одной и той же таблицы (то же имя db, серверы diff), для быстрого запроса. Поэтому мне просто нужно было полностью квалифицированное объединение.

Это одна ошибка:

SELECT top 10 * 
FROM [172.26.196.105\Staging].[DbName].[dbo].[TableName] 

Это один работает:

SELECT top 10 * 
FROM [USCASQL01\STAGING].[DbName].[dbo].[TableName] 

Edit: уточнение ... очевидно, не присоединиться, эти просто выбирает меня сборки полное имя моей постановки дб/таблица. Это не связанный сервер, а тот, с которым я подключен.

Эти, конечно, относятся к одному экземпляру. Я использовал IP-адрес \ InstanceName, так как это то, что отображается в моем обозревателе объектов, оно возвратило ошибку - «Не удалось найти IP-адрес сервера \ имя_экземпляра в sys.servers». Правда, sys.servers хранит имя_компьютера \ InstanceName, которое работает.

Зачем работать, а не другим? IOW. Почему он не может разрешить имя IP/экземпляра в TSQL, когда он разрешает его просто отлично в Object Explorer? Кстати, мы часто храним IP в sys.servers, этого просто не случилось.

Кроме того, я помню из SQL Server7 (обратно в тот же день), которая позволит вам создавать псевдонимы дружественного имени для ip. Не можете найти его сейчас, он все еще существует?

ТИА

+0

Вы пытались ввести FQDN/IP в файл хостов сервера? –

+0

У меня нет. Не знакомо с этим, но сейчас я буду исследовать его. Спасибо за совет. –

+0

% systemroot% \ system32 \ drivers \ etc \ hosts Открыть файл в сеансе повышенной записи. В файле довольно просто, как добавить информацию. –

ответ

2

Это потому, что первая часть из четырех частей квалифицированного имени в представляет собой ссылку на связанный сервер по имени, а не именем IP или сети. Итак, если у вас нет настроенного связанного сервера, вы получите сообщение об ошибке, с которой вы столкнулись.

Для добавления связанных серверов, вы хотите посмотреть sp_addlinkedserver.

This is the BOL Page, который описывает, как работают четыре названия частей.

+0

Привет, Мэтт. Это не связанный сервер. Это был сервер, к которому я был подключен (этап). Вот почему я был настолько удивлен, что не смог разрешить IP/InstanceName как часть сервера. –

+0

@JM -> Это не может быть связанный сервер. Но первая часть квалифицированного имени из четырех частей * * ссылается на связанный сервер. Поэтому, если эта первая часть не находится в sys.servers, вы не получаете джек. –

Смежные вопросы