ホームページ  >  記事  >  データベース  >  PDO 経由で MySQL に接続すると「そのようなファイルまたはディレクトリはありません」というエラーが表示されるのはなぜですか?

PDO 経由で MySQL に接続すると「そのようなファイルまたはディレクトリはありません」というエラーが表示されるのはなぜですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-30 18:17:31555ブラウズ

Why am I getting

エラー: PDO 経由で MySQL に接続するときに「そのようなファイルまたはディレクトリはありません」

PDO を使用して MySQL データベースに接続しようとすると、次のエラーが発生する場合があります。

Warning: PDO::__construct(): [2002] No such file or directory (trying to connect via unix:///tmp/mysql.sock) in ...

このエラーは、PDO が Unix ソケット経由で MySQL に接続しようとしているが、コードが TCP/IP 接続用に構成されている場合に発生します。

解決策

次のことが可能です。この問題を解決するには、PDO コンストラクターで正しい接続パラメーターを指定します。ホスト名として「localhost」を使用する代わりに、「127.0.0.1」を使用して、ローカル マシンへの TCP/IP 接続を示します。

<code class="php">new PDO('mysql:host=127.0.0.1;port=3306;dbname=test', 'username', 'password');</code>

Unix ソケット経由で接続する場合は、次のように指定できます。次のようなソケットへのパス:

<code class="php">new PDO('mysql:unix_socket=/tmp/mysql.sock;dbname=test', 'username', 'password');</code>

php.ini ファイル内の pdo_mysql.default_socket 構成を変更して、デフォルトの Unix ソケットの場所を設定することもできます。

以上がPDO 経由で MySQL に接続すると「そのようなファイルまたはディレクトリはありません」というエラーが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。