MySQL Server - Configuration failed

WebサーバーおよびDBサーバーの基本的な設定や利用法についての話題はこちらへどうぞ。
フォーラムルール
QNAP Club Japanのご利用に際しては、当サイトの目的利用規約プライバシーポリシーをご確認頂き、同意の上で投稿ください。

MySQL Server - Configuration failed

投稿記事by hatnac » 2012/1/13(金) 23:36

はじめまして。 TS-219P+ を使用しております。
最近 HDD が 1 台故障したので交換したのですが、その前後あたりから Web サーバーと MySQL サーバーが起動できなくなりました。

Webサーバーの方は、/etc/config/apache/apache.conf の内容がおかしくなっていたため、/etc/default_config/apache.conf に入れ替えると、再起動で正常に戻りました。

しかし MySQL サーバーは、"Enable MySQL Server" にチェックを入れて "APPLY" ボタンを押すと "Configuration failed" というダイアログが出て起動できません。上記同様、my.cnf をデフォルトのものと入れ替えてみましたが、変化ありません。ファームを 3.5.2 Build 1126T にアップデートしてみましたが、変わりませんでした。

どこかに起動時のエラーログなどはあるのでしょうか。
情報が少なすぎて分からないかもしれませんが、「ここを確認しろ」でも結構ですので、ご教示くだされば幸いです。
よろしくお願いいたします。
hatnac
 
記事: 2
登録日時: 2012/1/13(金) 23:12
QNAP Product: TS-219 Series

Re: MySQL Server - Configuration failed

投稿記事by Itaka77 » 2012/1/14(土) 13:19

通常のSystem LogsのSystem Event Logには何もログが残っていないのでしょうか
(re-launchとか)
あとは、コマンドラインで起動させてみたときのコメントをみてみたらどうですか?
具体的には
/etc/rcS.d/S80mysqldで{start|stop|restart|reload} [ MySQL server options ]を実行してみたらどうですか
Itaka77
 
記事: 37
登録日時: 2011/10/18(火) 06:37
QNAP Product: TS-219 Series

Re: MySQL Server - Configuration failed

投稿記事by hatnac » 2012/1/15(日) 15:01

早速のご返答ありがとうございます。
System Logs のページは、HDD が故障したあたりから更新されなくなっています。本体の再起動も何度か行っているのですが、「起動した」というログもありません。元々ありませんでしたっけ。

mysql の起動スクリプトを教えて頂いてありがとうございます。"MySQL server options" に何を指定したら良いか分からなかったので、とりあえず

# /etc/rcS.d/S80mysqld start

を実行して、echo 文で中身を追いかけてみました。すると、130行目付近の

> volume_test=`/sbin/getcfg Public path -f /etc/smb.conf | cut -d '/' -f 3`
> if [ "x${volume_test}" = "x" ]; then
> [ x"${1}" != "xstop" ] && exit 1
> fi

で exit していました。これは、/etc/smb.conf の中から、

[Public]
path=.....

という設定を抜き出してきて、見つからなかったら exit するということだと勝手に理解して、smb.conf の中をのぞいてみましたが、そんな設定はありませんでした。プロセスを確認すると、smb 関係も動いていないようです。元々本機は、 NFS または scp で大きなデータを待避させるために使用していましたので、Windows用のファイル共有が機能していないということに気付いていませんでした。smb関係は優先度が低いので後回しにしようと思います。

で、スクリプトの上記の4行は、MySQL の起動に本質的に関係がないと判断し、コメントアウトしました。次にスクリプトを実行すると、320行目付近

> case "$mode" in
> 'start')
> # Start daemon
> #added by KenChen@QNAP
> [ `/sbin/getcfg MySQL Enable -u -d FALSE` = TRUE ] || exit 1

で exit していました。
これは、MySQL の設定ページで "Enable MySQL Server" にチェックがついているかどうかを判断しているのだと思い、設定ページでチェックを付けて、"APPLY" ボタンを押してみました。しかしまだダメでした。
ならば、と思い、今度はこの箇所もコメントアウトしてコマンドラインからスクリプトを実行してみると、

> Starting MySQL................................... ERROR!

という出力が。もう一度詳細を見るために echo文を追加して再度実行すると、今度は 359行目付近

> /usr/local/mysql/mysql_util.sh --init_db >/dev/null >/dev/null 2>&1
> DB_Inited="TRUE"

ここを実行したまま処理が止まってしまいました。"--init_db" というオプションにギクッとしました。
ここでプロセスを確認したのが次です。

> # ps aux | grep sql
> 4020 admin 1048 S /bin/sh /etc/rcS.d/S80mysqld start
> 4060 admin 1000 S /bin/sh /usr/local/mysql/mysql_util.sh --init_db
> 4065 admin 1024 S /bin/sh /usr/local/mysql/bin/mysql_install_db --user=ad
> 4107 admin 15408 S /usr/local/mysql/libexec/mysqld --basedir=/usr/local/my
> 4112 admin 6904 S /usr/local/mysql/libexec/mysqld --bootstrap --basedir=/
> 4942 admin 484 S grep sql
> 6233 admin 1040 S /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr

処理が止まっている状態で phpMyAdmin を見てみると、MySQLサーバーに接続できました。しかし、今までのデータベースはきれいになくなっていました。
一度 sql 関係のプロセスは全部消して、再度 MySQL の設定ページの方から起動を試みましたが、やはり "Configuretion failed" のメッセージが出ます。

素人が思いつきで色々やってしまいましたが、システムがおかしくなった上に、私がだめ押しをしてしまったような気もします。もう私の手にはおえなくなってきました。
もし本当にデータベースが初期化されてしまったのなら、工場出荷時の状態に戻してしまおうかと思います。

皆様への質問は、「データベースは本当に初期化されてしまったのでしょうか? 復旧可能でしょうか?」 ということです。状況はできるだけ詳細にお伝えしたつもりですが、細かすぎて逆に読む気になれなかったかもしれません。長文すみませんでした。よろしくお願いいたします。
hatnac
 
記事: 2
登録日時: 2012/1/13(金) 23:12
QNAP Product: TS-219 Series

Re: MySQL Server - Configuration failed

投稿記事by Itaka77 » 2012/1/17(火) 13:22

かなりダメージを受けている状態ですね。

以下のフォルダー(隠しフォルダ)に保存されている(HDD上)と思いますので、そこをバックアップしてはどうでしょうか?

cd /share/MD0_DATA/.@mysql
Itaka77
 
記事: 37
登録日時: 2011/10/18(火) 06:37
QNAP Product: TS-219 Series


Return to Web&DBサーバー

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[2人]