mysql:15096
From: カワタカワタ <カワタカワタ <kwt1004@xxxxxxxxxx>>
Date: Tue, 8 Dec 2009 22:53:31 +0900
Subject: [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からの接続をブロックするようになってしまいました。 ――――――――――――――――――――――――――――――――― 何卒よろしくお願い申し上げます。