Я программист, работающий над VPN.
Я использую локальные базы данных большую часть времени, но в моем локальном SQL Server 2005 есть объект сервера Link Server, указывающий на производственный сервер.
Это отлично работало (хотя и медленно по сравнению с VPN), пока компания не попросила некоторых ИТ-специалистов установить новый брандмауэр.
Теперь мои связанные серверы в моей локальной базе данных не работают, когда я пытаюсь получить через них доступ к данным (пример: простая команда выбора)
Named Pipes Provider: Could not open a connection to SQL Server [53].
Более того,
Я могу нормально подключаться к базам данных через SSMS или через SQLCMD в командной строке.
Я очень смущен тем, почему я могу подключиться к удаленному серверу двумя способами, но не через связанный сервер.
Какие-нибудь советы?
Спасибо!
Это может быть связано с тем, что ваш связанный сервер использует протокол именованных каналов для подключения, а новый брандмауэр не разрешает это. Вы можете сделать одно из двух:
Для №2, если вы используете собственный клиент SQL (SQLNCLI), вы меняете поставщика через диспетчер конфигурации SQL Server на своей рабочей станции. Откройте его, разверните «Конфигурация собственного клиента SQL» и нажмите «Клиентские протоколы». Либо переместите TCP / IP в более высокий порядок, чем именованные каналы, либо, если он уже выше, отключите именованные каналы.
Специалисты брандмауэра могут отказаться от вашего запроса на открытие порта 445, так что вы можете застрять при изменении протокола вашего провайдера связанного сервера.