このエラーは、MariaDBデータベースサーバーの利用可能な接続数が使い果たされたことを示しています。この問題を解決するには、データベースに許可される接続数を増やす必要があります。
そのためには、以下の指示をファイルに追加または変更します:
/etc/mysql/my.cnf
これを[mysqld]
セクションに追加します:
[mysqld]
max_connections = 800
変更を適用するには、次のコマンドでサービスを再起動します:
service mariadb restart
注意: 複数の異なるユーザーがデータベースに接続している場合は、各ユーザーの接続制限も設定する必要があります。これにより、1人のユーザーが接続数を超えた場合にデータベースのダウンタイムを防ぐことができます。
通常、1ユーザーあたり50の接続制限で十分です。もしこの制限を超える場合は、スクリプトに問題がある可能性があり、クエリの実行が遅いかどうかを確認する必要があります。
この場合、エラーメッセージは次のように異なります:
SQLSTATE[HY000] [1203] User someuser already has more than 'max_user_connections' active connections
全体の接続数制限を超えないようにするには、同じファイルに次の行を追加します:
[mysqld]
max_connections = 800
max_user_connections = 50
変更後、サービスを再起動します:
service mariadb restart
完了です。
No Comments Yet