ホームページ >バックエンド開発 >PHPチュートリアル >PHP MySQL 接続が「そのようなファイルまたはディレクトリはありません」というメッセージで失敗するのはなぜですか? シンボリック リンクを使用して修正するにはどうすればよいですか?

PHP MySQL 接続が「そのようなファイルまたはディレクトリはありません」というメッセージで失敗するのはなぜですか? シンボリック リンクを使用して修正するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-09 01:56:11939ブラウズ

Why is my PHP MySQL connection failing with

エラー: Unix ソケット経由で MySQL 接続を確立できません

PHP を使用して Mac のターミナル経由で MySQL データベースに接続しようとすると場合、次のエラーが発生します:

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

このエラーは、MySQL に問題があることを示しています。ソケット ファイル。データベースへの UNIX ベースの接続に使用されます。

解決策: シンボリック リンクを作成します

この問題の根本的な原因は、 macOS 上のソケット ファイルの場所。これを解決するには、別のファイルを指すファイルであるシンボリック リンクを作成する必要があります。これにより、Mac が間違った場所にある場合でも、必要なソケット ファイルを見つけることができます。

手順:

ソケット ファイルの場所を確認する

次のコマンドを使用してソケットの場所を確認しますfile:

ls -l /tmp/mysql.sock /var/mysql/mysql.sock

シンボリック リンクの作成

ソケット ファイルの場所に応じて、次のようにシンボリック リンクを作成する必要があります:

  • /tmp/mysql.sock はあるが、ない場合/var/mysql/mysql.sock:
cd /var 
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock
  • /var/mysql/mysql.sock はあるが /tmp/mysql.sock がない場合:
cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

注:十分な権限を取得するには、コマンドの前に sudo を使用する必要があります。

以上がPHP MySQL 接続が「そのようなファイルまたはディレクトリはありません」というメッセージで失敗するのはなぜですか? シンボリック リンクを使用して修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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