max_user_connectionsパラメーターは、AparaDB RDS for MySQLインスタンス上のデータベースに許可される最大接続数を指定します。 "has more than 'max_user_connections 'active connections" エラーメッセージ、"User 'xxx' has experth the 'max_user_connections' resource" エラーメッセージ、またはRDSインスタンス上のデータベースに接続するときにmax_user_connectionsパラメーターに関連するエラーメッセージが表示された場合、このトピックで説明されているソリューションを使用してこの問題を修正できます。
問題の説明
Data Management Service (DMS) またはデータベースクライアントを使用してRDSインスタンス上のデータベースに接続することはできず、max_user_connectionsパラメーターに関連するエラーメッセージが表示されます。
原因
RDSインスタンス上のデータベースへの接続数が上限に達しました。
問題の特定
ApsaraDB RDSコンソールへのログイン
SQLエクスプローラーと監査機能の使用
RDSインスタンスのSQLエクスプローラーと監査機能を有効にすると、データベースカーネルのSQLステートメント、SQLステートメントの実行に使用されるアカウントとIPアドレス、および実行の詳細が、RDSインスタンスのパフォーマンスに影響を与えることなく自動的に記録されます。 詳細については、「SQLエクスプローラーと監査機能の使用」をご参照ください。
SQL Explorerおよび監査機能の使用に対して課金されます。 詳細については、「機能の説明と課金ルール」をご参照ください。
手順
ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 次に、RDSインスタンスを見つけ、インスタンスのIDをクリックします。
左側のナビゲーションウィンドウで、 .
SQLエクスプローラーと監査機能を有効にします。
セッション管理機能の使用
セッション管理機能を使用して、RDSインスタンスのすべてのセッション、アクティブセッション、および異常セッションを表示できます。 ユーザー、ホスト名、実行期間、ステータスなど、セッションに関連するパラメーターを表示することもできます。 詳細については、「セッション管理機能の使用」をご参照ください。
手順
ApsaraDB RDSコンソールにログインし、[インスタンス] ページに移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 次に、RDSインスタンスを見つけ、インスタンスのIDをクリックします。
左側のナビゲーションウィンドウで、Autonomyサービス>診断.
[診断] ページで、[セッション管理] タブをクリックして、現在のセッションに関連するパラメーター (ユーザー、ホスト名、実行期間、ステータスなど) を表示します。
SQL文の使用
RDSインスタンスへの接続数が上限に達しました。 その結果、RDSインスタンスに対して新しいセッションを確立できず、SQL文を実行できません。 履歴セッションがデータ管理 (DMS) に保持されている場合は、SQL文を実行してセッションを表示できます。
ECS (Elastic Compute Service) インスタンスからRDSインスタンスに接続するか、DMSコンソールにログインしてRDSインスタンスに接続できます。 次のSQL文を実行して、低速スレッドを表示して処理できます。 詳細については、以下のトピックをご参照ください。
SHOW PROCESSLIST;
次の表に、返された結果を示します。 送信元IPアドレスが [ホスト] 列に表示されます。
解決策
RDSインスタンスの確立されたセッションの詳細を表示
max_user_connectionsRDSインスタンスのデータベースのの設定を表示します。
次のいずれかの方法を使用して、max_user_connectionsパラメーターの値を表示できます。
ApsaraDB RDSコンソールにログインします。
[インスタンス] ページへ移動します。 上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。 RDSインスタンスを見つけ、インスタンスIDをクリックします。
表示されるページの左側のナビゲーションウィンドウで、[パラメーター] をクリックします。
[変更可能なパラメーター] タブで、max_user_connectionsパラメーターの値を表示します。
データベースにログインし、次のステートメントを実行して、max_user_connectionsパラメーターの値を表示します。
'max_user_connections 'のような変数を表示します。
メモリリソースが十分であることを確認したら、max_user_connectionsパラメーターの値を大きい値に変更します。 詳細については、「最大接続数を指定するパラメーターの変更」をご参照ください。
問題が解決しない場合は、次の方法を使用します。
RDSインスタンスの接続の問題のトラブルシューティング。 詳細については、「」をご参照ください。ApsaraDB RDS for MySQLインスタンスへの接続数が上限に達した場合はどうすればよいですか?
RDSインスタンスを再起動して接続を解放します。 詳細については、「RDSインスタンスの再起動」をご参照ください。