SQL Serverが正しく再起動しなくなってしまった(起動トラブル):SQL Serverトラブルシューティング(11)
本連載は、「Microsoft SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は「SQL Serverが正しく再起動しなくなった場合の対処方法」を解説します。
本連載では、「Microsoft SQL Server(以下、SQL Server)」で発生するトラブルについて、「なぜ起こったか」の理由とともに具体的な対処方法を紹介していきます。
トラブル 06(カテゴリー:起動):SQL Serverが正しく再起動しなくなってしまった
「Windows Server 2012」のクラスタ環境上に「SQL Server 2016 RTM」をインストールした環境を想定して解説します。
トラブルの原因を探る
Windowsのシステムログ(「イベントビューアー」→「Windows ログ」→「システム」)を確認すると、エラー1254の「クラスター化された役割’SQL Server(MSSQLSERVER)’がフェールオーバーのしきい値を超えました。割り当てられたフェールオーバー期間内に試行できる構成済みのフェールオーバー回数の上限に達したため、エラー状態のままとなります」というメッセージが記録されていました(図6-2)。
「構成済みのフェールオーバー回数の上限」について、フェールオーバー クラスター マネージャーから設定内容を確認してみます(図6-3)。
今回の例では、2ノードでクラスタを構築しています。そして上記の設定は、6時間に1回までのエラー(エラーテストの実施も含む)ならば、通常通り再起動を試みます。しかし、2回以上エラーが発生したら「もう無理(再起動するだけでは直らない)」とみなし、再起動をせずに「失敗した状態のままにする設定」となっていることが分かりました。
これは、意図したエラーテストであっても……1回とカウントされます。入念に準備したがゆえに発生してしまう、意外な落とし穴となるトラブルです。
解決方法
この「もう無理」とみなす“しきい値”である「エラー回数」と「判定期間」を、図6-3のフェールオーバー クラスター マネージャーより変更します。テスト時には、エラー回数を少し多めにするか、期間を短めにしておくとよいでしょう。ちなみにエラー回数は、クラスターサービスを再起動することでもリセットできます。
なお、このトラブルは、フェールオーバー クラスターの機能を使う「AlwaysOn可用性グループ」でもよく発生するので、ご注意ください(*1)。
「SQL Serverサービスが自動的に再起動しなくなった」場合の解決手順
- イベントベントビューアー(「Windows ログ」→「システム」)を確認して、エラーの内容や原因を調べる
- (本例の場合は)指定した期間内の「許容する最大エラー数」の値を増やす
- (本例の場合は)クラスターサービスを再起動する
筆者紹介
内ヶ島 暢之(うちがしま のぶゆき)
ユニアデックス株式会社所属。Microsoft MVP Data Platform(2011〜 )。OracleやSQL Serverなど商用データベースの重大障害や大型案件の設計構築、プリセールス、社内外の教育、新技術評価を行っていた。2016年4月よりIoTビジネス開発の担当となり、新しい仕事に奮闘中。ストレッチをして柔らかい身体を手に入れるのが当面の目標。
椎名 武史(しいな たけし)
ユニアデックス株式会社所属。入社以来 SQL Serverの評価/設計/構築/教育などに携わりながらも、主にサポート業務に従事。SQL Serverのトラブル対応で社長賞の表彰を受けた経験も持つ。休日は学生時代の仲間と市民駅伝に参加し、銭湯で汗を流してから飲み会へと流れる。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- マイクロソフト、「SQL Server 2016」正式版を2016年6月1日リリース
マイクロソフトは、データベースソフトウェアの最新版「SQL Server 2016」を6月1日より一般向けに出荷開始すると発表した。 - 「SQL Server 2016」に搭載される新たなセキュリティ対策を追う
パブリックプレビューが公開されているマイクロソフトのRDB次期版「SQL Server 2016」。特徴の1つとするセキュリティ対策機能のポイントと目指すところをキーパーソンに聞いた。 - クエリストアって何だ? SQL Server 2016のパフォーマンス向上に注目
2015年6月に開催されたイベント「DB tech showcase」の講演の中から、2016年にも正式版がリリースされる次期SQL Serverの目玉機能をウオッチ。 - Oracleから「SQL Server 2016」へ、マイクロソフトが移行支援策を展開
日本マイクロソフトが「SQL Server 2016」の導入支援策を発表。Oracle Databaseからの乗り換えで、ライセンスを特別価格で提供する。