У меня запланированное задание, которое выполняется в базе данных SQL Server 2005.Он запускает сохраненный процесс, который импортирует данные из представления.Это представление состоит из OPENQUERY
к связанному серверу Oracle.
У меня нет контроля над сервером Oracle - он географически и виртуально отделен от установки Sql Server.Представление имеет только доступ только для чтения, и я получаю от него данные каждые 30 минут.
Иногда подключение к связанному серверу прерывается, зависает или перестает отвечать на запросы.Когда это происходит, задание (на SQL Server) также зависает, ожидая, когда соединение вернется.Задание никогда не завершается и не завершается в этом сценарии, и первое, что я знаю о нем, - это когда пользователи жалуются на отсутствующие данные.
Запрос базы данных на том же сервере завершается неудачно, как и ожидалось, если есть соединениепроблема - только когда OPENQUERY
используется на связанном сервере Oracle, он теряет свою «осведомленность» о соединении.
Есть ли способ заставить работу понять, что соединение с Связанным сервером разорвано ипотерпеть неудачу соответственно?Или мне нужно создать второе задание, чтобы убедиться, что первое не зависло?