2009年12月 8日

[mysql 15096] flush-hostsをsudoで行う場合

こんにちは。

k-wataと申します。
皆様のご経験や、よろしければアドバイスをお聞かせいただけますと幸いです。


WEBサーバーの再起動に数回失敗してしまい、mysqlへ接続した際、
下記結果が帰ってきてしまいました。

―――――――――――――――――――――――――――――
Host 'web1.test.co.jp' is blocked because of
many connection errors; unblock with 'mysqladmin flush-hosts'
―――――――――――――――――――――――――――――

flush-hostsを実行しようと思ったのですが、
Reload権限のあるmysqlユーザーのパスワードを知っている者が
誰もいない、という状況(かつユーザーパスワードの変更は不可)の為、
root権限のみでflush-hostsを行おうと思ったのですが、
失敗に終わっております。 そもそも無理なのでしょうか?

【試した方法】 お恥ずかしい限りですが手当たり次第やってみました。。。。
1:rootユーザーからmysqlユーザーにスイッチを試みる。⇒rootのままだった。
2:rootユーザーで「mysqladmin -u root -p flush-hosts」
⇒connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost'
3:rootユーザーで「mysqladmin -u mysql flush-hosts」
⇒connect to server at 'localhost' failed
error: 'Access denied for user 'mysql'@'localhost'
4:rootにスイッチ後、testユーザ(mysqlユーザーreload権限なし)でsudoを試みる。
4-1 visudo を実行
4-2 「test ALL=(mysql) ALL」を記述。保存
4-3 sudo mysqladmin flush-hosts -u test -p を実行
4-4 結果「refresh failed; error: 'Access denied; you need the RELOAD privilege
for this operation'」


【環境】―――――――――――――――――――――――――――――
Linux
Apache:1.3.39
MySQL:5.0.45
PHP:5.2.5

サーバーは2台構成です。WEB1を通常は使用し、非常時にWEB2を使います。
*web1サーバー(メイン) ※DB接続がブロックになっているサーバー。非公開中
*web2サーバー(サブ) ※web1がDB接続不能の為、臨時で公開しています。

1つのサーバー内にWEBサーバー、DBサーバーを構築しています。
今回web1サーバーのhttpdを再起動する際、数度失敗し(httpd.confの誤記が原因。解決済)、
それ以降MySQLがweb1からの接続をブロックするようになってしまいました。
―――――――――――――――――――――――――――――――――

何卒よろしくお願い申し上げます。

投稿者 xml-rpc : 2009年12月 8日 22:53
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/91285
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。