58

データベース サーバーに障害が発生しました。多数の接続エラーが原因でホストがブロックされていると表示されます。「mysqladmin flush-hosts」でブロックを解除するように求められます

このコマンドを amazon rds データベース サーバーに対して実行する方法と場所を教えてください。

ありがとうございました

4

10 に答える 10

83

通常のMySQLの場合、「root」管理スーパーユーザーとして接続し、次のコマンドを発行します。

FLUSH HOSTS

接続が多すぎる場合でも、スーパーユーザーが接続できるように、MySQLは接続を予約しておく必要があります。

クライアントは通常、mysqladminルートとして接続し、上記のSQLを発行します。

于 2011-11-05T00:44:01.947 に答える
30

問題の RDS インスタンスにアクセスでき、mysqladmin がインストールされて実行されている他の EC2 インスタンスにログインします。

mysqladmin -h <RDS ENDPOINT URL> -P 3306 -u <USER> -p flush-hosts

パスワードの入力を求められます

于 2013-03-12T17:24:02.280 に答える
15

max_connect_errors の値を超えたために Amazon RDS インスタンスがブロックされた場合、接続エラーを生成したホストを使用して「ホストをフラッシュ」コマンドを発行することはできません。そのホスト。

したがって、その RDS インスタンスにアクセスできる別のEC2 インスタンスまたはリモート サーバーから「flush hosts」コマンドを発行する必要があります。

mysqladmin -h [YOUR RDS END POINT URL] -P 3306 -u [DB USER] -p flush-hosts

これに新しいインスタンスの起動、または外部アクセスを許可するセキュリティ グループの作成/変更が含まれる場合は、RDS ユーザー インターフェイスにログインして、ブロックされている RDS インスタンスを再起動する方が迅速な場合があります。

于 2014-03-18T13:41:36.967 に答える
5

Amazonでは、RDSFLUSH HOSTS;はデフォルトユーザー(RDS情報の「マスターユーザー名」)から実行でき、役に立ちます。

于 2012-06-11T17:51:01.933 に答える
5

ホストがブロックされているため。他のホストから接続して、mysqladmin flush-hosts コマンドを実行してみてください。

mysqladmin -h <RDS ENDPOINT URL> -P <PORT> -u <USER> -p flush-hosts
于 2013-08-28T01:08:37.890 に答える
2

mysql がインストールされているので、SSH を使用してホスティング VPS の 1 つを使用したコンピューターを介して RDS を接続する必要があります。

VPSにログインした後(パテを使用しました)、プロンプトで次のコマンドを入力したのは簡単でした:

mysqladmin -h [YOUR RDS END POINT URL] -P 3306 -u [DB USER] -p flush-hosts
于 2012-10-09T08:51:12.663 に答える
1

RDS Admin でデータベースを再起動できます。

于 2014-01-15T18:19:43.680 に答える
0

次のコマンドを使用して、ホストのローカル MySQL をフラッシュできます。

mysqladmin -u [username] -p flush-hosts
**** [MySQL password]

また

mysqladmin flush-hosts -u [username] -p
**** [MySQL password]

Amazon RDS データベース サーバーはネットワーク上にありますが、フラッシュ ネットワーク MySQL サーバーのように次のコマンドを使用します。

mysqladmin -h <RDS ENDPOINT URL> -P <PORT> -u <USER> -p flush-hosts
mysqladmin -h [YOUR RDS END POINT URL] -P 3306 -u [DB USER] -p flush-hosts 

追加の提案では、my.ini ファイル [Mysql 構成ファイル] を編集することで、ブロックされた多数の接続エラーの問題を完全に解決できます。

変数を変更 max_connections = 10000;

また

コマンドラインを使用して MySQL にログインします -

mysql -u [username] -p
**** [MySQL password]

以下のコマンドをMySQLウィンドウに入れます

SET GLOBAL max_connect_errors=10000;
set global max_connections = 200;

コマンドを使用して真偽を確認します-

show variables like "max_connections";
show variables like "max_connect_errors";
于 2016-01-18T08:55:32.577 に答える