none
実行アカウント変更時の問題 RRS feed

  • 質問

  • http://msdn.microsoft.com/ja-jp/library/ms345578(v=SQL.100).aspx

    の手順に従い、SQLServer2008R2SP1のサービス開始アカウントを変更したのですが、

    環境によって、サービスが起動する場合としない場合がありました。

    アカウントの権限が足りないというエラーが出ていたので確認したところ、変更後のアカウントにはサービス実行ユーザとしての権限が付与されていませんでした。

    ローカルポリシーの設定を変更したところ、起動できるようになりました。

    ただし、これは起動できた環境でも同様で、変更後のアカウントにはサービス実行ユーザとしての権限が付与されていませんでした。

    質問は以下の2つです。

    1.サービス実行ユーザとしての権限が付与は通常はインストーラー(今回の手順ではSQL Server 構成マネージャ?)が行うものだと思うのですが、手動での

    作業が必要なのでしょうか。

    2.サービス実行ユーザとしての権限が付与されていないにもかかわらずサービス実行が環境によってできたりできなかったりするのはなぜでしょうか。

    ちなみに環境は4つあり、実行ユーザは変更後も変更前もすべてドメインアカウントです。

    ・クラスタ環境その1     OK

    ・クラスタ環境その2     OK

    ・スタンドアロン環境その1 NG

    ・スタンドアロン環境その2 OK

     

    よろしくお願いします。

     

     

     

    2011年6月28日 6:02

回答

  • サポートから以下のKBの事象であるとの回答をもらい、下記 KB2491998 に記載の Windows Server 2008 の修正プログラムにて、本件の問題を対応できました。

     
       文書番号 : 2491998
       タイトル : Error message when you try to change a user right which includes a virtual account that has the "NT Service\" prefix in Windows Server 2008 or in Windows Vista: "An external error has occurred"
    <http://support.microsoft.com/kb/2491998/hu>
       Additionally, the two user accounts are removed from the user right. Therefore, SQL server cannot start.

    Windows Server 2008 上で、SQL Server がサービス SID を「サービスとしてログオン」に追加した後で、ユーザーがさらにその「サービスとしてログオン」を編集しようとすると、"Failed to save Local Policy Database" エラーにより、失敗するという問題です。

     

    • 回答としてマーク ishiz 2011年12月9日 10:05
    2011年12月9日 10:05

すべての返信

  • 1.サービス実行ユーザとしての権限が付与は通常はインストーラー(今回の手順ではSQL Server 構成マネージャ?)が行うものだと思うのですが、手動での

    作業が必要なのでしょうか。

          SQL Server 構成マネージャから設定を変更すれば、手動で作業は必要ないと思います。

     

    2.サービス実行ユーザとしての権限が付与されていないにもかかわらずサービス実行が環境によってできたりできなかったりするのはなぜでしょうか 

       よく分かりませんが、Windows Server 2003 / XP 上では、変更時の注意点があるみたいです。

    SQL Server のサービス開始アカウントを変更する方法 (SQL Server 構成マネージャ)
    http://msdn.microsoft.com/ja-jp/library/ms345578.aspx

     

     

     

    • 回答の候補に設定 山本春海 2011年8月2日 6:02
    2011年6月28日 8:06
  • 1.サービス実行ユーザとしての権限が付与は通常はインストーラー(今回の手順ではSQL Server 構成マネージャ?)が行うものだと思うのですが、手動での

    作業が必要なのでしょうか。

          SQL Server 構成マネージャから設定を変更すれば、手動で作業は必要ないと思います。


    そう思うのですが、実際にはSQL Server 構成マネージャから設定を変更してもポリシーが変更されておらず、なおかつ起動できている環境とできない環境がでているため質もさせていただいております。

     

    2011年6月28日 8:17
  • SQL Server 構成マネージャ からは、OSのAPIを使用して権限付与をしているのだと思いますので、その環境のローカル/ドメインのセキュリティポリシーの影響なのかもしれません。(セキュリティは詳しくないのであまりよく分からないのですが。)

    1台のマシンでしか発生しないと言われておりますので、環境固有の問題なのかもしれません。

    • 回答の候補に設定 山本春海 2011年8月2日 6:02
    2011年7月1日 5:56
  • 説明が伝わりにくくてすみません。

    権限の付与は全部の環境でNGです。ついていません。

     

    権限がついていないにもかかわらず

    3/4の環境では、サービスが起動できて、1/4の環境ではサービスが起動できていない

    という状況です。

     

    ちなみに、インストーラーでインストール時に設定したユーザにはサービス実行権限がついています。(すべての環境で)

     

     

    2011年7月5日 4:57
  • サポートから以下のKBの事象であるとの回答をもらい、下記 KB2491998 に記載の Windows Server 2008 の修正プログラムにて、本件の問題を対応できました。

     
       文書番号 : 2491998
       タイトル : Error message when you try to change a user right which includes a virtual account that has the "NT Service\" prefix in Windows Server 2008 or in Windows Vista: "An external error has occurred"
    <http://support.microsoft.com/kb/2491998/hu>
       Additionally, the two user accounts are removed from the user right. Therefore, SQL server cannot start.

    Windows Server 2008 上で、SQL Server がサービス SID を「サービスとしてログオン」に追加した後で、ユーザーがさらにその「サービスとしてログオン」を編集しようとすると、"Failed to save Local Policy Database" エラーにより、失敗するという問題です。

     

    • 回答としてマーク ishiz 2011年12月9日 10:05
    2011年12月9日 10:05