Порядок зависимости служб Windows XP и SQL Express

Несколько лет назад я построил и развернул систему на XP, которая включала пользовательский письменный сервис, который общался с локальным экземпляром SQL Express 2008 года (который также имел зависимость CLR). В то время я настраивал пользовательскую службу так, чтобы она зависела от запуска службы Express, и все казалось хорошо.

Перенесемся на эту неделю, где мой клиент звонит мне, чтобы выяснить, почему все не работает должным образом (и, видимо, какое-то время не было - очень длинная история).

Что я увидел, так это то, что при перезагрузке машины 7 раз из 10 все получалось нормально. Для тех 3 из 10, когда это не помогло, моя таможенная служба жаловалась на такие вещи, как:

  • Не удалось подключиться к экземпляру SQL
  • Экземпляр SQL жаловался, что подсистема CLR не была включена
  • Время ожидания экземпляра SQL при выполнении запроса истекло

Но затем при ручном перезапуске моей настраиваемой службы (задолго до перезагрузки компьютера) она возникла без ошибок.

Таким образом, кажется, что когда XP говорит, что система SQL Express была запущена и работала, она иногда не была полностью запущена и работала, и возникло непредвиденное состояние гонки, которое разрушает мои предположения о порядке зависимостей службы XP.

Итак, мои вопросы:

What does it mean when the SQL Express instance announces to the XP service system that it is up and running?

Does it mean all components have been initialized and are ready to work, or is more of a "Hello world" statement?

Наконец, я также заметил, что мой клиент загрузил на компьютер несколько других программ, которые, вероятно, выявили / вызвали состояние гонки, которое я вижу. И да, мы также начали обсуждать, что потребуется, чтобы перенести их с XP на W7.

1 ответ

Один из вариантов - установить параметры восстановления для службы. После сбоя перезапустите его через короткий промежуток времени.

введите описание здесь

Другие вопросы по тегам