У меня установлен SQL Server 2000 на сервере, с которым у меня возникают странные проблемы с подключением.
Используя SSMS, я не могу подключиться к нему с помощью псевдонима, который я настроил в Configuration Manager. Псевдоним настроен на использование TCPIP, который является первым протоколом в порядке ниже общей памяти. Если я использую то же имя сервера, что и в псевдониме, я могу подключиться нормально.
Я вижу точно такое же поведение в моем приложении ASP.NET, используя псевдоним, я получаю сбой подключения, и имя, которое оно подключает, просто отлично. Строка подключения ASP.NET не указывает протокол.





Указывает ли псевдоним протокол? Этот протокол принимается сервером? Этот протокол используется при подключении по имени? (т.е. каков порядок клиентских протоколов)
Использование имени сервера будет использовать протокол соединения по умолчанию для клиента. Это могут быть именованные каналы или tcp / ip (версия MDAC, обновление или установка и т. д.).
The Alias is set to use TCPIP which is the first protocol in the order below shared memory
Я предполагаю, что если псевдоним клиента настроен на использование tcp, то сервер настроен только на прослушивание именованных каналов, поэтому он работает только с именем сервера. В конечном итоге клиент найдет именованные каналы в своем списке используемых протоколов.
Для проверки замените servername на np: servername и tcp: servername, чтобы изменить протокол без с использованием псевдонима.
Или проверьте, что сервер слушает, и исправьте это ...
Другой вариант - нестандартный порт TCP (сервер, а не 1433) или брандмауэр, предотвращающий доступ к порту 1433/1434.