「Laravel SQLSTATE[HY000] [2002] 接続が拒否されました」: MySQL 接続の深さへの旅
Web の領域開発において、Laravel は優雅さと効率性の灯台としての役割を果たしています。ただし、データベースに接続しようとすると、悪名高い「接続が拒否されました」エラーなど、予期せぬ障害が発生する可能性があります。
次のシナリオを考えてみましょう。あなたは、Laravel プロジェクトを熱心に VPS にデプロイし、次のことを望んでいます。その輝きを披露します。それでも、php 職人の移行コマンドを実行しようとすると、次のような恐ろしいメッセージが表示されます:
[Illuminate\Database\QueryException] SQLSTATE[HY000] [2002] Connection refused (SQL: select * from information_schema.tables where table_schema = form and table_name = migrations)
MySQL データベースへの接続が確立されていると思われるため、パニックが発生します。空気の中に消えていった。ただし、心配する必要はありません。このエラーは、隠れた構成の宝石を発見するための入り口となる可能性があります。
問題の根本は、アプリケーションの重要な統計のリポジトリである .env ファイルにあります。具体的には、DB_HOST パラメータがデータベース接続のロックを解除する鍵を保持します。
DB_HOST=my ip
この例では、「my ip」を「localhost」に置き換えることで、Laravel と MySQL 間の接続が確立されます。なぜこれが機能するのでしょうか? 「localhost」は VPS の内部ループバック アドレス (通常は 127.0.0.1) に変換され、アプリケーションがそれ自体と通信できるようになります。
この簡単な変更により、Laravel プロジェクトは落ち着きと優雅さを取り戻します。このエラーの課題を受け入れてください。これにより、Laravel のデータベース接続をより深く理解するための道が開かれました。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3