朝起きたらこのサイトがSQLのエラーを吐いて見られないじゃないですか・・・。#__session テーブルが壊れたようです。
もし、あなたのJoomla! サイトで、こういう事があっても慌てる必要はありません。
対応
- phpMyAdminを開く
- #__session(jos_session)テーブルを開く
- 操作(Operations)を開く
- 修復(Repair table)します。または、空にする。
これで復旧します。
以前(1.0.xの時)から、聞いてはいましたが、具体的な対策はしていなくてどういうときになるのかまで追求していませんでした。検索しても該当するものはヒットしても、対策までは書かれていない。また、どうすればその問題が起こるのかを検証しようにもわからない。今回失敗したのは、そのときのスナップを残しておけば良かったのだが、すべてクリアしてしまったことです。(慌てているのは、自分だろうか・・・)
仮の対策として、セッションテーブルのインサートとアップデートでエラーが起きた場合、テーブルを空にするか修復するのはどうだろうか。
セッションのテーブルは、アクセスしてきたユーザのセッションデータを保持することが仕事で、エラーが発生すること自体が問題で、それでも良いのではないかと思う。テストしてみると、一度はエラーで止まりはするが、リロードすれば通常画面になる。こうすることで少なくとも気づくまで修復できないことは、防ぐことができるのではないかと思います。
でも結局、もうひとつ加えて、エラー画面をださないようにしてみることにしました。
原因はわからないが、もし、物理的な事が原因なら、こういう対策しか無いのではないかと思う。









