ここから本文です

ある日、急にSQL Serverが起動しなくなったら:SQL Serverトラブルシューティング(9)

@IT 7月28日(木)6時10分配信

 本連載では、「Microsoft SQL Server(以下、SQL Server)」で発生するトラブルについて、「なぜ起こったか」の理由とともに具体的な対処方法を紹介していきます。

【解決方法】「SQL Server 構成マネージャー」から、サービス開始アカウントのパスワード登録を変更する

 前回まで、SQL Serverの起動時に「起動から、利用できるようになるまでの流れ」と「裏で、どんなプロセスが動いているのか」について、重要な「4つの技術的背景」を解説しました。

 今回はこれを理解した上で、「SQL Serverがうまく起動しない」ときのトラブル対処方法を説明します。

●トラブル 04(カテゴリー:起動トラブル):ある日、急にSQL Serverが起動しなくなった

 今回は、「Windows Server 2012」上に「SQL Server 2016 RTM」をインストールした環境を想定して解説します。

トラブルの実例:SQL Serverには何の変更を加えていないのに、ある日、急にSQL Serverが起動しなくなった。Windowsのシステムログを確認すると、「エラー7000」が記録されていた。

○トラブルの原因を探る

 Windowsのシステムログのインデックスを確認すると、エラー7000の「ログオンに失敗したため、サービスを開始できませんでした」というメッセージの前に、エラー7038の「ユーザー名またはパスワードが正しくありません」というエラーメッセージも記録されていました。

 エラー7038が出力されるよくある原因は、「サービス開始アカウントのパスワードを変更した(変更されていた)」です。

 社内のセキュリティポリシーなどに従って、アカウントのパスワードを定期的に変更するのはよくあることかもしれません。しかし、該当するアカウントがSQL Serverのサービス開始アカウントである場合には注意が必要です。

 サービスが稼働中ならば、サービス開始アカウントのパスワードが変更されたとしても、エラーが出たり、終了したりすることはありません。しかし、いったん終了させ、あらためて起動する場合は別です。次にサービスを開始するタイミングでアカウントの新しい資格情報が使われます。つまり、サービス開始アカウントのパスワードが違うので、起動できずにエラーとなってしまうわけです。

○解決方法

 このトラブルは、「コントロールパネル」→「管理ツール」→「イベントビューアー」→「Windowsログ」→「システム」とたどって出力されたエラーメッセージを調査し、全て解決することで解消できます。

 SQL Serverで使うサービス開始アカウント情報を変更するには、Windowsサービスコントロールマネージャーではなく、「SQL Server 構成マネージャー」を使います。ここから、アカウントのパスワードを更新します。

●筆者紹介
内ヶ島 暢之:ユニアデックス株式会社所属。Microsoft MVP Data Platform(2011~ )。OracleやSQL Serverなど商用データベースの重大障害や大型案件の設計構築、プリセールス、社内外の教育、新技術評価を行っていた。2016年4月よりIoTビジネス開発の担当となり、新しい仕事に奮闘中。ストレッチをして柔らかい身体を手に入れるのが当面の目標。
椎名 武史:ユニアデックス株式会社所属。入社以来 SQL Serverの評価/設計/構築/教育などに携わりながらも、主にサポート業務に従事。SQL Serverのトラブル対応で社長賞の表彰を受けた経験も持つ。休日は学生時代の仲間と市民駅伝に参加し、銭湯で汗を流してから飲み会へと流れる。

最終更新:7月28日(木)6時10分

@IT