SQL Server サービスとSQL Server エージェント サービスがスタンドアロン サーバーで起動できない

この記事は、SQL Server サービスとSQL Server エージェント サービスがスタンドアロン サーバーで起動しない可能性がある問題を解決するのに役立ちます。

元の製品バージョン: SQL Server
元の KB 番号: 307288

現象

  • 問題 1: スタンドアロン サーバーでは、MSSQLSERVER サービスの起動に失敗し、次のエラー メッセージが表示される場合があります。

    エラー 1068 - MSSQLServer Service でこのサービス操作を実行しているときに 、(依存関係サービスまたはグループの起動に失敗しました。) が発生しました。

  • 問題 2: 同様に、SQLServerAgent サービスも起動に失敗し、次のエラー メッセージが表示される場合があります。

    エラー 1068 - SQLServerAgent Service でこのサービス操作を実行しているときに 、(依存関係サービスまたはグループの起動に失敗しました。) が発生しました。

    問題 1 と問題 2 は、次の両方の条件に該当する場合に発生します。

    • サーバー コンピューターはワークグループ内にあり、ドメインの一部ではありません。
    • MSSQLSERVER サービスと SQLServerAgent サービスの両方が、スタートアップにドメイン アカウントを使用するように設定されています。
  • 問題 3: ドメイン メンバー サーバーでは、サーバーの起動中に MSSQLSERVER サービスが開始されず、イベント ビューアーでイベント ID 7038 の次のメッセージが表示される場合があります。

    MSSQLSERVER サービスは、次のエラーが原因で、現在構成されているパスワードを使用して domain\mssqlsvc としてログオンできませんでした。Source: NetLogon Description: ログオン要求に対応できるログオン サーバーは現在ありません。 MSSQLSERVER サービスが予期せず終了しました。

この問題は、次のすべての条件に該当する場合に発生します。

  • サーバーはドメインの一部です。
  • MSSQLSERVER サービスと SQLServerAgent サービスの両方が、スタートアップにドメイン アカウントを使用するように設定されています。
  • MSSQLSERVER と SQLServerAgent のスタートアップ モードが [自動] に設定されています。

原因

問題 1 と問題 2 は、サーバーがスタンドアロン コンピューターであるために発生します。NetLogon サービスはサーバー上で開始されないため、ドメイン全体のログオン認証は実行できません。

問題 3 は、SQL Server サービスが NetLogon サービスを開始する前に開始しようとしたために発生します。

解決方法

問題 1 と問題 2 を修正するには、次の手順に従います。

  • ローカル システム アカウントを使用するように、MSSQLSERVER と SQLServerAgent の両方のスタートアップ アカウントを変更します。

  • サーバーを再起動します。

問題 3 を解決するには、次の回避策を使用します。

  • 特定の Windows サーバーの遅延開始にSQL Serverスタートアップを構成します。NetLogon などの他の Windows サービスは最初に完了し、SQL Serverは問題なく開始されます。

  • SQL Serverスタートアップを再試行するように構成します。スタートアップは 2 回目の起動時に完了できます。

  • サーバー上のすべてのネットワーク インターフェイスの重複アドレス検出 (-DadTransmits) の値を 1 に変更します。 詳細については、「 Set-NetIPInterface コマンド」を参照してください。

  • SQL ServerサービスとSQL Server エージェント サービスの [回復] オプションを変更します。 [サービス の再起動] を エラー オプションのアクションとして指定します。 このオプションは、使い慣れた Service Control Manager インターフェイスを使用して、管理ツールの [サービス] アプレットから実行できます。

遅延開始オプションでこの問題 3 を解決できない場合は、SQL Server サービスに次の依存関係を追加できます。

  • Ip ヘルパー サービス
  • サーバー サービス
  • ネットワーク リスト サービス

依存関係は、次のコマンドを使用して追加できます。

sc.exe qc MSSQLSERVER ::view dependencies sc.exe config MSSQLSERVER depend=iphlpsvc/LanmanServer/netprofm ::add service dependencies

詳細

スタンドアロン コンピューターでは、 NetLogon サービスを手動起動用に設定する必要があります。