XOOPSのトップ画面にエラー表示が出て表示されなくなってしまいました-database のパスワードの変更が原因

別のXOOPSのテストサイトで、下記のようなエラー表示が出てしまいました。
——————————–
This page cannot be displayed due to an internal error.

If you are the administrator of this site, please visit the Xoops Troubleshooting Page for assistance.

Error [Xoops]: Unable to connect to database in file class/database/databasefactory.php line 34
——————————–
結論から先に書きますが、phpMyAdmin に入るためのパスワードを変更してしまったからでした。

変更前のパスワードに戻したところ、このエラー表示は消えて、無事元のXOOPSのトップ画面が表示されるようになりました。
——————————–
今回のエラー表示を検索エンジンで調べたところ、公式サイトを含めてたくさんのサイトが出てきました。

ということは、このエラー表示に悩まされている人が多いということだと思います。

また、たくさんのサイトは出てきたのですが、解決まで非常に時間がかかってしまいました。

そこで、今回の解決までの道筋を順を追ってご報告しようと思います。
——————————–
【きっかけ】

テストサイトでも、WordPressを使っているのですが、管理者で書き込みができなくなってしまいました。

そこで、MySQLの再起動をしてみたのですが、やはり書き込みはできませんでした。

ならば、phpMyAdminに入って、WordPressの箇所を確認しようとしたのですが、パスワードがわからなくなってしまいました。

そこで、「パスワードを変更」して、新しいパスワードでphpMyAdmin にアクセスしました。

内容をいろいろ確認したあとに、ログアウトしてテストサイトにアクセスしたところ、上のエラー表示がでるようになりました。
——————————–
【解決までに遠回りした理由】

今考えると、パスワードを変更した直後にエラー表示が出たので、エラーの直前の作業=「パスワード変更」を疑うべきでした。

しかし、もともと、WordPressに不具合が出ていましたし、phpMyAdminにはアクセスできましたので、「パスワード変更はうまくいった」、「原因は他にあるはずだ」、と思い込んでしまっていました。

しかも、phpMyAdminにアクセスして、XOOPSのdatabaseを確認していたら、次のようなエラー表示が出ていたのです。
——————————–
エラー
phpMyAdmin の独自機能であるリレーション機能を処理するためのリンクテーブルが有効になっていません。これを解決するには ここ をクリックして原因を発見してください。

サーバー: localhost – データベース: xoops_
PMA Database … OK ではありません。[ ドキュメント ]
リレーション機能 無効
——————————–
phpmyadminのエラー表示
——————————–
そうか、やはり、database がうまく動作していないのだ、と思い、検索エンジンで「リレーション機能 無効」を検索したところ、これまた、公式サイトをはじめ、たくさんのサイトが出てきたのです。

ところが、探してもみつからない「config.inc.php」の設定のこととか、いろいろな異なる内容の回答があって、よく理解できませんでした(^_^;

そこで、この点の回答を探すのにまた、時間がかかってしまったというわけです。
——————————–
【解決の糸口】

テストサイトとここのサイトのサーバーは、同じコースですので、試しに、ここのサイトのphpMyAdminの同一個所を見てみました。

なんと、全く同じ内容の「エラー」が出ているではありませんか。

ということは、テストサイトが表示されなくなったのは、別の原因だ、ということになります。

ちなみに、公式サイトに「このメッセージは、出てもまったく問題ないです。」という回答がありました。
http://jp.xoops.org/modules/newbb/viewtopic.php?topic_id=3392&forum=17&post_id=18202

XOOPSのキャッチフレーズに、「約 5 分でインストールできる」、とあります。

共有サーバーをまっさらにするなどの作業がありますので、さすがに5分は無理ですが、かなり短い時間でインストールはできるようになりましたので、いっそのことインストールのやり直しをしてしまおうか、とも思い出しました。

そして、XOOPSのインストールの手順書を見ているときに、「はっ」と気づきました。

XOOPSのインストール作業の途中でいくつか情報を入力する箇所があるのですが、その一つに「データベースバスワード」があったということにです。

「データベースバスワード」は、「mainfile.php」に書き込まれますが、該当個所は、「******」のようにマスクはかかっていません。

そこで、サイト上にある「mainfile.php」が見られたり書き換えられたら大変なことになりますので、まず最初に、「mainfile.php」のパーミッションの変更をするように警告が出るのでした!
——————————–
【解決-まとめ】

早速、FTPでテストサイトにアクセスして、「mainfile.php」をダウンロードして「データベースバスワード」が何だったか確認をしました。

そうでした、「**********」が「データベースバスワード」でした。

そこで、サーバーの管理画面に入って、「mainfile.php」に記載されている「データベースバスワード」に戻しました。

このもともとのパスワードでphpMyAdminにアクセスできることを確認して、テストサイトにアクセスしましたら、無事、エラー表示は消えて、XOOPSのトップ画面が表示されておりました。

ふ~、めでたしめでたし、であります。

おっと、まだ、テストサイトでWordPressの書き込みができない原因を突き止めないといけませんが、まずは、今回の大きなトラブルの原因と対策がわかりましたので、先にご報告させてもらいました。

まだまだ、XOOPSに関しては、パソコン初心者ですねぇ(^_^;
——————————–
テストサイトのWordPressの書き込みは、できるようになっていました。

  • このエントリーをはてなブックマークに追加
ログイン