none
データベースの状態が「復旧待ち」になる原因 RRS feed

  • 質問

  • お世話になります。

    以下の現象の発生原因についてご存知の方がおられたらご教示ください。

    客先でSQL Server 2014にてデータベースを設定しています。
    2015年夏ごろSQL Server 2000からSQL Server 2014に移行しました。
    移行してから数回一部の客先でデータベースの状態が「復旧待ち」になるデータベースがありました。

    頻度としては低いのですがたまにこのような現象が発生します。

    (質問)

    現在SQL SERVERの最大メモリを無制限にしているのですが物理メモリの80%ぐらいに設定すると

    オフラインになる現象が軽減されますでしょうか?


    データベースの設置数:7ヶ

    該当分のDBサイズ:7MB、ログ:1MB

    よろしくお願いします。

    2018年2月3日 0:33

すべての返信

  • mdfが破損していることも考えられます。Windowsのイベントログには何か出ていないでしょうか?
    また、dbcc checkdbで整合性をチェックされると、何か報告されるかもしれません。

    ★良い回答には質問者は回答済みマークを、閲覧者は投票を!

    2018年2月6日 1:53
  • ●必ず発生する場合
    →trapemiyaさんのおっしゃる通り、DB破損が考えられるかと思います。

    ●必ずではない場合
    →それ以外の要因となります。
     私が経験する事象としては、SQL Serverの起動中にDBチェック、前回のスナップショット+コミットログを元にDBコミットが走るはずなのですが、その過程で止まることがあります。
     DBが何かしら捕まれていたり、タイムアウトになるとPendingRecovery(復旧中)になるように感じます。

    →起動後に、SQL Serverインスタンスを再度起動してみて改善しますでしょうか。
     (都度行うことが面倒な場合は、スタートアップ処理を見直すことをお勧めします)
     それでも改善しないようであれば、WindowsのイベントログやSQL Serverのログをご参照なさることをお勧めします。

    • 編集済み 84taka 2018年2月6日 2:14
    2018年2月6日 2:09
  • trapemiya様、回答ありがとうございます。

    整合性チェックの実行を検討してみます。

    2018年2月9日 8:11
  • 84naka様、回答ありがとうございます。

    ●必ず発生する場合 →必ず発生するわけではありません。

    SQL Serverのログ→次回客先訪問時に内容を確認してもらいます。

    2018年2月9日 8:15
  • よろしくお願い致します。
    2018年3月14日 4:16